diff --git a/.agent/prompts/outdated-agent-rules.md b/.agent/prompts/outdated-agent-rules.md deleted file mode 100644 index 9d1612f0036..00000000000 --- a/.agent/prompts/outdated-agent-rules.md +++ /dev/null @@ -1,4 +0,0 @@ -Review if the agent instructions (`.agent/`, `.claude/`, `.cursor/`) are still up to date and correct. - -- Paths might need to be updated if files have been moved. -- There might be drift (e.g. missing symlinks for rules) diff --git a/.agent/rules/testing.md b/.agent/rules/testing.md deleted file mode 100644 index 67f41cd2ea2..00000000000 --- a/.agent/rules/testing.md +++ /dev/null @@ -1,143 +0,0 @@ ---- -description: Rules for the testing strategy of this repo ---- - -# Rules for the testing strategy of this repo - -## Test Types - -- **Unit tests**: Standard Go tests alongside source files -- **Integration tests**: `integration/` directory, requires live Databricks workspace -- **Acceptance tests**: `acceptance/` directory, uses mock HTTP server - -## Choosing a test level - -**RULE: For user-visible CLI output and changes to the bundle mutator pipeline, reach for acceptance tests first.** They exercise the full pipeline and capture the exact output the user sees. `cmd/...` commands and anything under the mutator pipeline (`bundle/config/mutator/...` and `bundle/mutator/...`) are the strongest candidates. When the coverage overlaps with an existing test, extend the existing acceptance directory instead of creating a new one. - -**Unit tests are still the right tool** for pure functions, utility code, parsing/formatting helpers, and anything you can meaningfully test without mocking the whole world. Don't force a unit into an acceptance test just because the code lives under `cmd/`, and don't add a mutator unit test that only duplicates what an acceptance test already covers. - -When in doubt: would the test fail in a useful way if a mutator earlier in the pipeline changed? If yes, the test wants to be an acceptance test. - -## Unit tests - -**RULE: Each source file should have a corresponding test file.** If you add new functionality to a file, extend the test file to cover it. - -**RULE: Place tests in the same package but with a `_test` suffix.** Test names start with `Test` and describe the function or module under test. - -**RULE: Use `require` for preconditions that would make the rest of the test meaningless on failure.** Use `assert` for expected values where the test can keep running after a failure. - -```go -package mutator_test - -func TestApplySomeChangeReturnsDiagnostics(t *testing.T) { - ... -} - -func TestApplySomeChangeFixesThings(t *testing.T) { - ctx := t.Context() - b, err := ...some operation... - require.NoError(t, err) - ... - assert.Equal(t, ...) -} -``` - -**RULE: Use table-driven tests for multiple similar cases.** Reviewers prefer this pattern over repeating near-identical test functions when the inputs differ but the logic is the same. - -**RULE: If a value is shared across tests and they must change together, extract it to a package-level `const` or `var`.** Think shared fixtures, identifiers that must stay in sync across tests, and expected error messages that the tests verify as a set. Repeated literals that happen to be the same (e.g. a header name like `"Authorization"` appearing inline in many tests) are fine to leave inline; forcing extraction there hurts readability without buying anything. - -When writing tests, don't include an explanation in each test case in your responses. Only the tests are needed. - -## Acceptance Tests - -**RULE: Never edit generated acceptance output files directly.** Files named `output.txt`, `out.test.toml`, `out.requests.txt`, or anything starting with `out` are regenerated. Use the `-update` flag to regenerate them. - -Exception: mass string replacement when the change is predictable and much cheaper than re-running the test suite. - -**RULE: All `EnvMatrix` variants MUST produce identical output files.** Filenames containing `$DATABRICKS_BUNDLE_ENGINE` (e.g. `output.direct.txt`) are the only per-engine exception. - -**RULE: Do not run `-update` while a divergent variant exists.** It is destructive: it overwrites with the last variant and breaks the others. To debug: run a single variant you consider correct with `-update`, then debug the other variant to find why it diverges. - -**RULE: Put common `test.toml` options in a parent directory.** Config is inherited from parents. - -**RULE: Add test artifacts (e.g. `.databricks`) to `Ignore` in `test.toml`.** - -**RULE: Commit static test inputs into the acceptance test directory; do not create them in `script` at test time.** If a file's content is dynamic, generating it in `script` is fine. For everything else, check it in and let the test read it directly; you won't need an `Ignore` entry because there's nothing to clean up. - -GOOD: - -``` -acceptance/cmd/fs/cp/file-to-dir/ - script # $CLI fs cp local.txt dbfs:/path/ - test.toml - local.txt # committed input - output.txt -``` - -BAD: - -``` -acceptance/cmd/fs/cp/file-to-dir/ - script # echo "contents" > local.txt; $CLI fs cp local.txt dbfs:/path/; rm local.txt - test.toml # Ignore = ["local.txt"] - output.txt -``` - -**RULE: When output genuinely diverges between engines (terraform vs direct), split only the diverging file into per-engine variants.** Keep the rest of the output unified. Files named `output.$DATABRICKS_BUNDLE_ENGINE.txt` or `out.requests.$DATABRICKS_BUNDLE_ENGINE.json` are the allowed per-engine form. - -If the only reason for divergence is a server-side default that one engine sets and the other doesn't, set the field explicitly in `databricks.yml` so both engines produce identical output. Don't paper over it with per-engine files. - -### Reference - -- Tests live in `acceptance/` with a nested directory structure. -- Each test directory contains `databricks.yml`, `script`, and `output.txt`. -- Source files: `test.toml`, `script`, `script.prepare`, `databricks.yml`, etc. -- Tests are configured via `test.toml`. Config schema and explanation is in `acceptance/internal/config.go`. Certain options are also dumped to `out.test.toml` so that inherited values are visible on PRs. -- Run a single test: `go test ./acceptance -run TestAccept/bundle///` -- Run a specific variant by appending `EnvMatrix` values to the test name: `go test ./acceptance -run 'TestAccept/.../DATABRICKS_BUNDLE_ENGINE=direct'`. When there are multiple `EnvMatrix` variables, they appear in alphabetical order. -- Useful flags: `-v` for verbose output, `-tail` to follow test output (requires `-v`), `-logrequests` to log all HTTP requests/responses (requires `-v`). -- Run tests on cloud: `deco env run -i -n aws-prod-ucws -- ` (requires `deco` tool and access to test env). -- `script.prepare` files from parent directories are concatenated into the test script. Use them for shared bash helpers. - -### Helper scripts - -**RULE: Use the `acceptance/bin/` helpers before reaching for inline `jq` or `grep` pipelines.** When a test needs to filter recorded requests, assert a substring is or isn't present, or register a dynamic replacement, the helpers handle sorting, URL query normalization, redaction hooks, and cross-platform path issues. Inline `jq` in an acceptance script is brittle and hard to read. - -GOOD: - -```bash -trace $CLI bundle plan | contains.py "Plan: 0 to add, 0 to delete, 1 to update" -trace print_requests.py //api/2.0/apps -echo "$deployment_id:DEPLOYMENT_ID" >> ACC_REPLS -``` - -BAD: - -```bash -{ trace jq 'select(.method == "POST" and .path == "/api/2.0/apps")' out.requests.txt; } || true -``` - -Available on `PATH` during test execution (from `acceptance/bin/`): - -- `contains.py SUBSTR [!SUBSTR_NOT]`: passthrough filter (stdin→stdout) that checks substrings are present (or absent with `!` prefix). Errors are reported on stderr. -- `print_requests.py //path [^//exclude] [--get] [--sort] [--keep]`: print recorded HTTP requests matching path filters. Requires `RecordRequests=true` in `test.toml`. Clears `out.requests.txt` afterwards unless `--keep`. Use `--get` to include GET requests (excluded by default). Use `^` prefix to exclude paths. -- `replace_ids.py [-t TARGET]`: read deployment state and add `[NAME_ID]` replacements for all resource IDs. -- `read_id.py [-t TARGET] NAME`: read ID of a single resource from state, print it, and add a `[NAME_ID]` replacement. -- `add_repl.py VALUE REPLACEMENT`: add a custom replacement (VALUE will be replaced with `[REPLACEMENT]` in output). -- `update_file.py FILENAME OLD NEW`: replace all occurrences of OLD with NEW in FILENAME. Errors if OLD is not found. Cannot be used on `output.txt`. -- `find.py REGEX [--expect N]`: find files matching regex in current directory. `--expect N` asserts an exact count. -- `diff.py DIR1 DIR2` or `diff.py FILE1 FILE2`: recursive diff with test replacements applied. -- `print_state.py [-t TARGET] [--backup]`: print deployment state (terraform or direct). -- `edit_resource.py TYPE ID < script.py`: fetch resource by ID, execute Python on it (resource in `r`), then update it. TYPE is `jobs` or `pipelines`. -- `gron.py`: flatten JSON into greppable discrete assignments (simpler than `jq` for searching JSON). -- `jq` is also available for JSON processing. - -### Update workflow - -**RULE: Run `./task test-update` to regenerate outputs, then `./task fmt` and `./task lint`.** If fmt or lint modify files in `acceptance/`, there's an issue in the source files. Fix the source, regenerate, and verify fmt/lint pass cleanly. - -### Template tests - -Tests in `acceptance/bundle/templates` include materialized templates in output directories. These directories follow the same `out` convention: everything starting with `out` is generated output. Sources are in `libs/template/templates/`. - -**RULE: Use `./task test-update-templates` to regenerate materialized templates.** If linters or formatters find issues in materialized templates, do not fix the output files; fix the source in `libs/template/templates/` and regenerate. diff --git a/.agent/skills/pr-checklist/SKILL.md b/.agent/skills/pr-checklist/SKILL.md deleted file mode 100644 index 3eae258d6e7..00000000000 --- a/.agent/skills/pr-checklist/SKILL.md +++ /dev/null @@ -1,72 +0,0 @@ ---- -name: pr-checklist -description: Checklist to run before submitting a PR ---- - -Before submitting a PR, run these commands to match what CI checks. CI uses the full variants (not the `-q` diff-only wrappers), so `./task lint-q` alone is insufficient. - -```bash -# 1. Formatting and checks (CI runs fmt, not fmt-q) -./task fmt -./task checks - -# 2. Linting (CI runs full golangci-lint across all modules, not the diff-only wrapper) -./task lint - -# 3. Tests (CI runs with both deployment engines) -./task test - -# 4. If you changed bundle config structs or schema-related code: -./task generate-schema - -# 5. If you changed files in python/: -./task pydabs-codegen pydabs-test pydabs-lint pydabs-docs - -# 6. If you changed experimental/aitools or experimental/ssh: -./task test-exp-aitools # only if aitools code changed -./task test-exp-ssh # only if ssh code changed -``` - -## Final cleanup scan - -After the commands above pass, scrub the diff before pushing. The quick version: run `git diff @{u}` and read through what you added. Specifically: - -- **Debug prints**: look for newly added `fmt.Print`, `fmt.Printf`, `fmt.Println`, `log.Print`, `log.Printf`, `log.Println`, or bare `println(...)` calls. A regex that scans only added lines against your upstream branch: - - ```bash - git diff @{u} -- '*.go' | rg '^\+.*\b(fmt|log)\.(Print|Printf|Println)\b|^\+.*\bprintln\(' - ``` - - If you have no upstream yet, substitute the intended base (e.g. `origin/main`) for `@{u}`. -- **Commented-out code**: delete it. If it's needed for reference, it lives in git history. -- **TODOs without a ticket**: either add a ticket reference (e.g. `// TODO(DECO-1234): ...`) or remove the TODO. Un-tracked TODOs rot. -- **Unintended files**: review `git status` and `git diff --stat` to confirm only the files you meant to change are staged. - -## PR description - -Follow `.github/PULL_REQUEST_TEMPLATE.md` exactly. Use its section headings (`## Changes`, `## Why`, `## Tests`) in the same order, and fill each one in. Do not invent new sections (`## Summary`, `## Test plan`, etc.), do not drop sections, and do not leave the HTML comment placeholders in the final body — replace them with real content. If a section genuinely does not apply (e.g. a docs-only change has no test steps), say so explicitly under that heading rather than removing it. - -When using `gh pr create`, read `.github/PULL_REQUEST_TEMPLATE.md` first and base `--body` on it. - -If an agent (you) authored or substantially helped author the PR, disclose it on the last line of the body, e.g. `_This PR was written by Claude Code._` or `_PR description drafted with Claude Code._`. Be honest about the level of involvement — "written by" vs. "drafted with" vs. "reviewed by" — and keep it to a single italicized line so it doesn't crowd the template sections. - -## Changelog entry - -Add a `NEXT_CHANGELOG.md` entry when your change is user-visible. CI generates the real `CHANGELOG.md` from `NEXT_CHANGELOG.md` at release time, so never hand-edit `CHANGELOG.md` directly. - -**When to add an entry:** -- New or changed CLI command, flag, or subcommand behavior -- New or changed bundle config field, schema, or engine behavior -- New direct dependency (annotate under `Dependency updates`) -- Bug fix that users will notice - -**When to skip:** -- Experimental commands (under `experimental/`): no entry until the feature graduates out of experimental -- Pure refactors, internal renames, test-only changes, and doc-only changes -- Auto-generated output changes without a corresponding user-facing change - -**How to add:** -- Pick the right section (`CLI`, `Bundles`, `Dependency updates`) under the current `## Release vX.Y.Z` header. -- One or two sentences, user-facing language, no Jira links. -- Reference the PR number once it's open: after `gh pr create`, edit the entry to append ` (#NNNN)` or similar matching nearby entries. -- Match the voice and tense of the existing entries in the file. diff --git a/.agents/prompts/outdated-agent-rules.md b/.agents/prompts/outdated-agent-rules.md new file mode 100644 index 00000000000..d7aa036e1f7 --- /dev/null +++ b/.agents/prompts/outdated-agent-rules.md @@ -0,0 +1,4 @@ +Review if the agent instructions (`.agents/`, `.claude/`, `.cursor/`) are still up to date and correct. + +- Paths might need to be updated if files have been moved. +- There might be drift (e.g. missing symlinks for rules) diff --git a/.agent/rules/auto-generated-files.md b/.agents/rules/auto-generated-files.md similarity index 77% rename from .agent/rules/auto-generated-files.md rename to .agents/rules/auto-generated-files.md index 458e3041c6c..6d29f4f55f9 100644 --- a/.agent/rules/auto-generated-files.md +++ b/.agents/rules/auto-generated-files.md @@ -1,7 +1,7 @@ --- description: Rules for how to deal with auto-generated files globs: - - ".codegen/openapi.json" + - ".codegen/cli.json" - ".gitattributes" - "acceptance/**/out*" - "acceptance/**/output.txt" @@ -13,17 +13,14 @@ globs: - "cmd/workspace/**/*.go" - "internal/genkit/tagging.py" - "internal/mocks/**/*.go" - - "bundle/direct/dresources/*.generated.yml" - - "bundle/docsgen/output/**/*.md" - - "bundle/internal/schema/annotations_openapi.yml" + - "bundle/direct/dresources/configs/*.generated.yml" - "bundle/internal/validation/generated/*.go" - "bundle/schema/jsonschema.json" - - "bundle/schema/jsonschema_for_docs.json" - "python/databricks/bundles/version.py" - "python/databricks/bundles/*/__init__.py" - "python/databricks/bundles/*/_models/*.py" paths: - - ".codegen/openapi.json" + - ".codegen/cli.json" - ".gitattributes" - "acceptance/**/out*" - "acceptance/**/output.txt" @@ -35,12 +32,9 @@ paths: - "cmd/workspace/**/*.go" - "internal/genkit/tagging.py" - "internal/mocks/**/*.go" - - "bundle/direct/dresources/*.generated.yml" - - "bundle/docsgen/output/**/*.md" - - "bundle/internal/schema/annotations_openapi.yml" + - "bundle/direct/dresources/configs/*.generated.yml" - "bundle/internal/validation/generated/*.go" - "bundle/schema/jsonschema.json" - - "bundle/schema/jsonschema_for_docs.json" - "python/databricks/bundles/version.py" - "python/databricks/bundles/*/__init__.py" - "python/databricks/bundles/*/_models/*.py" @@ -67,16 +61,14 @@ Files matching this rule's glob pattern are most likely generated artifacts. Aut - Everything, in one shot: - `./task generate` — aggregator that runs all generators below - OpenAPI SDK/CLI command stubs and related generated artifacts: - - `./task generate-genkit` - - Includes generated `cmd/account/**`, `cmd/workspace/**`, `.gitattributes`, `internal/genkit/tagging.py`. + - `./task generate-cligen` — regenerates `cmd/account/**`, `cmd/workspace/**` and `.gitattributes` from the checked-in `.codegen/cli.json`. + - `./task generate-clijson` — refreshes `.codegen/cli.json` from the OpenAPI spec via genkit (requires universe repo); also updates `internal/genkit/tagging.py`. - Direct engine generated YAML: - `./task generate-direct` (or `./task generate-direct-apitypes`, `./task generate-direct-resources`) - Bundle schemas: - `./task generate-schema` - - `./task generate-schema-docs` - - This can also refresh `bundle/internal/schema/annotations_openapi.yml` when OpenAPI annotation extraction is enabled. -- Bundle docs: - - `./task generate-docs` + - Rewrites `bundle/internal/schema/annotations.yml` in place: upstream docs are sourced from `.codegen/cli.json` at generation time, and the file is synced with the config structure (placeholders added, stale entries dropped). + - The docs schema (`jsonschema_for_docs.json`) is not generated on main; it is built and published to the `docgen` branch on release by `.github/workflows/update-schema-docs.yml`. - Validation generated code: - `./task generate-validation` - Mock files: diff --git a/.agents/rules/changelog.md b/.agents/rules/changelog.md new file mode 100644 index 00000000000..f5099a0c98e --- /dev/null +++ b/.agents/rules/changelog.md @@ -0,0 +1,8 @@ +--- +description: New changelog entries go in .nextchanges/, not CHANGELOG.md +globs: + - "CHANGELOG.md" + - ".nextchanges/**" +--- + +**RULE: Do not add new release entries to `CHANGELOG.md`.** For a user-visible change, add a fragment file under `.nextchanges/
/` (sections: `notable-changes`, `cli`, `air`, `bundles`, `dependency-updates`, `api-changes`). Each PR adds its own file, so entries never conflict. `CHANGELOG.md` is generated automatically from these fragments by the release process — never hand-edit it. See `.nextchanges/README.md`. diff --git a/.agents/rules/comments.md b/.agents/rules/comments.md new file mode 100644 index 00000000000..858204aadc6 --- /dev/null +++ b/.agents/rules/comments.md @@ -0,0 +1,62 @@ +--- +description: Comment conventions for source files +globs: + - "**/*.go" + - "**/*.py" + - "**/*.pyi" + - "**/*.sh" + - "**/*.scala" + - "**/*.js" + - "**/*.java" + - "**/*.sql" + - "**/*.r" + - "**/*.yml" + - "**/*.yaml" +paths: + - "**/*.go" + - "**/*.py" + - "**/*.pyi" + - "**/*.sh" + - "**/*.scala" + - "**/*.js" + - "**/*.java" + - "**/*.sql" + - "**/*.r" + - "**/*.yml" + - "**/*.yaml" +--- + +# Comment conventions + +**RULE: Do not modify or remove existing comments in code you didn't write.** Comments often encode non-obvious context (a bug reference, a workaround, a reason the code is shaped a certain way) that is lost if rewritten. Leave them alone unless the user explicitly asks for a change. + +**RULE: Comments should explain "why", not "what".** Reviewers consistently reject comments that merely restate the code. + +**RULE: Keep comments concise, and avoid redundant or verbose ones.** Say only what the code cannot, then stop — only add a comment if it complements the code rather than repeating it or its signature. A doc comment gives the caller the contract and any surprising behavior, not a line-by-line re-spec. AI-generated comments trend long and explanatory, so tighten them before committing. + +**RULE: When code relies on a non-obvious invariant, workaround, or backend quirk, add a short comment stating the reason.** The inverse of the rule above: noise comments are bad, but missing comments are the single most common thing reviewers catch. Triggers include: API quirks (PATCH-like semantics, no get-by-name, stripped prefixes), fields intentionally included or excluded (output-only, etag, `ForceSendFields`), branches that look dead but are kept as guards, and tests where the expectation isn't obvious from the assertions. + +GOOD: + +```go +// The Workspace API strips the "/Workspace" prefix from parent_path on GET, +// so we re-add it here to match the local configuration. +parentPath = "/Workspace" + parentPath +``` + +BAD: + +```go +parentPath = "/Workspace" + parentPath +``` + +**RULE: In Go, document functions with a doc comment that starts with the function name and ends with a period.** + +```go +// SomeFunc does something. +func SomeFunc() { + ... +} +``` + +**RULE: When integrating external tools or detecting environment variables, include source reference URLs as comments.** This lets future readers trace where the behavior came from. diff --git a/.agent/rules/databricks-template-schema-json.md b/.agents/rules/databricks-template-schema-json.md similarity index 100% rename from .agent/rules/databricks-template-schema-json.md rename to .agents/rules/databricks-template-schema-json.md diff --git a/.agent/rules/dresources.md b/.agents/rules/dresources.md similarity index 100% rename from .agent/rules/dresources.md rename to .agents/rules/dresources.md diff --git a/.agents/rules/pydabs-acceptance-tests.md b/.agents/rules/pydabs-acceptance-tests.md new file mode 100644 index 00000000000..e2914c74593 --- /dev/null +++ b/.agents/rules/pydabs-acceptance-tests.md @@ -0,0 +1,8 @@ +--- +description: Rules for authoring PyDABs resource acceptance tests +globs: acceptance/bundle/python/** +paths: + - "acceptance/bundle/python/**" +--- + +**RULE: Before adding a PyDABs resource acceptance test, read `acceptance/bundle/python/README.md`.** It covers the `-support/` fixture layout, how to source and adapt realistic field values, the version/engine `test.toml` knobs, the determinism re-run, and how to cover interface (`Any`) fields in both authoring forms. Every PyDABs resource needs one (enforced by `test_python_support_coverage`). diff --git a/.agent/rules/style-guide-go.md b/.agents/rules/style-guide-go.md similarity index 89% rename from .agent/rules/style-guide-go.md rename to .agents/rules/style-guide-go.md index f7e360b174e..ab2dad3b6e9 100644 --- a/.agent/rules/style-guide-go.md +++ b/.agents/rules/style-guide-go.md @@ -11,19 +11,10 @@ paths: Code you author should be consistent with the codebase and concise. The code should be self-documenting based on its function and variable names. -**RULE: Document functions with a doc comment that starts with the function name and ends with a period.** - -```go -// SomeFunc does something. -func SomeFunc() { - ... -} -``` - -**RULE: Avoid redundant and verbose comments.** Only add a comment if it complements the code rather than repeating it. - **RULE: Focus on making implementations as small and elegant as possible.** Avoid unnecessary loops and allocations. If dropping or relaxing a requirement would simplify things, ask the user about the trade-off. +**RULE: Do not declare inline function closures just to name a repeated operation.** Extract it as a regular named function instead. Closures that capture local variables hide their dependencies, complicate reading, and can't be tested in isolation. + ### Modern Go (1.24+) idioms **RULE: Use `for i := range X` for integer iteration, not `for i := 0; i < X; i++`.** @@ -48,8 +39,6 @@ type myKeyType int **RULE: Define magic strings as named constants at the top of the file.** When a value is used in more than one place, define a package-level constant even if the literal is short. If a related value already has a constant in the same package, follow the existing pattern instead of introducing a parallel literal. -**RULE: When integrating external tools or detecting environment variables, include source reference URLs as comments.** This lets future readers trace where the behavior came from. - ### Control flow **RULE: When several branches are alternatives for the same decision, prefer `switch` over `if / else if`.** Same-decision means: you're dispatching on one value or one boolean question and each branch is a different answer to it. Ordered precedence chains (try this, else this, else this) are a different shape; leave those as early-return `if`s. @@ -122,6 +111,12 @@ for p := range changes { return fieldPaths ``` +### Encoding + +**RULE: When mutating an API response by round-tripping JSON, decode with `json.Decoder` + `UseNumber()`.** The naive `json.Marshal` → `map[string]any` → `Marshal` path corrupts any int64 larger than 2^53 (it degrades to a float64 mantissa — e.g. a real `spark_context_id`) and alphabetizes object keys. `libs/dyn/jsonloader` preserves key order but also lacks `UseNumber`, so it shares the int64 hazard. + +**RULE: Be careful with `encoding/csv` `Writer.UseCRLF = true`.** It rewrites both record terminators AND embedded newlines inside quoted fields to `\r\n`, so tests for quoted multiline fields must expect `\r\n`, not just the line endings between rows. + ### Environment variables **RULE: In library and product code, use `github.com/databricks/cli/libs/env` for reading environment variables, not `os.Getenv`.** `env.Get(ctx, name)` and `env.Lookup(ctx, name)` can be overridden per-context in tests, so you don't have to mutate process-wide state to exercise a code path. `os.Getenv` is still fine in `main`, tests, and acceptance/integration harnesses where no `ctx` is available and overrides aren't needed. diff --git a/.agent/rules/style-guide-py.md b/.agents/rules/style-guide-py.md similarity index 94% rename from .agent/rules/style-guide-py.md rename to .agents/rules/style-guide-py.md index 280af2181b8..482f74d8141 100644 --- a/.agent/rules/style-guide-py.md +++ b/.agents/rules/style-guide-py.md @@ -19,8 +19,6 @@ Python in this codebase is written as scripts. Bias for conciseness. **RULE: Do not catch exceptions just to add a nicer message.** Only catch if you can add critical information the caller can't produce. -**RULE: Avoid redundant comments.** - **RULE: Keep code small and minimize abstractions.** **RULE: Format with `ruff format -n ` before committing.** diff --git a/.agents/rules/telemetry.md b/.agents/rules/telemetry.md new file mode 100644 index 00000000000..5526dfb2007 --- /dev/null +++ b/.agents/rules/telemetry.md @@ -0,0 +1,44 @@ +--- +description: How to add or extend bundle deploy telemetry metrics +globs: + - "libs/telemetry/**/*.go" + - "bundle/phases/telemetry.go" + - "bundle/phases/resources_metadata.go" + - "bundle/metrics/**/*.go" +paths: + - "libs/telemetry/**/*.go" + - "bundle/phases/telemetry.go" + - "bundle/phases/resources_metadata.go" + - "bundle/metrics/**/*.go" +--- + +# Extending bundle deploy telemetry + +The deploy payload is declared twice: the proto in the universe repo (`proto/logs/frontend/databricks_cli/bundle_deploy.proto`, source of truth for the backend table) and the Go struct in `libs/telemetry/protos/` that the CLI serializes to JSON. Ingestion ignores unknown fields, so the two PRs can land in either order — a field the CLI sends before the proto lands is dropped, not rejected. + +## Adding a new resource type + +**RULE: A new bundle resource type needs no telemetry change.** Per-type counts come from `resources_metadata.resources[*]`, which `resourceMetadata` in `bundle/phases/resources_metadata.go` derives from `Resources.AllResources()` — exhaustive by construction and guarded by `TestResourcesAllResourcesCompleteness`. + +**RULE: Do not add new `resource__count` fields to `BundleDeployEvent`.** The 12 that exist, and the aggregate `resource_count`, are `deprecated = true` in the universe proto, kept only for continuity of existing dashboards. Adding more re-creates what `resources_metadata` fixed: a hand-maintained field list that silently lags the resource types, making a new type indistinguishable from zero adoption. New dashboard panels should read `resources_metadata`. + +## Adding a new metric + +1. Add the field to the relevant message in `libs/telemetry/protos/`, and populate it in `bundle/phases/telemetry.go`. +2. Refresh the acceptance golden: `go test ./acceptance -run '^TestAccept/bundle/telemetry' -update`. +3. Send the universe PR adding the same field to the proto, with a `compliance.data_label` annotation matching the neighbouring fields. + +**RULE: Never send a resource name, path, or any other user-authored string.** Names are PII. Resource identity goes through the numeric/UUID ID lists (`resource_job_ids` and friends), and only for types that have such an ID. + +**RULE: Do not add `omitempty` to a count or measurement that can legitimately be zero.** An explicit `0` distinguishes "nothing of this kind in this deploy" from "CLI too old to report the field"; with `omitempty` both arrive as null and the population can't be sized. + +Other things worth knowing: + +- A one-off boolean needs no proto change: add a key constant to `bundle/metrics/metrics.go` (snake_case, matching the constant name) and call `b.Metrics.SetBoolValue(...)`. It lands in `experimental.bool_values`. +- Metrics that may be removed later belong in `BundleDeployExperimental`, which carries no compatibility guarantees. +- Positional encodings such as the `upload_file_sizes` histogram are frozen once the metric has adoption: changing a bucket bound silently changes the meaning of every previously reported entry. +- Per-resource state sizes come from the direct engine's state in `resources.json`. + +## Where the data lands + +Deploy events land in `main.team_eng_deco.bundle_deploy_telemetry`; the dashboard is `app/dabs_telemetry` in `databricks-eng/ds-projects`. The daily pipeline reads `entry.bundle_deploy_event.*` wholesale, so a new field arrives on its own, but it has to be added to a dashboard panel by hand to become visible. diff --git a/.agents/rules/template-versions.md b/.agents/rules/template-versions.md new file mode 100644 index 00000000000..4fab6805437 --- /dev/null +++ b/.agents/rules/template-versions.md @@ -0,0 +1,31 @@ +--- +description: Version pins in bundle templates (DBR, DB Connect, serverless env, Python) +globs: + - "libs/template/templates/**/library/versions.tmpl" + - "libs/template/templates/**/library/template_variables.tmpl" + - "libs/template/templates/**/build.sbt.tmpl" + - "libs/template/templates/**/resources/*.job.yml.tmpl" + - "libs/template/templates/**/pyproject.toml.tmpl" +paths: + - "libs/template/templates/**/library/versions.tmpl" + - "libs/template/templates/**/library/template_variables.tmpl" + - "libs/template/templates/**/build.sbt.tmpl" + - "libs/template/templates/**/resources/*.job.yml.tmpl" + - "libs/template/templates/**/pyproject.toml.tmpl" +--- + +# Bundle template version pins + +Bundle templates pin the runtime versions they render. Most pins are macros in `libs/template/templates/default/library/versions.tmpl` (DBR, DB Connect, serverless environment, Python, and the `databricks-bundles` package), and that single file serves five shipped templates: `default-minimal`, `default-python`, `lakeflow-pipelines` and `pydabs` alias it through `"template_dir": "../default"` in their `databricks_template_schema.json`, while the deprecated `cli-pipelines` is registered in `libs/template/template.go` with `lakeflow-pipelines`'s reader. The `default` template itself is not shipped. `dbt-sql` defines its own subset, `default-scala` defines its own in `library/template_variables.tmpl`, and two templates hardcode a version in the files they render instead of going through a macro. The `.tmpl` files are the source of truth for the current values; the rules below describe how the pins relate, not what they are. + +**RULE: Keep the serverless environment version, the Python pins, the DB Connect pin, and `latest_lts_dbr_version` mutually compatible. This is a hard constraint.** A serverless environment version dictates a runtime Python version, and the DB Connect pin must support that Python. The DBR LTS pin belongs in the same check rather than being treated as independent — the two have drifted before: `latest_lts_dbr_version` reached 16.4 in #3671 while the DB Connect pin stayed on 15.4 until #6378. Cross-check the [serverless environment version release notes](https://docs.databricks.com/aws/en/release-notes/serverless/environment-version/) and the [DB Connect requirements](https://docs.databricks.com/dev-tools/databricks-connect/python/index.html#requirements) whenever you change any of the four. + +**RULE: Within that constraint, keep `default`'s `conservative_db_connect_version_spec` as low as compatibility allows.** The DB Connect client is only forward-compatible (it reaches compute of its own version and higher), so the lowest compatible pin maximizes the range of DBR versions a customer can connect to; a higher pin rules out customers on older DBR, and they can move to a newer version themselves after initializing the template. The floor is the *oldest* release that passes two tests: its DBR line has more than six months of support remaining, *and* the DBR version it targets runs `python_version_spec`'s Python on the cluster — not merely that the client supports that Python. The support buffer prevents freshly generated projects from immediately approaching end of support. DB Connect 15.4 is the worked example: its client supports Python 3.12, but DBR 15 clusters run Python 3.11, so it fails the second test and 16.4 is the floor. Never read this as "pin the current DBR LTS" — that is the newest release, the opposite of a floor, and #6378 rejected exactly that bump. Keep the upper bound at the next minor release, so the spec stays inside one minor: widening it lets a freshly initialized project resolve a client far newer than the floor advertises, which is the opposite of conservative. Do not raise the pin merely to match a newer serverless environment version — raise it only when the constraint above forces it, or when the pinned DBR line has six months or less of support remaining. Use the [DBR release notes](https://docs.databricks.com/aws/en/release-notes/runtime/) to choose the oldest compatible replacement with more than six months of support remaining. See PR #3897 and PR #6378 for prior history. + +This rule governs `default`'s pin. `default-scala` deliberately does the opposite: it tracks the newest LTS in `dbr_version`. Its client in `template/{{.project_name}}/build.sbt.tmpl` uses that macro as an open-ended `.+` dependency, while its classic-cluster `spark_version` combines `dbr_version` with `scala_major_minor_version`. Keep `dbr_version` and `scala_major_minor_version` compatible with the selected DBR release. Do not lower `dbr_version`, or pin the client dependency, to satisfy the rule above. + +**RULE: When bumping the serverless environment version or the Python version, update every occurrence, not just the macros.** More than one template defines `serverless_environment_version`, and those definitions must stay in sync. Two templates hardcode the value in the files they render instead — `default-scala` in one job and `lakeflow-integrations` in two — and `lakeflow-integrations` also hardcodes `requires-python`. A Python bump additionally needs `default_python_version`, which supplies the notebook kernel version in `src/sample_notebook.ipynb.tmpl`. Grep `environment_version`, `requires-python` and `default_python_version` under `libs/template/templates/` and move every hit together. + +**RULE: Do not sync a value across templates just because a macro name matches.** Outside the serverless environment version, a pin is a per-template choice that may legitimately differ, so check each template's intended value and change only the ones that should move. + +Version pins are rendered into the materialized templates checked into `acceptance/`, and not all of those live under `acceptance/bundle/templates/` — `acceptance/pipelines/` renders the pins too. Regenerate with `./task test-update`, not `./task test-update-templates`, which covers only the `bundle/templates` subtree. See `.agents/rules/testing.md` and `.agents/rules/auto-generated-files.md`. diff --git a/.agents/rules/testing.md b/.agents/rules/testing.md new file mode 100644 index 00000000000..ae6248d2d1b --- /dev/null +++ b/.agents/rules/testing.md @@ -0,0 +1,260 @@ +--- +description: Rules for the testing strategy of this repo +paths: + - "**/*_test.go" + - "acceptance/**" + - "integration/**" +--- + +# Rules for the testing strategy of this repo + +## Test Types + +- **Unit tests**: Standard Go tests alongside source files +- **Acceptance tests**: `acceptance/` directory. Every test runs locally against the mock HTTP server; a subset *additionally* runs against a real workspace (`Cloud = true`). This is where new end-to-end coverage belongs. +- **Integration tests**: `integration/` directory, requires a live Databricks workspace. **Deprecated — do not add tests here.** Write an acceptance test with `Cloud = true` instead, so the same test runs both locally and against a real workspace. + +## Choosing a test level + +**RULE: For user-visible CLI output and changes to the bundle mutator pipeline, reach for acceptance tests first.** They exercise the full pipeline and capture the exact output the user sees. `cmd/...` commands and anything under the mutator pipeline (`bundle/config/mutator/...` and `bundle/mutator/...`) are the strongest candidates. When the coverage overlaps with an existing test, extend the existing acceptance directory instead of creating a new one. + +**Unit tests are still the right tool** for pure functions, utility code, parsing/formatting helpers, and anything you can meaningfully test without mocking the whole world. Don't force a unit into an acceptance test just because the code lives under `cmd/`, and don't add a mutator unit test that only duplicates what an acceptance test already covers. + +When in doubt: would the test fail in a useful way if a mutator earlier in the pipeline changed? If yes, the test wants to be an acceptance test. + +**RULE: Do not add new tests under `integration/`. That tree is deprecated.** When coverage needs a real workspace, write an acceptance test and set `Cloud = true` in its `test.toml`. You get the local run against the fake server *and* the real-workspace run from one test, instead of a workspace-only test that never runs in the local suite. + +## Unit tests + +**RULE: Each source file should have a corresponding test file.** If you add new functionality to a file, extend the test file to cover it. + +**RULE: Place tests in the same package but with a `_test` suffix.** Test names start with `Test` and describe the function or module under test. + +**RULE: Use `require` for preconditions that would make the rest of the test meaningless on failure.** Use `assert` for expected values where the test can keep running after a failure. + +```go +package mutator_test + +func TestApplySomeChangeReturnsDiagnostics(t *testing.T) { + ... +} + +func TestApplySomeChangeFixesThings(t *testing.T) { + ctx := t.Context() + b, err := ...some operation... + require.NoError(t, err) + ... + assert.Equal(t, ...) +} +``` + +**RULE: Use table-driven tests for multiple similar cases.** Reviewers prefer this pattern over repeating near-identical test functions when the inputs differ but the logic is the same. + +**RULE: If a value is shared across tests and they must change together, extract it to a package-level `const` or `var`.** Think shared fixtures, identifiers that must stay in sync across tests, and expected error messages that the tests verify as a set. Repeated literals that happen to be the same (e.g. a header name like `"Authorization"` appearing inline in many tests) are fine to leave inline; forcing extraction there hurts readability without buying anything. + +When writing tests, don't include an explanation in each test case in your responses. Only the tests are needed. + +## Acceptance Tests + +**RULE: `Cloud = true` adds a cloud run; it never removes the local run.** Every test under `acceptance/` runs locally against the fake server in `libs/testserver`. `Cloud = true` in a `test.toml` or `out.test.toml` means "this test *also* runs against a real workspace when `CLOUD_ENV` is set" — it never means "this test does not run locally". Never tell the user a test doesn't run locally because it is `Cloud = true`. `CloudSlow` does *not* enable a cloud run on its own; it only narrows an existing `Cloud = true` run (see below). + +The whole `Cloud*` family lives inside an `if isRunningOnCloud` branch in `getSkipReason` (`acceptance/acceptance_test.go`), so it can only ever subtract from the cloud run: `CloudSlow` (only meaningful when `Cloud = true`) drops it under `-short`, and `CloudEnvs` narrows it to the listed clouds. To find what skips a test *locally*, look at a different set: `GOOS`, `RunsOnDbr`, and `DATABRICKS_TEST_SELECT_CHANGED` (which cloud PR runs set to cover only the tests the branch touches). + +`Cloud` is inherited, so a parent `test.toml` can opt a whole subtree in; a leaf `test.toml` with no `Cloud` line is not evidence of anything. Read the generated `out.test.toml` for a test's effective settings. + +**RULE: Never edit generated acceptance output files directly.** Files named `output.txt`, `out.test.toml`, `out.requests.txt`, or anything starting with `out` are regenerated. Use the `-update` flag to regenerate them. + +Exception: mass string replacement when the change is predictable and much cheaper than re-running the test suite. + +**RULE: All `EnvMatrix` variants MUST produce identical output files.** The only exception is a test that sets `EnvVaryOutput`, whose files named after the variant value (e.g. `out.deploy..txt`) are per-variant. + +**RULE: Do not run `-update` while a divergent variant exists.** It is destructive: it overwrites with the last variant and breaks the others. To debug: run a single variant you consider correct with `-update`, then debug the other variant to find why it diverges. + +**RULE: Put common `test.toml` options in a parent directory.** Config is inherited from parents. + +**RULE: Add test artifacts (e.g. `.databricks`) to `Ignore` in `test.toml`.** + +**RULE: Commit static test inputs into the acceptance test directory; do not create them in `script` at test time.** If a file's content is dynamic, generating it in `script` is fine. For everything else, check it in and let the test read it directly; you won't need an `Ignore` entry because there's nothing to clean up. + +GOOD: + +``` +acceptance/cmd/fs/cp/file-to-dir/ + script # $CLI fs cp local.txt dbfs:/path/ + test.toml + local.txt # committed input + output.txt +``` + +BAD: + +``` +acceptance/cmd/fs/cp/file-to-dir/ + script # echo "contents" > local.txt; $CLI fs cp local.txt dbfs:/path/; rm local.txt + test.toml # Ignore = ["local.txt"] + output.txt +``` + +**RULE: On Windows, Git Bash auto-converts a leading-`/` path argument (e.g. `/api/2.0/...`) into a Windows path, so `$CLI` sees the wrong path and the testserver 404s.** Set `Env.MSYS_NO_PATHCONV = "1"` in the test directory's `test.toml`. Quoting the argument in bash does NOT help — the conversion is done by the Windows binary's argument processing. Precedent: `acceptance/cmd/workspace/export-dir-*/test.toml`. + +**RULE: `EnvMatrix. = []` removes that variable from the inherited matrix** (see `ExpandEnvMatrix` in `acceptance/internal/config.go`). For example, `acceptance/bundle/test.toml` matrixes `DMS = ["", "true"]`, so a bundle test opts out of the DMS run with `EnvMatrix.DMS = []`. The `out.test.toml` snapshot of inherited values is generated and committed by design. + +**RULE: Write every map-valued setting in dotted form at the top of `test.toml`, never under a table header.** This covers `Env`, `EnvMatrix`, `EnvMatrixExclude`, `EnvRepl`, `GOOS` and `CloudEnvs` — e.g. `Env.MSYS_NO_PATHCONV = "1"`, `GOOS.windows = false`. In TOML every key after a `[EnvMatrix]` header belongs to that table until the next header — a blank line does not end it. So a top-level key like `Ignore` placed below `[EnvMatrix]` is silently parsed as `EnvMatrix.Ignore` (a bogus matrix variable) instead of the real top-level field, and the test runs with the field unset. Dotted form keeps each key's table explicit and is immune to ordering. + +`[[Repls]]` and `[[Server]]` are the exception: they are arrays of tables whose elements carry several keys each, so they keep the header form (as does `[Server.Response.Headers]`, which belongs to a `[[Server]]` element). Place dotted keys *above* the first such header — below one they would be captured by it, which is the same trap in reverse. + +GOOD: + +```toml +EnvMatrix.READPLAN = ["", "1"] +Ignore = ["databricks.yml"] +``` + +BAD: + +```toml +[EnvMatrix] +READPLAN = ["", "1"] + +Ignore = ["databricks.yml"] # parsed as EnvMatrix.Ignore, not top-level Ignore +``` + +**RULE: If a test's `out.test.toml` is still in the older `[EnvMatrix]` block format, a regen rewrites it to the inline form and the post-test `git diff --exit-code` check fails** ("out.test.toml files that are out of date"). Regenerate just those files with `go test ./acceptance -run "^TestAccept$" -only-out-test-toml`, then commit. + +### Reference + +- Tests live in `acceptance/` with a nested directory structure. All of them run locally; those with `Cloud = true` set also run against a real workspace. +- Each test directory contains `databricks.yml`, `script`, and `output.txt`. +- Source files: `test.toml`, `script`, `script.prepare`, `databricks.yml`, etc. +- Tests are configured via `test.toml`. Config schema and explanation is in `acceptance/internal/config.go`. Certain options are also dumped to `out.test.toml` so that inherited values are visible on PRs. +- Run a single test: `go test ./acceptance -run TestAccept/bundle///` +- Run a specific variant by appending `EnvMatrix` values to the test name: `go test ./acceptance -run 'TestAccept/.../DMS=true'`. When there are multiple `EnvMatrix` variables, they appear in alphabetical order. +- Useful flags: `-v` for verbose output, `-tail` to follow test output (requires `-v`), `-logrequests` to log all HTTP requests/responses (requires `-v`). +- Run tests on cloud: `deco env run -i -n aws-prod-ucws -- ` (requires `deco` tool and access to test env). This is an *additional* pass over the same test directories, restricted to those with `Cloud = true` set; it does not replace the local run. +- `script.prepare` files from parent directories are concatenated into the test script. Use them for shared bash helpers. + +### Built-in shell helpers + +`acceptance/script.prepare` defines shell helpers that are in scope for every `script`. Prefer them over hand-rolled equivalents — they keep `output.txt` consistent across tests and make intent obvious to the next reader. + +- `trace CMD...`: print `>>> CMD` to stderr, then run CMD. Wrap commands whose invocation should appear in `output.txt` so the captured output explains what produced it. Leading `KEY=value` arguments are exported for the command (e.g. `trace FOO=bar $CLI ...`). +- `title "TEXT"`: print a `=== TEXT` section header. Use `\n` escapes for spacing. Use it to label the phases of a multi-step script. +- `errcode CMD...`: run CMD; if it exits non-zero, append `Exit code: N` to the output but let the script continue (scripts run under `bash -e`, which would otherwise abort). Use when a command is *allowed* to fail and later steps must still run. +- `musterr CMD...`: run CMD and fail the whole test if it *succeeds*; on the expected failure the script continues. Use to assert a command must error. +- `withdir DIR CMD...`: run CMD with the working directory set to DIR, restoring it afterwards. +- `git-repo-init`: initialize a deterministic git repo (fixed user/email, no hooks) and commit `databricks.yml`. +- `uuid`, `sethome DIR`, `venv_activate`, `as-test-sp CMD...`, `readplanarg FILE`, `envsubst`: see `acceptance/script.prepare` for the full list and exact semantics. + +**RULE: Wrap commands whose invocation should be visible in `output.txt` with `trace`.** The `>>> ...` line ties each block of output to the command that produced it; without it the output is an unlabeled wall of text. + +**RULE: Assert an expected failure with `musterr`, not `! cmd` or a bare `errcode`.** Only `musterr` fails the test when the command unexpectedly *succeeds*. `! cmd` is exempt from `set -e` and silently passes on success; `errcode` is for *tolerated* failures, not required ones. + +**RULE: Capture a tolerated non-zero exit with `errcode`, not `cmd || true`.** `errcode` records `Exit code: N` in the output so the failure stays visible and asserted; `|| true` hides it entirely. + +### Helper scripts + +**RULE: Use the `acceptance/bin/` helpers before reaching for inline `jq` or `grep` pipelines.** When a test needs to filter recorded requests, assert a substring is or isn't present, or register a dynamic replacement, the helpers handle sorting, URL query normalization, redaction hooks, and cross-platform path issues. Inline `jq` in an acceptance script is brittle and hard to read. + +GOOD: + +```bash +trace $CLI bundle plan | contains.py "Plan: 0 to add, 0 to delete, 1 to update" +trace print_requests.py //api/2.0/apps +add_repl "$deployment_id" DEPLOYMENT_ID +``` + +BAD: + +```bash +{ trace jq 'select(.method == "POST" and .path == "/api/2.0/apps")' out.requests.txt; } || true +``` + +Available on `PATH` during test execution (from `acceptance/bin/`): + +- `contains.py SUBSTR [!SUBSTR_NOT]`: passthrough filter (stdin→stdout) that checks substrings are present (or absent with `!` prefix). Errors are reported on stderr. +- `print_requests.py //path [^//exclude] [--get] [--sort] [--unique] [--oneline] [--keep]`: print recorded HTTP requests matching path filters. Requires `RecordRequests = true` in `test.toml`. Excludes GET by default (`--get` includes them); clears `out.requests.txt` afterwards (`--keep` retains it). `^` prefix excludes a path; multiple positive filters are OR'd together. `--sort` orders output deterministically (use when the request set is order-independent), `--unique` collapses consecutive duplicates (e.g. repeated polls), `--oneline` prints one request per line. +- `replace_ids.py [-t TARGET]`: read deployment state and add `[NAME_ID]` replacements for all resource IDs. +- `read_id.py [-t TARGET] NAME`: read ID of a single resource from state, print it, and add a `[NAME_ID]` replacement. +- `add_repl VALUE REPLACEMENT`: add a custom replacement (VALUE will be replaced with `[REPLACEMENT]` in output). Wraps `add_repl.py`, which appends a JSON line to `$ACC_REPLS` — the file holding every replacement applied to the output, read back by the harness and by `diff.py` / `sort_lines.py --repl`. Always go through the helper; do not write `$ACC_REPLS` from a script. +- `update_file.py FILENAME OLD NEW`: replace all occurrences of OLD with NEW in FILENAME. Errors if OLD is not found. Cannot be used on `output.txt`. +- `find.py REGEX [--expect N]`: find files matching regex in current directory. `--expect N` asserts an exact count. +- `diff.py DIR1 DIR2` or `diff.py FILE1 FILE2`: recursive diff with test replacements applied. +- `print_state.py [-t TARGET] [--backup]`: print deployment state (`resources.json`, or a terraform state left by an older CLI). +- `edit_resource.py TYPE ID < script.py`: fetch resource by ID, execute Python on it (resource in `r`), then update it. TYPE is `jobs` or `pipelines`. +- `gron.py`: flatten JSON into greppable discrete assignments (simpler than `jq` for searching JSON). +- `jq` is also available for JSON processing. + +**RULE: Prefer `gron.py | grep ` over inline `jq` paths for single-value lookups.** The gron output prints the JSON path inline, so the test log explains itself. + +**RULE: Don't pass `--keep` to `print_requests.py` if a later `print_requests.py` call follows.** The buffer accumulates, so the second call double-prints the earlier requests. + +**RULE: Filter recorded requests with `print_requests.py`, never with a hand-written `jq 'select(...)' out.requests.txt` pipeline** — inline, or hidden inside a local `print_requests()` shell function. The helper already excludes GET, normalizes query strings, optionally sorts, and deletes `out.requests.txt` afterwards. A copy-pasted `jq` wrapper reimplements all of that, drifts from the canonical output format, and is the single most common acceptance-test anti-pattern in this repo. Wrapping `print_requests.py` *itself* in a local function is fine — e.g. to send each variant's output to its own `out.requests..json`. Reach for `jq` on `out.requests.txt` only for what `print_requests.py` genuinely can't express: filtering on request *body* content, or deleting noisy body fields (prefer a `Repls` entry in `test.toml` even then). + +GOOD: + +```bash +trace print_requests.py //pipelines --sort +``` + +BAD: + +```bash +print_requests() { + jq --sort-keys 'select(.method != "GET" and (.path | contains("/pipelines")))' < out.requests.txt + rm out.requests.txt +} +trace print_requests +``` + +**RULE: Route noisy or non-deterministic command output to `LOG.` instead of `output.txt` or `/dev/null`.** `LOG.*` files are visible under `go test -v` but excluded from the diff — see `acceptance/selftest/log/`. Use `&> LOG.` to capture both streams (then `contains.py` to assert invariants like `'!panic' '!internal error'`), or `2>>LOG.` for cleanup-step stderr you'd otherwise drop to `/dev/null`. + +**RULE: When a test prints an API GET/read response into `output.txt`, project it to an allow-list of the fields the test asserts — never dump the full payload or strip a deny-list of volatile fields with `jq 'del(...)'`.** The backend keeps adding response fields, and cloud tests run against the real API, so a full payload (or a `del` that only removes today's volatile fields) breaks the golden every time the response grows — even for fields the test does not care about. Instead define a `_fields()` helper in the resource directory's `script.prepare` that `jq`-selects the fields you assert, and pipe the response through it. Precedent: `acceptance/bundle/resources/postgres_*/script.prepare`. + +GOOD: + +```bash +# in script.prepare +branch_fields() { + jq '{branch_id, name, parent, status: (.status | {branch_id, default, is_protected})}' +} +# in script +trace $CLI postgres get-branch "$name" | branch_fields +``` + +BAD: + +```bash +trace $CLI postgres get-branch "$name" | jq 'del(.create_time, .update_time)' +trace $CLI postgres get-branch "$name" # full payload straight into output.txt +``` + +For a field that appears on some responses but not others (e.g. a provenance field absent on a default resource), append `| with_entries(select(.value != null))` to the projected object so the optional field is dropped rather than emitted as `null`. + +### Test server + +Acceptance tests run against an in-process fake of the Databricks API in `libs/testserver/` (`FakeWorkspace` and the per-service handler files). The fake keeps real in-memory state and returns the same errors the backend does: 404 on a missing parent, 409 on a duplicate create, 400 on a missing required field, and so on. `test.toml` can also stub a single route with a canned response: + +```toml +[[Server]] +Pattern = "POST /api/2.2/jobs/create" +Response.StatusCode = 400 +Response.Body = '''{"error_code": "INVALID_PARAMETER_VALUE", "message": "..."}''' +``` + +**RULE: Model API behavior in `libs/testserver/`, not in per-test `[[Server]]` response stubs.** When a test needs the fake server to validate input or return an error, add or extend the handler in `libs/testserver/` so the behavior is stateful and shared by every test. A `[[Server]]` stub hijacks the route with a static response that ignores request state, diverges from the real API, and only helps the one test that declares it — so the next test re-stubs the same error and the fake never converges on the real contract. + +GOOD: teach the create handler in `libs/testserver/postgres.go` to return 404 when the referenced role does not exist, so every test that creates a database against a missing role observes the real error. + +BAD: add `[[Server]]` with `Pattern = "POST .../databases"` and `Response.StatusCode = 404` to a single test's `test.toml` to fake that same error. + +Reserve `[[Server]]` for routes the testserver does not model at all (a one-off endpoint exercised by a single test) and for injecting a response a stateful handler genuinely can't express (for transient faults and forced disconnects, prefer the `fault.py` / kill helpers instead). + +### Update workflow + +**RULE: Run `./task test-update` to regenerate outputs, then `./task fmt` and `./task lint`.** If fmt or lint modify files in `acceptance/`, there's an issue in the source files. Fix the source, regenerate, and verify fmt/lint pass cleanly. + +### Template tests + +Tests in `acceptance/bundle/templates` include materialized templates in output directories. These directories follow the same `out` convention: everything starting with `out` is generated output. Sources are in `libs/template/templates/`. + +**RULE: Use `./task test-update-templates` to regenerate materialized templates.** If linters or formatters find issues in materialized templates, do not fix the output files; fix the source in `libs/template/templates/` and regenerate. diff --git a/.agents/skills/bump-cli-compat/SKILL.md b/.agents/skills/bump-cli-compat/SKILL.md new file mode 100644 index 00000000000..454c93e14a9 --- /dev/null +++ b/.agents/skills/bump-cli-compat/SKILL.md @@ -0,0 +1,153 @@ +--- +name: bump-cli-compat +description: "Bump cli-compat.json with new AppKit and Agent Skills versions, then create a PR. Use when the user says 'bump cli-compat', 'update cli-compat', 'bump compatibility manifest', 'new appkit release cli-compat', or wants to update the CLI compatibility manifest after an AppKit or Agent Skills release." +user-invocable: true +allowed-tools: Read, Edit, Write, Bash, Glob, Grep, AskUserQuestion +--- + +# Bump CLI Compatibility Manifest + +Updates `internal/build/cli-compat.json` with new AppKit and Agent Skills versions, validates the result, and creates a PR. + +## Arguments + +Parse the user's input for optional named flags: + +- `--appkit ` → AppKit version (e.g. `0.28.0`) +- `--skills ` → Agent Skills version (e.g. `0.1.6`) +- No args → auto-detect latest versions from GitHub tags + +Versions should be provided **without** the `v` prefix (e.g. `0.28.0`, not `v0.28.0`). If provided with the prefix, strip it. + +## Workflow + +### Step 1: Resolve versions + +If both `--appkit` and `--skills` versions were provided, skip to Step 2. + +For any missing version, fetch the latest tag from GitHub: + +```bash +# Latest appkit version (strip leading 'v') +gh api repos/databricks/appkit/tags --jq '.[0].name' | sed 's/^v//' + +# Latest skills version (strip leading 'v') +gh api repos/databricks/databricks-agent-skills/tags --jq '.[0].name' | sed 's/^v//' +``` + +Show the resolved versions to the user and ask: + +> The latest versions are: +> - AppKit: `{appkit_version}` +> - Agent Skills: `{skills_version}` +> +> Have these versions been evaluated (evals passed with no regressions)? + +**Do NOT proceed until the user confirms.** If the user says no or wants different versions, ask them to provide the correct versions. + +### Step 2: Validate tags exist + +Verify that the corresponding Git tags exist on GitHub. For AppKit, also validate the `template-v` tag (used by `apps init`): + +```bash +# AppKit release tag +gh api repos/databricks/appkit/git/ref/tags/v{appkit_version} --jq '.ref' + +# AppKit template tag (used by apps init) +gh api repos/databricks/appkit/git/ref/tags/template-v{appkit_version} --jq '.ref' + +# Agent Skills tag +gh api repos/databricks/databricks-agent-skills/git/ref/tags/v{skills_version} --jq '.ref' +``` + +If any tag doesn't exist, report the error and stop. + +### Step 3: Read current manifest + +Read `internal/build/cli-compat.json` and `AgentSkillsFallbackVersion` in `internal/build/clicompat.go`. Note the current versions and the list of versioned entries. The newest CLI range uses `"skills": "latest"`; the compiled constant supplies the tested fallback. Keep older released ranges pinned. Routine skills releases need no manifest bump. CLIs before `1.6.0` reject `"latest"` and use a valid cached or embedded manifest without returning a parse error; losing remote AppKit and skills compatibility updates for these CLIs is accepted. + +### Step 4: Determine update type + +Ask the user: + +> Do any of these apply? +> - **AppKit**: The new templates require new CLI logic in `apps init` (e.g. new flags, prompts, or template handling that older CLIs don't have) +> - **Skills**: The new skills version uses CLI commands that older CLIs don't support +> +> If **neither** applies, this is a non-breaking bump (default). + +- **No breaking changes** (default): proceed to Step 4a. +- **Breaking changes**: proceed to Step 4b. + +### Step 4a: No breaking changes (update in-place) + +Update the **highest versioned entry** to the new `appkit` version, keeping `"skills": "latest"`. Update `AgentSkillsFallbackVersion` in `internal/build/clicompat.go` to the tested skills version. Do NOT add new versioned keys. The manifest is range-based: updating the highest entry automatically covers all CLI versions in that range. + +Write the updated `internal/build/cli-compat.json` and `internal/build/clicompat.go`. + +### Step 4b: Breaking changes (add new entry) + +Ask the user for the **minimum CLI version** that supports the new features. + +Add a new entry keyed to that CLI version with the new `appkit` and `"skills": "latest"`. Update `AgentSkillsFallbackVersion` in `internal/build/clicompat.go` to the tested skills version. If skills compatibility changed, replace `"latest"` in the affected older ranges with the last compatible release. Preserve unrelated AppKit and skills compatibility boundaries. + +Write the updated `internal/build/cli-compat.json` and `internal/build/clicompat.go`. + +### Step 5: Validate + +Run the Go tests to ensure the manifest is well-formed: + +```bash +go test ./libs/clicompat/... -run 'Test(EmbeddedManifest|ResolveEmbeddedAgentSkillsVersion)' -v +``` + +If validation fails, show the errors and fix them before proceeding. + +### Step 6: Create branch, commit, and PR + +```bash +# Create a new branch from the current branch (or main) +git checkout -b bump-cli-compat-appkit-{appkit_version}-skills-fallback-{skills_version} + +# Stage and commit +git add internal/build/cli-compat.json internal/build/clicompat.go +git commit -s -m "Bump cli-compat to appkit {appkit_version}, skills fallback {skills_version}" + +# Push and create PR +git push -u origin HEAD +gh pr create \ + --title "Bump cli-compat to appkit {appkit_version}, skills fallback {skills_version}" \ + --body "$(cat <<'EOF' +## Summary +Bump `cli-compat.json` to use: +- AppKit `{appkit_version}` +- Agent Skills track latest, with compiled fallback `{skills_version}` + +## Checklist +- [ ] Evals passed with no regressions +- [ ] `go test ./libs/clicompat/... -run 'Test(EmbeddedManifest|ResolveEmbeddedAgentSkillsVersion)'` passes +EOF +)" +``` + +Show the PR URL to the user when done. + +## Examples + +### Example: With explicit versions +``` +/bump-cli-compat --appkit 0.28.0 --skills 0.1.6 +``` +Validates tags exist (including `template-v0.28.0`), updates manifest, creates PR. + +### Example: Auto-detect latest +``` +/bump-cli-compat +``` +Fetches latest tags, asks for eval confirmation, then updates and creates PR. + +### Example: Only bump AppKit +``` +/bump-cli-compat --appkit 0.28.0 +``` +Auto-detects latest skills version, asks for confirmation, then updates both. diff --git a/.agents/skills/bump-sdk/SKILL.md b/.agents/skills/bump-sdk/SKILL.md new file mode 100644 index 00000000000..4f257c10b4b --- /dev/null +++ b/.agents/skills/bump-sdk/SKILL.md @@ -0,0 +1,115 @@ +--- +name: bump-sdk +description: "Use when bumping the databricks-sdk-go dependency, finishing an automated \"Update Go SDK to vX.Y.Z\" PR from the SDK bumper, upgrading the Go SDK, updating the .codegen/_openapi_sha spec SHA, or moving the CLI to the SDK version used by a given Terraform provider release." +user-invocable: true +allowed-tools: Read, Edit, Write, Bash, Glob, Grep, WebFetch, AskUserQuestion +--- + +# Bump the Go SDK + +The SDK version lives in `go.mod` (`github.com/databricks/databricks-sdk-go`) and the pinned spec SHA lives in `.codegen/_openapi_sha`. +These two move as a pair; everything else in this skill is regenerated from them or is fallout you fix by hand. +Do not hand-edit generated files (`.codegen/cli.json`, `cmd/workspace/*`, `cmd/account/*`, `bundle/schema/jsonschema.json`, `bundle/internal/validation/generated/*`, `bundle/direct/dresources/configs/*.generated.yml`, `python/databricks/bundles/**`); regenerate them. + +The Python tasks (`pydabs-*`, and the `pydabs-codegen` step inside `generate-check`) all run through `uv`. If one fails because `uv` is missing or because the host's `python3` is too old (e.g. 3.9), install `uv` (`curl -LsSf https://astral.sh/uv/install.sh | sh`) rather than touching the system Python: `uv run` provisions the interpreter each package pins (`>=3.10`, and `==3.13.*` under `python/codegen/`) and downloads it if needed. Do not chase the system Python version. +The acceptance goldens are the exception: they need CI's `uv` index, see step 4. + +## The SDK bumper + +The SDK bumper (eng-dev-ecosystem automation) does steps 1-4 for every new stable Go SDK release. +It opens a PR from the `automation/go-sdk-vX.Y.Z` branch of `databricks/cli`, titled `Update Go SDK to vX.Y.Z`, containing the `go get` + `go mod tidy` result, `.codegen/_openapi_sha`, `.codegen/cli.json` (genkit, followed by `./task generate-clijson-post`), and a changelog fragment without a PR link. +`generate-clijson-post` ends with `bump-sdk-post` (step 4), whose error it ignores so that the bumper, which aborts on any error there, still opens a PR. The PR therefore carries whatever got regenerated, and stays red while the bump needs hand fixes (step 5). +Bumper PRs opened before `generate-clijson-post` ran `bump-sdk-post` (e.g. #7138) have nothing downstream of `cli.json`: their stale command stubs usually fail to compile, which fails lint and every test job. +The bumper does not merge CLI PRs, and it reuses an open PR for the same release on later runs, keeping commits pushed to its branch. + +So for a release the bumper already picked up, finish its PR instead of starting a new bump: + +- Find it with `gh pr list --repo databricks/cli --head automation/go-sdk-vX.Y.Z`. +- Check its branch out in a worktree (it lives on `databricks/cli`, not a fork) and `git merge origin/main` into it: CI tests the PR merged into `main`, so the goldens must be produced against the same base. +- Continue at step 4: rerun `./task bump-sdk-post` against the merged base and in your environment, which also shows what it failed on in the bumper. + +## Steps + +Steps 1-4 are the manual equivalent of the bumper (no bumper PR yet, a pinned version, or the version a given Terraform provider uses). + +**1. Resolve the target versions.** +Use the SDK version the user gave. If they didn't specify one, look up the latest released version yourself (the newest `vX.Y.Z` tag at `https://github.com/databricks/databricks-sdk-go/tags`) instead of prompting for it. +If they want "the version the Terraform provider vX.Y.Z uses", read the provider's `go.mod` at that tag: `https://raw.githubusercontent.com/databricks/terraform-provider-databricks/vX.Y.Z/go.mod`. +The accompanying OpenAPI SHA is pinned inside the SDK at that tag: `https://raw.githubusercontent.com/databricks/databricks-sdk-go/vX.Y.Z/.codegen/_openapi_sha`. +Always bump the spec SHA together with the SDK; they are expected to move as a pair. + +**2. Apply the core bump.** +Run `go get github.com/databricks/databricks-sdk-go@vX.Y.Z` to update `go.mod`/`go.sum`. +Write the new SHA with `echo ${SHA} > .codegen/_openapi_sha`; `generate` reformats the file afterward, so a trailing newline here does not matter. +Run `go mod tidy` and confirm the `go.mod`/`go.sum` diff is the SDK line only. + +**3. Regenerate cli.json via genkit.** +Run `./task generate-clijson`, which clones `$UNIVERSE_DIR` (default `$HOME/universe`) into a temporary directory and builds genkit and the OpenAPI spec at `.codegen/_openapi_sha`. If that commit is absent locally, the task fetches `master` from the Universe checkout's `origin` remote into the temporary clone. +The task also syncs `internal/genkit/tagging.py`, its two `.lock` files, and `.github/workflows/tagging.yml` from that Universe commit; this is drift unrelated to the SDK bump. +Decide with the user whether to keep the tagging-producer drift or restore those files to `origin/main`. +The task ends with step 4 (`generate-clijson-post` runs `bump-sdk-post`) and ignores its error, so read the end of its output, or go on with step 4 directly. + +**4. Regenerate everything downstream: `./task bump-sdk-post`.** +This is the whole mechanical part of the bump: `generate-check` (command stubs, refschema, schema, validation, direct-engine YAML, pydabs), then `test-update` for the acceptance goldens. +Everything after it needs judgment. +Run directly, it fails on errors: `generate-refschema` and `test-update` build the CLI, so it fails while the bump still breaks compilation; fix that (step 5) and rerun the task. + +Run it in CI's environment, or the goldens pick up local drift: +- `uv` index: the acceptance tests build wheels offline from the vendored packages (`UV_OFFLINE`, `UV_FIND_LINKS`), but `uv` still reads its default index's pages from the shared cache. If a `uv.toml` (e.g. `/etc/uv/uv.toml`, which applies even under the tests' temporary `HOME`) makes an internal PyPI proxy the default index, `uv` picks versions from cached proxy pages that it cannot download offline and fails with `No solution found when resolving: hatchling`; `-update` then bakes that error into dozens of template goldens and deletes their `output/` trees. The same failure on `main` tells it apart from bump fallout. Set `UV_DEFAULT_INDEX=https://pypi.org/simple`, CI's default, for the acceptance runs only: the generators fetch tools such as `ruff` and need the proxy where `pypi.org` is unreachable. On such a machine, run the task's two halves separately: `./task generate-check`, then `UV_DEFAULT_INDEX=https://pypi.org/simple ./task test-update` (and the same prefix for `./task test` later). If `generate-clijson` already ran `test-update` without it, first revert the `acceptance/` churn (`git checkout -- acceptance`, plus any stray untracked files it left). +- Python: CI installs the managed interpreters with `./task install-pythons`; do the same. +- Go: the `toolchain` in `go.mod`. A newer local `go` also changes goldens and generated `gofmt` output; use `GOTOOLCHAIN=` if they differ. + +Before going on, account for every changed file outside the generated set, including the bumper's (its environment is not CI's either): a bump without fallout changes `cmd/**`, `bundle/schema/jsonschema.json`, `bundle/internal/validation/generated/*`, `python/databricks/bundles/**`, `acceptance/bundle/refschema/out.fields.txt` and help-text goldens (`acceptance/help/output.txt`, `acceptance/cmd/account/account-help/output.txt`). +Revert any golden change you can't attribute to the new SDK or spec. + +**5. Handle SDK breaking changes.** +Read the SDK's `CHANGELOG.md` at the target version (in the module cache) to enumerate breaking changes before chasing compile errors. +A removed struct field that the CLI used (e.g. `jobs.AiRuntimeTask.CodeSourcePath`) should have its usage temporarily disabled with a comment noting it returns in a later SDK bump, not deleted outright. +A new struct field triggers an `exhaustruct` lint failure in `bundle/direct/dresources/*`. Run `./task lint` and (in case of issues) wire the field through `PrepareState` and `RemapState` when it exists on both the input and remote types. +Where a remote is rebuilt by hand from a GET response (e.g. `makeJobRunRemote` maps `jobs.Run` into the `jobs.RunNow`-shaped `JobRunRemote`), copy the new field from the response if the response has it, and list it with the request-only zero values otherwise. +`job_runs.yml` must list every `jobs.RunNow` field under `ignore_remote_changes`; `TestJobRunIgnoresEveryRequestField` fails on a new one. +A field the new spec now annotates as output-only may already be emitted into `.generated.yml`, making the manual entry in `.yml` redundant; `TestResourcesYMLNoRedundantRules` catches this, so remove the manual entry. +Rerun `./task bump-sdk-post` after the fixes. + +**6. VERIFY.** + +```bash +go test ./acceptance -run '^TestAccept$' -timeout=60m # MUST pass on its own +``` + +The verify pass is not optional. +Many bundle tests run under an `EnvMatrix` (e.g. `DMS`, `READPLAN`). +When a schema change makes one variant error while another succeeds, the variants produce different output; `-update` runs all of them and each overwrites the other's `output.txt`, so it can silently settle on the passing variant and report `ok` while the golden is actually wrong. +Only the non-update run catches this. +(Ignore `rejecting_proxy.go: blocking proxy` log lines, which are normal. +A test that times out under full parallel load but passes when run alone is a flake, not a regression.) + +**7. Handle acceptance-test fallout** if the verify pass fails. +A field that becomes required in the spec makes the CLI emit a client-side "required field ... is not set" warning wherever a test config omits it. +For a test that legitimately sets the field, add a non-empty value; if a sibling Terraform-provider bump PR is open, reuse its exact value to avoid conflicts. +For a test that deliberately omits the field to exercise a backend error, that test is likely now redundant with generic client-side validation, so confirm with the user and `git rm` it. +Regenerate the affected test's `out*` files with `go test ./acceptance -run 'TestAccept/' -update` (never hand-edit them), then re-run the full verify pass. + +**8. Verify the rest.** +Run the full `pr-checklist` (`./task fmt`, `./task checks`, `./task lint`, `./task test`, and the pydabs suite, since `python/` changes); if `fmt` or `lint` touches `acceptance/`, a fixture is wrong, so fix the source rather than editing output. +`./task checks` includes `check-lockfiles`, which fails if the internal PyPI proxy URL leaked into a `*uv.lock` or genkit `*.py.lock`. +If a test fails, confirm whether it is pre-existing by reproducing it on the base commit in a throwaway worktree (`git worktree add --detach /tmp/base HEAD`) before assuming the bump caused it. + +**9. Changelog fragment.** +The bumper writes `.nextchanges/dependency-updates/go-sdk-vX.Y.Z.md` as `* Update the Go SDK to [vX.Y.Z](https://github.com/databricks/databricks-sdk-go/releases/tag/vX.Y.Z).`; for a manual bump, write the same file so both read alike. +Never reference the Terraform provider version in the changelog fragment or PR body. +The trailing PR link is missing until the PR exists, and the `Changelog Preview` check fails until it is there: append `([#NNNN](https://github.com/databricks/cli/pull/NNNN))` after the period and commit the result. + +**10. Commit, push, PR.** +If the push 403s, the active gh account lacks write access to `databricks/cli`; switch to one that has it with `gh auth switch`. + +For a bumper PR, commit the fixes on top of the bumper's commit and push to its branch (`git push origin HEAD:automation/go-sdk-vX.Y.Z`); do not rewrite the bumper's commit. +The commit body lists the hand fixes, one terse bullet each. + +For a manual bump, follow the `pr-checklist` skill for the commit body, PR description, and changelog, and do not run `gh pr create` without the user's explicit permission. +The bump-specific content for that template is a `## Changes` line ``Bump `github.com/databricks/databricks-sdk-go` from v{old_version} to v{version}.`` followed by one terse bullet per user-visible breaking change or new field handled. + +## Stacking and rebasing + +On any merge/rebase conflict in a generated file like `generated.go`, resolve to a compilable state and then regenerate rather than hand-merging. +A squash-merged upstream PR leaves its original commits as non-ancestors, so the branch log may show duplicate commits even when the net diff vs `origin/main` is correct. diff --git a/.agents/skills/bump-serverless-env-version/SKILL.md b/.agents/skills/bump-serverless-env-version/SKILL.md new file mode 100644 index 00000000000..3fe6340ab5e --- /dev/null +++ b/.agents/skills/bump-serverless-env-version/SKILL.md @@ -0,0 +1,111 @@ +--- +name: bump-serverless-env-version +description: "Use when bumping or upgrading the default serverless environment version shipped by Databricks bundle templates, including its coupled Python and DB Connect pins." +user-invocable: true +allowed-tools: Read, Edit, Write, Bash, Glob, Grep, WebFetch, AskUserQuestion +--- + +# Bump the serverless environment version + +Read `.agents/rules/template-versions.md` first for compatibility and +synchronization policy. Never hand-edit generated acceptance output. + +## 1. Resolve a compatible version set + +Use the requested environment version, or the newest published version when none +was specified. Confirm its runtime Python version from the +[environment release notes](https://docs.databricks.com/aws/en/release-notes/serverless/environment-version/) +and [databricks/environments](https://github.com/databricks/environments). + +Apply `.agents/rules/template-versions.md` to the environment, Python, and DB +Connect pins. Check Python compatibility in the +[DB Connect requirements](https://docs.databricks.com/dev-tools/databricks-connect/python/index.html#requirements). +Advance `conservative_db_connect_version_spec` when compatibility requires it or its +DBR line has six months or less of support remaining. Use the supported-LTS table in +the [Databricks Runtime release notes](https://docs.databricks.com/aws/en/release-notes/runtime/) +to choose the oldest compatible replacement with more than six months of support remaining. +Do not advance it merely to match the environment version. + +## 2. Update every template source + +Find both macro definitions and hardcoded literals; trust the search results: + +```bash +grep -rn 'environment_version\|environment-version\|requires-python\|default_python_version' libs/template/templates/ +``` + +Inspect every hit and change only values that pin a version. Re-run the command +after editing and confirm every version-bearing template hit uses the target. +If all sources and coupled pins already match the resolved set and the worktree has +no partial bump, report that no changes are needed and stop. + +Current sources include: + +- `serverless_environment_version` definitions in `default/library/versions.tmpl` + and `dbt-sql/library/versions.tmpl`; +- a hardcoded value in the `default-scala` job template; +- three hardcoded values in `lakeflow-integrations`, including its + `--environment-version` argument. + +In `default/library/versions.tmpl`, update `python_version_spec` and +`default_python_version` when the runtime Python version changes. Update +`conservative_db_connect_version_spec` only under the compatibility and support rule +above. Keep the version-specific compatibility comments accurate even when their pin +is unchanged. Do not synchronize unrelated DBR or SQL-template DB Connect macros. + +Update version-specific examples in `.agents/rules/template-versions.md` so its +policy remains accurate; do not change the policy itself as part of the bump. + +Also inspect `defaultServerlessVersion` in `libs/localenv/envkey.go`. It is the +product-spec fallback for `databricks environments setup-local`, not a template +pin; do not infer that it should move with the templates. Change it only when the +user or current product specification also requires the fallback to move, and first +confirm `python/serverless/serverless-v{N}/pyproject.toml` exists in +`databricks/environments`. Then update default-version help, error, and test +expectations under `libs/localenv` and `cmd/environments`; verify with +`go test ./libs/localenv ./cmd/environments`, then update and verify with: + +```bash +go test ./acceptance -run '^TestAccept/localenv' -update -timeout=60m +go test ./acceptance -run '^TestAccept/localenv' -timeout=60m +``` + +Otherwise leave it unchanged and record why. Do not change the intentionally older +SSH fixtures in `acceptance/ssh/connect-serverless-*`. + +## 3. Regenerate and verify goldens + +Update and verify the acceptance suite: + +```bash +./task test-update +go test ./acceptance -run '^TestAccept$' -timeout=60m +``` + +The non-update command must pass. Update mode selects covering `EnvMatrix` variants; +the non-update run verifies every variant against the regenerated goldens. + +## 4. Add the changelog fragment + +Add `.nextchanges/bundles/serverless-environment-version-v{N}.md`. Follow the +`pr-checklist` skill's changelog conventions. Describe a benefit stated in the +target version's release notes, link the actual version page, and mention the DB +Connect version only if it changed. + +Cross-check the final source and generated-output footprint against the prior +template bumps in [PR #3897](https://github.com/databricks/cli/pull/3897) and +[PR #6378](https://github.com/databricks/cli/pull/6378). Explain material +differences in the final handoff or PR description. Prior PRs are not sources of +truth: revalidate their compatibility decisions, wording, URLs, and file lists. + +## 5. Finish only when requested + +**Required sub-skill:** use `pr-checklist`, run its checks, and inspect the final +diff. If formatting or linting changes generated acceptance files, fix the source +and regenerate them. + +Commit, push, or create/update a PR only when the user explicitly requests that +operation. When requested, follow `pr-checklist` rather than duplicating its commit +and PR-body instructions here. + +When creating a PR for the bump, suggest `lennartkats-db` as a reviewer. diff --git a/.agents/skills/onboard-team-area/SKILL.md b/.agents/skills/onboard-team-area/SKILL.md new file mode 100644 index 00000000000..e24020169d4 --- /dev/null +++ b/.agents/skills/onboard-team-area/SKILL.md @@ -0,0 +1,59 @@ +--- +name: onboard-team-area +description: "Use when onboarding a team, reserving an experimental area, or assigning code ownership in the Databricks CLI through native GitHub CODEOWNERS." +user-invocable: true +allowed-tools: Read, Edit, Write, Bash, Glob, Grep, AskUserQuestion +--- + +# Onboard a team / area into the CLI + +How ownership works here: `.github/CODEOWNERS` uses GitHub's native code-owner reviews. The last matching rule wins, and any owner on that line can approve. Include `@databricks/eng-deco-cli` on every rule so maintainers can approve changes across all areas. Team membership is maintained in GitHub. + +Enforcement requires "Require review from Code Owners" in the target branch's ruleset. Adding a CODEOWNERS file alone requests reviews but does not require them. + +## Inputs (ask if missing) + +- GitHub team slug, e.g. `eng-ai-custom-training`. +- Area/dir name, e.g. `air`. +- Experimental or stable? This decides where code lands (see the last section). + +## Step 1 — Identify the native GitHub team + +Use the team as `@databricks/`. GitHub requires the team to be visible and have explicit write access to the repository for its approvals to count. + +Use the team slug supplied by the user when they are arranging team creation separately. Verify its access before enabling enforcement. + +## Step 2 — Reserve the directories + +Create empty `.gitkeep` placeholders so the owned paths exist before any code lands: + +``` +experimental//.gitkeep +acceptance/experimental//.gitkeep +``` + +## Step 3 — Map the paths in `.github/CODEOWNERS` + +Add rules under an `# ` comment. Specific rules go after the `*` maintainer catch-all and must repeat the maintainer team: + +``` +/experimental// @databricks/eng-deco-cli @databricks/ +/acceptance/experimental// @databricks/eng-deco-cli @databricks/ +``` + +## Step 4 — Validate and open the PR + +```bash +git diff --check +# Repo quick checks (no Go/Python/YAML changed, so the formatters have nothing to do) +./task checks +``` + +Check that the new paths exist and every new rule includes the maintainer team. Once the branch is pushed, inspect GitHub's CODEOWNERS diagnostics for invalid entries or team permissions. + +No `.nextchanges/` entry; this is ownership/config only. Write the PR using the `.github/PULL_REQUEST_TEMPLATE.md` sections (Why / Changes / Tests). + +## Experimental vs stable, and graduation + +- **Experimental** — code under `experimental//`, tests under `acceptance/experimental//`. Register it under the hidden parent in `cmd/experimental/experimental.go`, or top-level in `cmd/cmd.go` with `Hidden: true` (as `ssh` does). Experimental commands still ship enabled in every release; `Hidden` only removes them from `--help`, it does not gate or compile them out. No `.nextchanges/` entries while experimental. To hand a build to testers, push a `bugbash-` branch (auto-builds a snapshot) and share the `internal/bugbash/exec.sh` one-liner. +- **Graduating to stable** — `git mv` the feature-complete commands to `cmd//` + `libs//`, register them top-level in `cmd/cmd.go`, keep the old `experimental` paths as deprecated cobra aliases (`sub.Hidden = true`, `sub.Deprecated = '...'`), add CODEOWNERS rules for the new stable paths, and add a `.nextchanges/` entry. See `experimental/aitools` graduating to top-level `aitools` (PR #4917) as the worked example. diff --git a/.agents/skills/pr-checklist/SKILL.md b/.agents/skills/pr-checklist/SKILL.md new file mode 100644 index 00000000000..25a20943d28 --- /dev/null +++ b/.agents/skills/pr-checklist/SKILL.md @@ -0,0 +1,82 @@ +--- +name: pr-checklist +description: Checklist to run before submitting a PR +--- + +Before submitting a PR, run these commands to match what CI checks. CI uses the full variants (not the `-q` diff-only wrappers), so `./task lint-q` alone is insufficient. + +```bash +# 1. Formatting and checks (CI runs fmt, not fmt-q) +./task fmt +./task checks + +# 2. Linting (CI runs full golangci-lint across all modules, not the diff-only wrapper) +./task lint + +# 3. Tests +./task test + +# 4. If you changed bundle config structs, schema, or direct-engine resource code: +./task generate-schema +./task generate-direct + +# 5. If you changed files in python/: +./task pydabs-codegen pydabs-test pydabs-lint pydabs-docs + +# 6. If you changed cmd/aitools/, libs/aitools/, experimental/aitools/, or experimental/ssh/: +./task test-exp-aitools # only if aitools code changed (top-level or experimental) +./task test-exp-ssh # only if ssh code changed +``` + +## Final cleanup scan + +After the commands above pass, scrub the diff before pushing. The quick version: run `git diff @{u}` and read through what you added. Specifically: + +- **Debug prints**: look for newly added `fmt.Print`, `fmt.Printf`, `fmt.Println`, `log.Print`, `log.Printf`, `log.Println`, or bare `println(...)` calls. A regex that scans only added lines against your upstream branch: + + ```bash + git diff @{u} -- '*.go' | rg '^\+.*\b(fmt|log)\.(Print|Printf|Println)\b|^\+.*\bprintln\(' + ``` + + If you have no upstream yet, substitute the intended base (e.g. `origin/main`) for `@{u}`. +- **Commented-out code**: delete it. If it's needed for reference, it lives in git history. +- **TODOs without a ticket**: either add a ticket reference (e.g. `// TODO(DECO-1234): ...`) or remove the TODO. Un-tracked TODOs rot. +- **Unintended files**: review `git status` and `git diff --stat` to confirm only the files you meant to change are staged. + +## PR description + +Follow `.github/PULL_REQUEST_TEMPLATE.md` exactly. Use its section headings (`## Changes`, `## Why`, `## Tests`) in the same order, and fill each one in. Do not invent new sections (`## Summary`, `## Test plan`, etc.), do not drop sections, and do not leave the HTML comment placeholders in the final body — replace them with real content. If a section genuinely does not apply (e.g. a docs-only change has no test steps), say so explicitly under that heading rather than removing it. + +**RULE: Be concise in the PR summary.** Overly verbose descriptions tend to be ignored by reviewers. Let the diff speak for itself and only describe at a high level what you have implemented/what components were touched. + +When using `gh pr create`, read `.github/PULL_REQUEST_TEMPLATE.md` first and base `--body` on it. + +If an agent (you) authored or substantially helped author the PR, disclose it on the last line of the body, e.g. `_This PR was written by Claude Code._` or `_PR description drafted with Claude Code._`. Be honest about the level of involvement — "written by" vs. "drafted with" vs. "reviewed by" — and keep it to a single italicized line so it doesn't crowd the template sections. + +## Changelog entry + +Add a changelog fragment under `.nextchanges/` when your change is user-visible. Each PR adds its own file, so entries never conflict between PRs. The release renders these fragments into the real `CHANGELOG.md`, so never hand-edit `CHANGELOG.md` directly. + +**When to add an entry:** +- New or changed CLI command, flag, or subcommand behavior +- User-visible change to a `databricks air` command, including preview commands (put it under `air`) +- New or changed bundle config field, schema, or engine behavior +- New direct dependency (annotate under `Dependency updates`) +- Bug fix that users will notice + +**When to skip:** +- Experimental commands (under `experimental/`): no entry until the feature graduates out of experimental +- Pure refactors, internal renames, test-only changes, and doc-only changes +- Auto-generated output changes without a corresponding user-facing change + +**How to add:** +- Create `.nextchanges/
/.md`, picking the section folder that fits: `cli`, `air`, `bundles`, `dependency-updates`, `notable-changes`, or `api-changes`. `` is arbitrary (a feature name or your PR number) — just keep it unique. +- Write a single line in user-facing language, no Jira links: start it with a `* ` bullet marker and end it with a period. +- **Voice and tense: imperative mood, active voice.** Lead with a verb that names the change — `Add`, `Fix`, `Bump`, `Remove`, `Deprecate`, `Support`, `Reject`, `Warn` — and describe the user-facing effect, not the implementation. Never use past tense (`Added`/`Fixed`) or first person (`we`/`I`/`our`). When a change reads better as a resulting behavior than as a verb, lead with the affected command, flag, or field in the present tense with "now". + - GOOD: Add support for the `cluster_policies` resource type. + - GOOD: Fix `--force-lock` being ignored when set in `databricks.yml`. + - GOOD: `bundle plan` now ignores the output-only `securable_kind` field during drift detection. + - BAD: Added support for cluster policies. — past tense; write "Add". + - BAD: We now reject secret scopes that name no principal. — first person; write "Reject secret scopes that name no principal." +- A trailing PR link is required whenever the change is associated with a PR, and the introducing PR must be among the linked ones (the checker infers it and fails if it's missing) — enforced in CI (every PR and `main`) and locally once your branch has an open PR. Write the full markdown link at the very end, after the period: `([#NNNN](https://github.com/databricks/cli/pull/NNNN))` (your PR number). For an entry spanning several PRs, list them comma-separated: `([#NNNN](…), [#MMMM](…))`. Every `#NNNN` reference must be a full markdown link — a bare or paren-wrapped `#NNNN` is rejected. +- See `.nextchanges/README.md` for details. diff --git a/.claude/rules b/.claude/rules index dc4007369dd..2d5c9a97a7a 120000 --- a/.claude/rules +++ b/.claude/rules @@ -1 +1 @@ -../.agent/rules \ No newline at end of file +../.agents/rules \ No newline at end of file diff --git a/.claude/skills b/.claude/skills index 9b058317d13..2b7a412b8fa 120000 --- a/.claude/skills +++ b/.claude/skills @@ -1 +1 @@ -../.agent/skills \ No newline at end of file +../.agents/skills \ No newline at end of file diff --git a/.codegen.json b/.codegen.json index e2a84cb8c14..990e248ed56 100644 --- a/.codegen.json +++ b/.codegen.json @@ -1,6 +1,5 @@ { - "mode": "cli_v0", - "api_changelog": true, + "mode": "cli_v1", "formatter": "go run golang.org/x/tools/cmd/goimports@latest -w $FILENAMES && go fmt ./...", "version": { "python/README.md": "version $VERSION or above", @@ -9,6 +8,14 @@ "python/uv.lock": "name = \"databricks-bundles\"\nversion = \"$VERSION\"", "libs/template/templates/default/library/versions.tmpl": "{{define \"latest_databricks_bundles_version\" -}}$VERSION{{- end}}" }, + "nextchanges_sections": { + "notable-changes": "Notable Changes", + "cli": "CLI", + "air": "AI Runtime", + "bundles": "Bundles", + "dependency-updates": "Dependency Updates", + "api-changes": "API Changes" + }, "toolchain": { "required": [ "go" diff --git a/.codegen/.gitattributes b/.codegen/.gitattributes new file mode 100644 index 00000000000..00da4383df4 --- /dev/null +++ b/.codegen/.gitattributes @@ -0,0 +1 @@ +cli.json linguist-generated=true diff --git a/.codegen/_openapi_sha b/.codegen/_openapi_sha index 15378345074..165042179b5 100644 --- a/.codegen/_openapi_sha +++ b/.codegen/_openapi_sha @@ -1 +1 @@ -11ae6f9d98f0d0838a5e53c27032f178fecc4ee0 \ No newline at end of file +1603cd4e00e208260dc36be11f5ba9822ff73360 \ No newline at end of file diff --git a/.codegen/cli.json b/.codegen/cli.json new file mode 100644 index 00000000000..372ab22fee1 --- /dev/null +++ b/.codegen/cli.json @@ -0,0 +1,237208 @@ +{ + "schemas": { + "agentbricks.CancelCustomLlmOptimizationRunRequest": {}, + "agentbricks.CreateCustomLlmRequest": { + "fields": { + "agent_artifact_path": { + "description": "This will soon be deprecated!!\nOptional: UC path for agent artifacts. If you are using a dataset that you only have read permissions,\nplease provide a destination path where you have write permissions. Please provide this in catalog.schema format.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "datasets": { + "description": "Datasets used for training and evaluating the model, not for inference.\nCurrently, only 1 dataset is accepted.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "guidelines": { + "description": "Guidelines for the custom LLM to adhere to", + "launch_stage": "PRIVATE_PREVIEW" + }, + "instructions": { + "description": "Instructions for the custom LLM to follow", + "launch_stage": "PRIVATE_PREVIEW" + }, + "name": { + "description": "Name of the custom LLM. Only alphanumeric characters and dashes allowed.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "agentbricks.CustomLlm": { + "fields": { + "agent_artifact_path": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "creation_time": { + "description": "Creation timestamp of the custom LLM", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "creator": { + "description": "Creator of the custom LLM", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "datasets": { + "description": "Datasets used for training and evaluating the model, not for inference", + "launch_stage": "PRIVATE_PREVIEW" + }, + "endpoint_name": { + "description": "Name of the endpoint that will be used to serve the custom LLM", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "guidelines": { + "description": "Guidelines for the custom LLM to adhere to", + "launch_stage": "PRIVATE_PREVIEW" + }, + "id": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "instructions": { + "description": "Instructions for the custom LLM to follow", + "launch_stage": "PRIVATE_PREVIEW" + }, + "name": { + "description": "Name of the custom LLM", + "launch_stage": "PRIVATE_PREVIEW" + }, + "optimization_state": { + "description": "If optimization is kicked off, tracks the state of the custom LLM", + "ref": "agentbricks.State", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "agentbricks.Dataset": { + "fields": { + "table": { + "ref": "agentbricks.Table", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "agentbricks.DeleteCustomLlmRequest": {}, + "agentbricks.GetCustomLlmRequest": {}, + "agentbricks.StartCustomLlmOptimizationRunRequest": {}, + "agentbricks.State": { + "description": "States of Custom LLM optimization lifecycle.", + "enum": [ + "CREATED", + "RUNNING", + "COMPLETED", + "FAILED", + "PENDING", + "CANCELLED" + ], + "enum_launch_stages": { + "CANCELLED": "PRIVATE_PREVIEW", + "COMPLETED": "PRIVATE_PREVIEW", + "CREATED": "PRIVATE_PREVIEW", + "FAILED": "PRIVATE_PREVIEW", + "PENDING": "PRIVATE_PREVIEW", + "RUNNING": "PRIVATE_PREVIEW" + } + }, + "agentbricks.Table": { + "fields": { + "request_col": { + "description": "Name of the request column", + "launch_stage": "PRIVATE_PREVIEW" + }, + "response_col": { + "description": "Optional: Name of the response column if the data is labeled", + "launch_stage": "PRIVATE_PREVIEW" + }, + "table_path": { + "description": "Full UC table path in catalog.schema.table_name format", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "agentbricks.UpdateCustomLlmRequest": { + "fields": { + "custom_llm": { + "description": "The CustomLlm containing the fields which should be updated.", + "ref": "agentbricks.CustomLlm", + "launch_stage": "PRIVATE_PREVIEW" + }, + "update_mask": { + "description": "The list of the CustomLlm fields to update. These should correspond to the values (or lack thereof) present in `custom_llm`.\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "agentkit.AppendSessionItemsRequest": { + "description": "Request to append items to a session.", + "fields": { + "items": { + "description": "Items to append atomically in request order. Concurrent append requests are serialized into one\ncommitted order without exposing a numeric sequence in the public contract.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "agentkit.AppendSessionItemsResponse": { + "description": "Response containing appended items.", + "fields": { + "session_items": { + "description": "Persisted session items with service-assigned fields.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "agentkit.ClearSessionItemsRequest": { + "description": "Request to clear all items from a session." + }, + "agentkit.ClearSessionItemsResponse": { + "description": "Response from clearing items from a session." + }, + "agentkit.CreateManagedMemoryEntryRequest": { + "fields": { + "managed_memory_entry": { + "description": "The memory entry to create.", + "ref": "agentkit.ManagedMemoryEntry", + "launch_stage": "PUBLIC_BETA" + }, + "managed_memory_entry_id": { + "description": "Optional caller-selected memory entry ID. The service generates an ID when omitted.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "agentkit.CreateManagedMemoryStoreRequest": { + "fields": { + "managed_memory_store": { + "description": "The memory store to create.", + "ref": "agentkit.ManagedMemoryStore", + "launch_stage": "PUBLIC_BETA" + }, + "managed_memory_store_id": { + "description": "Caller-provided, workspace-unique memory store ID. It must be 3-56 characters, begin\nwith a lowercase letter, contain only lowercase letters, digits, and hyphens, and end with a\nletter or digit.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "agentkit.CreateSessionRequest": { + "fields": { + "session": { + "description": "The session to create. `actor_id` is required. A session with `parent_session_id` is a child and\nmust use its parent's `actor_id`. Independent forks are created only through `ForkSession`.", + "ref": "agentkit.Session", + "launch_stage": "PUBLIC_BETA" + }, + "session_id": { + "description": "Optional caller-selected session ID. The service generates a UUID when this field is omitted.\nThe ID must be unique; a collision returns `ALREADY_EXISTS`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "agentkit.CreateSessionStoreRequest": { + "fields": { + "session_store": { + "description": "The session store to create.", + "ref": "agentkit.SessionStore", + "launch_stage": "PUBLIC_BETA" + }, + "session_store_id": { + "description": "Caller-provided, workspace-unique session store ID. It must be 3-55 characters, begin with a\nlowercase letter, and contain only lowercase letters, digits, and hyphens.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "agentkit.DeleteManagedMemoryEntryRequest": {}, + "agentkit.DeleteManagedMemoryStoreRequest": {}, + "agentkit.DeleteSessionRequest": {}, + "agentkit.DeleteSessionStoreRequest": {}, + "agentkit.ExtractMemoriesRequest": { + "description": "Request to synchronously extract memories from a single session.", + "fields": { + "dry_run": { + "description": "When true, extract and return the entries without writing them to the memory store. Defaults\nto false, which persists the extracted entries and returns them.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "instructions": { + "description": "Instructions steering what is extracted from the session.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "memory_store": { + "description": "Memory store the extracted entries are written to, in the form\n`memory-stores/{managed_memory_store_id}`.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "agentkit.ExtractMemoriesResponse": { + "description": "Result of a single-session memory extraction.", + "fields": { + "entries": { + "description": "The memory entries written by this extraction.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Correlation identifier for this extraction, for logging and tracing. Not a fetchable resource.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "agentkit.ForkSessionRequest": { + "description": "Request to fork a session.", + "fields": { + "actor_id": { + "description": "Opaque caller-provided identifier for the application actor associated with the forked session.", + "launch_stage": "PUBLIC_BETA" + }, + "metadata": { + "description": "Optional metadata for the fork.", + "launch_stage": "PUBLIC_BETA" + }, + "session_id": { + "description": "Optional unique ID for the forked session. A collision returns `ALREADY_EXISTS`.", + "launch_stage": "PUBLIC_BETA" + }, + "source_session_id": { + "description": "ID of the session to copy.", + "launch_stage": "PUBLIC_BETA" + }, + "up_to_item_id": { + "description": "Optional last item ID to copy through, inclusively. When omitted, the fork atomically copies\nall items committed before the fork operation begins.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "agentkit.ForkSessionResponse": { + "description": "Response from forking a session.", + "fields": { + "session": { + "description": "The newly-created independent top-level session.", + "ref": "agentkit.Session", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "agentkit.GetManagedMemoryEntryRequest": { + "fields": { + "view": { + "description": "Controls whether the response includes memory content. Defaults to `FULL`.", + "ref": "agentkit.ManagedMemoryEntryView", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "agentkit.GetManagedMemoryStoreRequest": {}, + "agentkit.GetSessionRequest": {}, + "agentkit.GetSessionStoreRequest": {}, + "agentkit.ListManagedMemoryEntriesRequest": { + "fields": { + "actor_id": { + "description": "Customer-provided identifier for the actor whose entries are listed.", + "launch_stage": "PUBLIC_BETA" + }, + "page_size": { + "description": "Maximum number of entries to return. The service may return fewer entries than requested.\nDefaults to 10; must be between 1 and 100.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Opaque pagination token from a previous ListManagedMemoryEntries response.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "path_prefix": { + "description": "Optional path prefix used to restrict entries within the actor partition.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "session_id": { + "description": "Optional session identifier. When set, only entries with this exact `session_id` are\nreturned. Omitted-session (cross-session) entries are not included. Ignored when path is set.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "view": { + "description": "Controls whether each returned entry includes memory content. Defaults to `FULL`.", + "ref": "agentkit.ManagedMemoryEntryView", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "agentkit.ListManagedMemoryEntriesResponse": { + "description": "Response containing memory entries.", + "fields": { + "managed_memory_entries": { + "description": "Memory entries matching the request and selected response view.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "next_page_token": { + "description": "Opaque pagination token. This field is omitted when there are no more results.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "agentkit.ListManagedMemoryStoresRequest": { + "fields": { + "page_size": { + "description": "Maximum number of stores to return. The service may return fewer stores than requested.\nDefaults to 10; must be between 1 and 100.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Opaque pagination token from a previous ListManagedMemoryStores response.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "agentkit.ListManagedMemoryStoresResponse": { + "description": "Response containing memory stores in the caller's workspace.", + "fields": { + "managed_memory_stores": { + "description": "Memory stores in the caller's workspace.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "next_page_token": { + "description": "Opaque pagination token. This field is omitted when there are no more results.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "agentkit.ListSessionItemsRequest": { + "fields": { + "order_by": { + "description": "Sort order. Supported values are `create_time asc` and `create_time desc`. The default is\n`create_time desc`, which returns the most recently appended items first. Equal timestamps are\nresolved by committed append order in the requested direction.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_size": { + "description": "Maximum number of items to return. Defaults to 10; must be between 1 and 100.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Token returned by a previous list request.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "agentkit.ListSessionItemsResponse": { + "description": "Response containing a page of session items.", + "fields": { + "next_page_token": { + "description": "Token to retrieve the next page.", + "launch_stage": "PUBLIC_BETA" + }, + "session_items": { + "description": "Session items in the requested page.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "agentkit.ListSessionStoresRequest": { + "fields": { + "page_size": { + "description": "Maximum number of session stores to return. Defaults to 10; must be between 1 and 100.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Token returned by a previous list request.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "agentkit.ListSessionStoresResponse": { + "description": "Response containing a page of session stores.", + "fields": { + "next_page_token": { + "description": "Token to retrieve the next page.", + "launch_stage": "PUBLIC_BETA" + }, + "session_stores": { + "description": "Session stores in the requested page.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "agentkit.ListSessionsRequest": { + "fields": { + "filter": { + "description": "Filter expression. Supported fields include `actor_id` and `metadata`; for example,\n`actor_id = \"support-customer-123\"`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "order_by": { + "description": "Sort order. Defaults to `last_activity_time desc`. Page-token continuation is exactly-once when\nordering by `create_time` (immutable); ordering by `last_activity_time` is best-effort, because\nthat value changes as a session gains activity, so a session updated between page requests may\nbe repeated or skipped. To enumerate every session exactly once, order by `create_time`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_size": { + "description": "Maximum number of sessions to return. Defaults to 10; must be between 1 and 100.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Token returned by a previous list request.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "agentkit.ListSessionsResponse": { + "description": "Response containing a page of sessions.", + "fields": { + "next_page_token": { + "description": "Token to retrieve the next page.", + "launch_stage": "PUBLIC_BETA" + }, + "sessions": { + "description": "Sessions in the requested page.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "agentkit.ManagedMemoryEntry": { + "description": "A workspace-scoped entry in a memory store.", + "fields": { + "actor_id": { + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "content": { + "description": "Optional free-form memory content.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "create_time": { + "description": "Time when the entry was created.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "Human-readable description of the memory entry.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Resource name in the form\n`memory-stores/{managed_memory_store_id}/entries/{managed_memory_entry_id}`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "path": { + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "session_id": { + "description": "Optional identifier for the session associated with this memory entry. When omitted, the\nentry applies across the actor's sessions.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "source_type": { + "description": "Which writer created this entry. Caller sets this on Create; immutable after creation.", + "ref": "agentkit.ManagedMemoryEntrySourceType", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "update_time": { + "description": "Time when the entry was last updated.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "agentkit.ManagedMemoryEntrySearchResult": { + "description": "One relevance-ranked memory search result.", + "fields": { + "managed_memory_entry": { + "description": "Memory entry matching the query.", + "ref": "agentkit.ManagedMemoryEntry", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "score": { + "description": "Relevance score for the result. Higher scores are more relevant.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "agentkit.ManagedMemoryEntrySourceType": { + "description": "Identifies the source that created a memory entry.", + "enum": [ + "MANAGED_MEMORY_ENTRY_SOURCE_TYPE_AGENT", + "MANAGED_MEMORY_ENTRY_SOURCE_TYPE_DREAMER" + ], + "enum_launch_stages": { + "MANAGED_MEMORY_ENTRY_SOURCE_TYPE_AGENT": "PUBLIC_BETA", + "MANAGED_MEMORY_ENTRY_SOURCE_TYPE_DREAMER": "PUBLIC_BETA" + } + }, + "agentkit.ManagedMemoryEntryView": { + "description": "Controls how much memory entry data is returned.", + "enum": [ + "MANAGED_MEMORY_ENTRY_VIEW_BASIC", + "MANAGED_MEMORY_ENTRY_VIEW_FULL" + ], + "enum_launch_stages": { + "MANAGED_MEMORY_ENTRY_VIEW_BASIC": "PRIVATE_PREVIEW", + "MANAGED_MEMORY_ENTRY_VIEW_FULL": "PRIVATE_PREVIEW" + } + }, + "agentkit.ManagedMemoryStore": { + "description": "A workspace-scoped memory store backed by service-managed storage.", + "fields": { + "create_time": { + "description": "Time when the store was created.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "creator_user_id": { + "description": "Workspace-local user ID of the authenticated principal that created the store. This is\nimmutable server-set attribution and does not grant access; authorization is evaluated from\nthe authenticated request context.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "Human-readable description of the memory store.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "display_name": { + "description": "Deprecated compatibility alias for the caller-provided memory store ID. Canonical\nclients provide the ID through `CreateMemoryStoreRequest.managed_memory_store_id` and use\n`name` as the resource identifier.", + "deprecated": true, + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "name": { + "description": "Resource name in the form `memory-stores/{managed_memory_store_id}`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "owner_user_id": { + "description": "Deprecated alias for `creator_user_id`. This identifies the original creator, not a\ntransferable owner. Use `creator_user_id` instead.", + "deprecated": true, + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "storage_backend": { + "description": "Service-managed storage backing this memory store.", + "ref": "agentkit.StorageBackend", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "Time when the store was last updated.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "workspace_id": { + "description": "Workspace that owns the memory store.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "agentkit.PopSessionItemRequest": { + "description": "Request to pop an item from a session." + }, + "agentkit.PopSessionItemResponse": { + "description": "Response containing the popped item.", + "fields": { + "item": { + "description": "Removed item, if any.", + "ref": "agentkit.SessionItem", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "agentkit.SearchManagedMemoryEntriesRequest": { + "description": "Request to search memory entries by text query for one actor.\nSearch returns a relevance-ranked top-N result set and does not currently paginate.", + "fields": { + "actor_id": { + "description": "Customer-provided identifier for the actor whose entries are searched.", + "launch_stage": "PUBLIC_BETA" + }, + "limit": { + "description": "Deprecated alias for `page_size`. When both fields are set, their values must match.", + "deprecated": true, + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_size": { + "description": "Maximum number of relevance-ranked entries to return. Defaults to 10 and must be between 1 and\n100.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Reserved for pagination compatibility. The server currently ignores this field because Search\nreturns a ranked top-N result set.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "path_prefix": { + "description": "Optional absolute, case-sensitive path prefix used to restrict searched entries within the\nactor partition. The prefix must begin with `/` and must not contain empty, `.` or `..`\nsegments.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "query": { + "description": "Free-form search query.", + "launch_stage": "PUBLIC_BETA" + }, + "session_id": { + "description": "Optional session identifier. When set, only entries with this exact `session_id` are\nsearched. Omitted-session (cross-session) entries are not included.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "view": { + "description": "Controls whether each returned entry includes memory content. Search scores are always\nreturned. Defaults to `FULL`.", + "ref": "agentkit.ManagedMemoryEntryView", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "agentkit.SearchManagedMemoryEntriesResponse": { + "description": "Response containing memory entries ranked by relevance.", + "fields": { + "managed_memory_entries": { + "description": "Deprecated compatibility alias for clients migrating to `results`. This contains the same\nentries in the same order, but omits their relevance scores.", + "deprecated": true, + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "next_page_token": { + "description": "Opaque pagination token. Search currently returns an unpaginated ranked top-N result set, so\nthe server does not populate this field.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "results": { + "description": "Canonical matching entries and relevance scores, ordered most relevant first.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "agentkit.Session": { + "description": "A durable logical interaction stored within a Session Store.", + "fields": { + "actor_id": { + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "create_time": { + "description": "Time when the session was created.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_activity_time": { + "description": "Time when the session's item history was last mutated.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "metadata": { + "description": "Mutable caller-defined string labels.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Resource name in the form `session-stores/{session_store_id}/sessions/{session_id}`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "parent_session_id": { + "description": "Immediate parent session ID. Set only at creation for child sessions, immutable thereafter, and\nrestricted to the same store.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "root_session_id": { + "description": "Top-level session ID in the spawn tree. This equals `session_id` for a root or fork and is\ninherited transitively by child sessions.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "session_id": { + "description": "Unique session ID. The service generates a UUID unless the caller supplies\n`CreateSessionRequest.session_id`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "Time when session resource fields last changed.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "agentkit.SessionItem": { + "description": "A transcript entry in a session's history.", + "fields": { + "create_time": { + "description": "Server-assigned time when the append commits. Values are nondecreasing within a session. Item\nlisting orders by this timestamp; equal timestamps are resolved by committed append order.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "data": { + "description": "Complete SDK-native, JSON-compatible item. The service stores and returns this value without\ninterpreting provider-specific fields such as `type`, `role`, or `content`.", + "launch_stage": "PUBLIC_BETA" + }, + "item_id": { + "description": "Stable service-generated item ID.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "agentkit.SessionStore": { + "description": "A workspace-scoped session store.", + "fields": { + "create_time": { + "description": "Time when the store was created.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "creator_user_id": { + "description": "Workspace-local user ID of the authenticated principal that created the store. This is\nimmutable server-set attribution and does not grant access; authorization is evaluated from\nthe authenticated request context.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "Human-readable description of the session store.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "metadata": { + "description": "Mutable caller-defined string labels.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Resource name in the form `session-stores/{session_store_id}`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "Time when the store was last updated.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "agentkit.StorageBackend": { + "description": "Service-managed storage backing a memory store.", + "fields": { + "backend_id": { + "description": "Backend-specific identifier. For Lakebase, this is the project ID.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "backend_type": { + "description": "Type of the storage backend.", + "ref": "agentkit.StorageBackendType", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "agentkit.StorageBackendType": { + "description": "Type of service-managed storage backing a memory store.", + "enum": [ + "STORAGE_BACKEND_TYPE_LAKEBASE" + ], + "enum_launch_stages": { + "STORAGE_BACKEND_TYPE_LAKEBASE": "PUBLIC_BETA" + } + }, + "agentkit.UpdateManagedMemoryEntryRequest": { + "fields": { + "managed_memory_entry": { + "description": "The memory entry to update.", + "ref": "agentkit.ManagedMemoryEntry", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Fields to update. Only `content` and `description` may be updated.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "agentkit.UpdateManagedMemoryStoreRequest": { + "fields": { + "managed_memory_store": { + "description": "The memory store to update. `name` is taken from the URL.", + "ref": "agentkit.ManagedMemoryStore", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Only `description` and `metadata` may be updated. Selecting `metadata` replaces the entire map.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "agentkit.UpdateSessionRequest": { + "fields": { + "session": { + "description": "Session to update.", + "ref": "agentkit.Session", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Fields to update. Only `metadata` is mutable; any other path returns\n`INVALID_PARAMETER_VALUE`.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "agentkit.UpdateSessionStoreRequest": { + "fields": { + "session_store": { + "description": "Session store to update.", + "ref": "agentkit.SessionStore", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Fields to update. Only `description` and `metadata` are mutable; any other\npath returns `INVALID_PARAMETER_VALUE`.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "aifunctions.AiClassifyOptions": { + "description": "ai_classify", + "fields": { + "enable_confidence_scores": { + "description": "When true, includes a per-label confidence score in the response.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "enable_rationales": { + "description": "When true, includes a rationale explaining each classification in the response.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "instructions": { + "description": "Natural-language guidance that steers how the text is classified (up to 20,000 characters).", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "multilabel": { + "description": "When true, allows more than one label to be returned per input.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "version": { + "description": "The function version to invoke. Defaults to the latest version. Supported versions: [\"2.1\"].", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aifunctions.AiClassifyRequest": { + "fields": { + "content": { + "description": "The content to classify. It accepts a plain string or the response object of [ai_parse_document](:method:AiFunctions/AiParseDocument).", + "launch_stage": "GA" + }, + "labels": { + "description": "The label set to classify as. Either a JSON array of label strings (e.g. [\"spam\", \"not_spam\"]), or a JSON object mapping each label to a description (e.g. {\"spam\": \"unsolicited bulk message\", \"not_spam\": \"a legitimate message\"}). Accepts 2 to 500 labels, each 1 to 100 characters.", + "launch_stage": "GA" + }, + "options": { + "description": "Function options. Omitted fields fall back to their documented defaults.", + "ref": "aifunctions.AiClassifyOptions", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aifunctions.AiClassifyResponse": { + "fields": { + "metadata": { + "description": "Additional metadata returned by AI Classify.", + "ref": "aifunctions.AiClassifyResponseMetadata", + "launch_stage": "GA" + }, + "response": { + "description": "The function result as a JSON value. An array of per-label objects: one element in single-label mode (the default), or multiple elements when `multilabel` is true. When `enable_confidence_scores` and `enable_rationales` are true, `confidence_score` and `rationale` are included in each response value, respectively.", + "launch_stage": "GA" + } + } + }, + "aifunctions.AiClassifyResponseMetadata": { + "fields": { + "version": { + "description": "The resolved function version.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aifunctions.AiDecideOptions": { + "description": "ai_decide", + "fields": { + "version": { + "description": "The function API version to invoke. Defaults to \"1.0\". Supported versions: [\"1.0\"].", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aifunctions.AiDecideRequest": { + "fields": { + "options": { + "description": "Function options. Omitted fields fall back to their documented defaults.", + "ref": "aifunctions.AiDecideOptions", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "questions": { + "description": "A JSON object mapping question IDs to their definitions. Each ID must contain non-whitespace text; its answer is returned with the same ID in `response.answers`.\n\nEach definition is an object with the required fields `type` and `instructions`. The `criteria` field is optional for the type `noul` but is required for the types `choice` and `score`.\n\nThe `instructions` field describes the judgment to make and can be a string, object, or array. Use an object or array to include supporting context alongside the instructions.\n\nThe `type` can be one of:\n\n- `choice`: Selects one option from a defined set. Requires `criteria` to be an object mapping 1 to 255 nonempty option names to descriptions. The criteria description can be a string, object, array, or null when the name needs no additional detail. For example:\n\n```json\n{\n\"team\": {\n\"type\": \"choice\",\n\"instructions\": \"Which team should handle this ticket?\",\n\"criteria\": {\n\"billing\": \"Payments, charges, and refunds\",\n\"technical_support\": null\n}\n}\n}\n```\n\n- `noul`: Estimates the probability that the answer to a true-or-false question is true. `criteria` can take the fields `true` or `false`, or both, with descriptions that are strings, objects, or arrays. Omit `criteria` to use the question alone. The instructions or at least one criteria description must contain non-whitespace text, a nonempty object, or a nonempty array. For example, both of the following are valid:\n\n```json\n{\n\"escalate\": {\n\"type\": \"noul\",\n\"instructions\": \"Does this ticket need escalation?\",\n\"criteria\": {\n\"true\": \"Suspected fraud or an exception to standard policy\",\n\"false\": \"A routine issue frontline support can resolve\"\n}\n}\n}\n```\n\nor\n\n```json\n{\n\"escalate\": {\n\"type\": \"noul\",\n\"instructions\": \"Does this ticket need escalation?\"\n}\n}\n```\n\n- `score`: Rates the state on an ordered scale. Requires `criteria` to be an array of 2 to 10 level descriptions, ordered from low to high. Descriptions must contain non-whitespace text, a nonempty object, or a nonempty array. Array positions define levels starting at 0. For example:\n\n```json\n{\n\"urgency\": {\n\"type\": \"score\",\n\"instructions\": \"How urgent is this ticket?\",\n\"criteria\": [\n\"Routine: can wait a few days\",\n\"Time-sensitive: needs attention today\",\n\"Critical: needs immediate action\"\n]\n}\n}\n```", + "launch_stage": "PUBLIC_BETA" + }, + "state": { + "description": "A string, JSON object, or array containing the content, related context, and examples needed to answer the provided questions. For example, provide a support message, a conversation, or records describing the current state of an application. All questions receive this same state.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "aifunctions.AiDecideResponse": { + "fields": { + "metadata": { + "description": "Metadata identifying the function API version used for this request.", + "ref": "aifunctions.AiDecideResponseMetadata", + "launch_stage": "PUBLIC_BETA" + }, + "response": { + "description": "A JSON object containing an `answers` map with one answer for each question, keyed by the same IDs as `questions`.\n\nEach answer has a `type` matching its question and the following fields:\n\n- `choice`: choice is the highest-probability option from `criteria`. `probabilities` maps every option name to its probability. `confidence` is a number from 0 to 1 indicating how well the state supports the assessment. The `probabilities` values sum to 1. For example:\n\n```json\n{\n\"answers\": {\n\"team\": {\n\"type\": \"choice\",\n\"choice\": \"billing\",\n\"probabilities\": {\n\"billing\": 0.85,\n\"technical_support\": 0.15\n},\n\"confidence\": 0.9\n}\n}\n}\n```\n\n- `noul`: `probability` is a number from 0 to 1 estimating the probability that the answer is true. For example:\n\n```json\n{\n\"answers\": {\n\"escalate\": {\n\"type\": \"noul\",\n\"probability\": 0.8\n}\n}\n}\n```\n\n- `score`: score is the probability-weighted mean of the zero-based level indices. It can fall between levels, from 0 to the number of levels minus 1. `probabilities` maps each level index to its probability, and `legend` maps each index to its original description. Both maps use string keys such as \"0\", \"1\", and \"2\". `confidence` is a number from 0 to 1 indicating how well the state supports the assessment. The `probabilities` values sum to 1. For example:\n\n```json\n{\n\"answers\": {\n\"urgency\": {\n\"type\": \"score\",\n\"score\": 1.6,\n\"probabilities\": {\n\"0\": 0.1,\n\"1\": 0.2,\n\"2\": 0.7\n},\n\"legend\": {\n\"0\": \"Routine: can wait a few days\",\n\"1\": \"Time-sensitive: needs attention today\",\n\"2\": \"Critical: needs immediate action\"\n},\n\"confidence\": 0.85\n}\n}\n}\n```", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "aifunctions.AiDecideResponseMetadata": { + "fields": { + "version": { + "description": "The function API version used to evaluate the request.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aifunctions.AiExtractBbox": { + "description": "A bounding box on a source page; used by bbox-input citations.", + "fields": { + "coord": { + "description": "Pixel coordinates on the page image as [x0, y0, x1, y1].", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_id": { + "description": "0-based page index the box is on.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aifunctions.AiExtractCitation": { + "description": "A citation locating an extracted value in the source. start/stop are set for span (STRING input) citations, bbox for bbox (parsed-document input) citations.", + "fields": { + "bbox": { + "description": "Bounding boxes locating the citation on the source pages; set for bbox citations.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "id": { + "description": "Integer matching a citation_ids entry on an extracted field.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "start": { + "description": "Inclusive 0-based character offset into the input string; set for span citations.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "stop": { + "description": "Exclusive 0-based character offset into the input string; set for span citations.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aifunctions.AiExtractOptions": { + "description": "ai_extract", + "fields": { + "enable_citations": { + "description": "When true, includes citation metadata locating each extracted value in the source. Depending on the type of input, citations can be one of two types:\n\nFor raw text (STRING) inputs, a citation is a span of text in the original input. Each object in `metadata.citations` has an `id` (integer matching a `citation_ids` entry on a field), a `start` (inclusive 0-based character offset into the input string), and a `stop` (exclusive 0-based character offset into the input string).\n\nFor PDF documents and images (when using ai_extract downstream of ai_parse_document), a citation is a bounding box in the original input. Each object in `metadata.citations` has an `id` (integer matching a `citation_ids` entry on a field) and a `bbox` (array of {coord, page_id} objects, identical in shape to element.bbox in ai_parse_document output; coord is pixel coordinates on the page image as [x0, y0, x1, y1], and page_id is a 0-based page index).", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "enable_confidence_scores": { + "description": "When true, includes a per-field confidence score in the response.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "instructions": { + "description": "Natural-language guidance that steers how data is extracted (up to 20,000 characters).", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "mode": { + "description": "Extraction mode. Supported modes: \"precision\" — more powerful extraction for complex schemas, long documents, and reasoning-heavy extractions. Defaults to none (standard extraction).", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "version": { + "description": "The function version to invoke. Defaults to the latest version. Supported versions: [\"2.1\"].", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aifunctions.AiExtractRequest": { + "fields": { + "content": { + "description": "The text to extract from. It accepts a plain string or the response object of [ai_parse_document](:method:AiFunctions/AiParseDocument).", + "launch_stage": "GA" + }, + "options": { + "description": "Function options. Omitted fields fall back to their documented defaults.", + "ref": "aifunctions.AiExtractOptions", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "schema": { + "description": "The extraction schema defining the fields to extract. Either a JSON array of field names, assumed to be strings (e.g. [\"company\", \"valuation\"]), or a JSON object mapping each field to its type/description/nullability (e.g. {\"company\": {\"type\": \"string\", \"description\": \"the company name\"}}). Accepts up to 256 fields, 12 levels of nesting, and 500 enum values. Supported field types are string, integer, number, boolean, and enum.", + "launch_stage": "GA" + } + } + }, + "aifunctions.AiExtractResponse": { + "fields": { + "metadata": { + "description": "Additional metadata returned by AI Extract.", + "ref": "aifunctions.AiExtractResponseMetadata", + "launch_stage": "GA" + }, + "response": { + "description": "The function result as a JSON value. When `enable_confidence_scores` and `enable_citations` are true, `confidence` and `citation_ids` are included in each response field, respectively.", + "launch_stage": "GA" + } + } + }, + "aifunctions.AiExtractResponseMetadata": { + "fields": { + "chunk_type": { + "description": "How the source was chunked for citation offsets (span for text input, bbox for parsed-document input); present when citations are enabled.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "citations": { + "description": "Citation objects locating each result in the source; present when citations are enabled.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "mode": { + "description": "The resolved extraction mode; present when a non-default mode was used.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "version": { + "description": "The resolved function version.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aifunctions.AiParseDocumentFileMetadata": { + "description": "Metadata about the source file; present only for file-path input.", + "fields": { + "file_modification_time": { + "description": "Last-modified timestamp of the source file, as an HTTP date string.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "file_name": { + "description": "Base name of the source file.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "file_path": { + "description": "Unity Catalog volume path of the source file.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "file_size": { + "description": "Size of the source file in bytes.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aifunctions.AiParseDocumentOptions": { + "description": "ai_parse_document", + "fields": { + "description_element_types": { + "description": "Element types for which an AI-generated description is produced. Use \"*\" (default) to generate descriptions for all supported element types, \"figure\" to generate them for figures only, or \"\" (empty string) to generate none. Only figure descriptions are supported for version \"2.0\", so \"*\" and \"figure\" produce the same behavior.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "image_output_path": { + "description": "Unity Catalog volume path where rendered page and element images are written.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_range": { + "description": "Pages to parse (1-indexed), as a comma-separated list of page numbers or ranges (e.g. \"1,3,5-10\").", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "version": { + "description": "The ai_parse_document output schema version. Supported value: \"2.0\".", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aifunctions.AiParseDocumentPageError": { + "description": "A single page that failed to parse while the overall request succeeded.", + "fields": { + "error_message": { + "description": "Message describing why the page failed.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_id": { + "description": "0-based index of the page that failed.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aifunctions.AiParseDocumentRequest": { + "fields": { + "content": { + "description": "The document to parse. The REST API accepts a Unity Catalog volume path to the source file or a base64 data URL containing the file bytes (for example, data:application/pdf;base64,\u003cencoded-file-bytes\u003e or data:image/jpeg;base64,\u003cencoded-file-bytes\u003e). Supported formats: PDF, DOCX, DOC, PPTX, PPT, JPG, JPEG, PNG, TIFF. Accepts up to 100 pages and 100 MB per document.", + "launch_stage": "GA" + }, + "options": { + "description": "Function options. Omitted fields fall back to their documented defaults.", + "ref": "aifunctions.AiParseDocumentOptions", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aifunctions.AiParseDocumentResponse": { + "fields": { + "document": { + "description": "The parsed document as a JSON value, containing the extracted pages and elements.", + "launch_stage": "GA" + }, + "error_status": { + "description": "Per-page partial-failure details; present when the request succeeds (2xx) but individual pages fail.", + "launch_stage": "GA" + }, + "metadata": { + "description": "Additional metadata returned by AI Parse Document.", + "ref": "aifunctions.AiParseDocumentResponseMetadata", + "launch_stage": "GA" + } + } + }, + "aifunctions.AiParseDocumentResponseMetadata": { + "fields": { + "file_metadata": { + "description": "Describes the source file; present only for file-path input.", + "ref": "aifunctions.AiParseDocumentFileMetadata", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "id": { + "description": "Unique identifier for the parse request.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "version": { + "description": "The resolved function version.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aisearch.ColumnInfo": { + "description": "Column information (name and data type) for an index column. Surfaced on `Index.column_info`.", + "fields": { + "name": { + "description": "Name of the column.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "type_text": { + "description": "Data type of the column (e.g., \"string\", \"int\", \"array\u003cfloat\u003e\").", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "aisearch.CreateEndpointRequest": { + "fields": { + "endpoint": { + "description": "The Endpoint resource to create. Fields other than `endpoint.name` carry the desired\nconfiguration; `endpoint.name` is server-assigned from `parent` and `endpoint_id`.", + "ref": "aisearch.Endpoint", + "launch_stage": "PUBLIC_PREVIEW" + }, + "endpoint_id": { + "description": "The user-supplied short name for the Endpoint, per AIP-133. The server composes the\nfull `Endpoint.name` as `{parent}/endpoints/{endpoint_id}`. AIP-133 does not list\n`endpoint_id` as a fields-may-be-required entry, so we annotate it OPTIONAL on the\nwire; the server still rejects empty values with INVALID_PARAMETER_VALUE.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aisearch.CreateIndexRequest": { + "fields": { + "index": { + "description": "The Index resource to create. Fields other than `index.name` carry the desired\nconfiguration; `index.name` is server-assigned from `parent` and `index_id`.", + "ref": "aisearch.Index", + "launch_stage": "PUBLIC_PREVIEW" + }, + "index_id": { + "description": "The user-supplied Unity Catalog table name for the Index, per AIP-133. The server\ncomposes the full `Index.name` as `{parent}/indexes/{index_id}`. AIP-133 does not\nlist `index_id` as a fields-may-be-required entry, so we annotate it OPTIONAL on the\nwire; the server still rejects empty values with INVALID_PARAMETER_VALUE.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aisearch.CustomTag": { + "description": "User-defined key/value tag attached to an AI Search endpoint for cost attribution and access control.", + "fields": { + "key": { + "description": "Key field for an AI Search endpoint tag.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "value": { + "description": "[Optional] Value field for an AI Search endpoint tag.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aisearch.DataModificationResult": { + "description": "Per-row outcome of a data-plane upsert or delete operation.", + "fields": { + "failed_primary_keys": { + "description": "Primary keys of rows that failed to process.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "success_row_count": { + "description": "Count of rows processed successfully.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "aisearch.DataModificationStatus": { + "description": "Overall outcome of a data-plane upsert or delete. Mirrors the legacy\n`databricks.brickindexscheduler.UpsertDeleteDataStatus` value-for-value.", + "enum": [ + "SUCCESS", + "PARTIAL_SUCCESS", + "FAILURE" + ], + "enum_launch_stages": { + "FAILURE": "PUBLIC_PREVIEW", + "PARTIAL_SUCCESS": "PUBLIC_PREVIEW", + "SUCCESS": "PUBLIC_PREVIEW" + } + }, + "aisearch.DeleteEndpointRequest": {}, + "aisearch.DeleteIndexRequest": {}, + "aisearch.DeltaSyncIndexSpec": { + "description": "Specification for a Delta Sync index — the index is kept in sync with a source Delta table.", + "fields": { + "columns_to_sync": { + "description": "[Optional] Select the columns to sync with the index. If left blank, all columns\nfrom the source table are synced. The primary key column and embedding source or\nvector column are always synced.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "embedding_source_columns": { + "description": "The columns that contain the embedding source.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "embedding_vector_columns": { + "description": "The columns that contain the embedding vectors.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "embedding_writeback_table": { + "description": "[Optional] Name of the Delta table to sync the index contents and computed embeddings to.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "pipeline_id": { + "description": "The ID of the pipeline that is used to sync the index.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "pipeline_type": { + "description": "Pipeline execution mode. Required on create — the backend rejects an unset value.\nStorage Optimized endpoints accept only `TRIGGERED`; Standard endpoints accept both.\nNo explicit `stage` — a REQUIRED field staged below its service would be dropped from\ncombined specs while remaining in `required`, tripping the OpenAPI required-vs-properties\nconsistency check. The field inherits the service's launch stage.", + "ref": "aisearch.PipelineType", + "launch_stage": "PUBLIC_PREVIEW" + }, + "source_table": { + "description": "The full name of the source Delta table.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aisearch.DirectAccessIndexSpec": { + "description": "Specification for a Direct Access index — the customer manages vectors and metadata directly.", + "fields": { + "embedding_source_columns": { + "description": "The columns that contain the embedding source.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "embedding_vector_columns": { + "description": "The columns that contain the embedding vectors.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "schema_json": { + "description": "The schema of the index in JSON format. Supported types are `integer`, `long`,\n`float`, `double`, `boolean`, `string`, `date`, `timestamp`. Supported types for\nvector columns: `array\u003cfloat\u003e`, `array\u003cdouble\u003e`.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aisearch.EmbeddingSourceColumn": { + "description": "Name of an embedding source column and its associated embedding model endpoint.", + "fields": { + "embedding_model_endpoint": { + "description": "Name of the embedding model endpoint, used by default for both ingestion and querying.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "model_endpoint_name_for_query": { + "description": "Name of the embedding model endpoint which, if specified, is used for querying (not ingestion).", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "Name of the source column.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "aisearch.EmbeddingVectorColumn": { + "description": "Name and dimension of an embedding vector column.", + "fields": { + "embedding_dimension": { + "description": "Dimension of the embedding vector.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "Name of the column.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "aisearch.Endpoint": { + "description": "An AI Search endpoint — compute infrastructure that hosts AI Search indexes\nand serves queries against them. Customers create, query, and delete endpoints;\nthe system manages provisioning, scaling, and health status.", + "fields": { + "budget_policy_id": { + "description": "The user-selected budget policy id for the endpoint.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "create_time": { + "description": "Time the endpoint was created.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "creator": { + "description": "Creator of the endpoint", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "custom_tags": { + "description": "The custom tags assigned to the endpoint", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "effective_budget_policy_id": { + "description": "The budget policy id applied to the endpoint", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "endpoint_status": { + "description": "Current status of the endpoint", + "ref": "aisearch.EndpointStatus", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "endpoint_type": { + "description": "Type of endpoint. Required on create and immutable thereafter.", + "ref": "aisearch.EndpointType", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "id": { + "description": "Unique identifier of the endpoint", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "index_count": { + "description": "Number of indexes on the endpoint", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_updated_user": { + "description": "User who last updated the endpoint", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Name of the AI Search endpoint. Server-assigned full resource path\n(`workspaces/{workspace}/endpoints/{endpoint}`) on output. On create, the\nuser-supplied short name is conveyed via `CreateEndpointRequest.endpoint_id`;\nthe server composes the full `name` and returns it on the response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "replica_count": { + "description": "The client-supplied desired number of replicas for the endpoint, applied at\ncreate/update time. Mutually exclusive with `target_qps`.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "scaling_info": { + "description": "Scaling information for the endpoint", + "ref": "aisearch.EndpointScalingInfo", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "target_qps": { + "description": "Target QPS for the endpoint. Mutually exclusive with `replica_count`. Best-effort;\nthe system does not guarantee this QPS will be achieved.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "throughput_info": { + "description": "Throughput information for the endpoint", + "ref": "aisearch.EndpointThroughputInfo", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "Time the endpoint was last updated.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "usage_policy_id": { + "description": "The usage policy id applied to the endpoint.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aisearch.EndpointScalingInfo": { + "description": "Scaling information for a Standard endpoint: the current scaling state, the requested QPS\ntarget, and the progress of an in-progress scaling change.", + "fields": { + "requested_target_qps": { + "description": "The requested QPS target for the endpoint. Best-effort; the system does not\nguarantee this QPS will be achieved.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "state": { + "description": "The current state of the scaling change request.", + "ref": "aisearch.ScalingChangeState", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "aisearch.EndpointStatus": { + "description": "Lifecycle and health state of an AI Search endpoint, along with any human-readable detail\nabout that state.", + "fields": { + "message": { + "description": "Human-readable detail about the endpoint's current state or the reason for a state transition.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "state": { + "description": "Current lifecycle state of the endpoint. See `State` for the meaning of each value.", + "ref": "aisearch.EndpointStatusState", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "aisearch.EndpointStatusState": { + "description": "Lifecycle state of an AI Search endpoint, used by both Standard and Storage Optimized SKUs.", + "enum": [ + "PROVISIONING", + "ONLINE", + "OFFLINE", + "RED_STATE", + "YELLOW_STATE", + "DELETED" + ], + "enum_launch_stages": { + "DELETED": "PUBLIC_PREVIEW", + "OFFLINE": "PUBLIC_PREVIEW", + "ONLINE": "PUBLIC_PREVIEW", + "PROVISIONING": "PUBLIC_PREVIEW", + "RED_STATE": "PUBLIC_PREVIEW", + "YELLOW_STATE": "PUBLIC_PREVIEW" + } + }, + "aisearch.EndpointThroughputInfo": { + "description": "Throughput information for an AI Search endpoint, including requested and current concurrency settings.", + "fields": { + "change_request_message": { + "description": "Additional information about the throughput change request", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "change_request_state": { + "description": "The state of the most recent throughput change request", + "ref": "aisearch.ThroughputChangeRequestState", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "current_concurrency": { + "description": "The current concurrency (total CPU) allocated to the endpoint", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "current_concurrency_utilization_percentage": { + "description": "The current utilization of concurrency as a percentage (0-100)", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "current_num_replicas": { + "description": "The current number of replicas allocated to the endpoint", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "maximum_concurrency_allowed": { + "description": "The maximum concurrency allowed for this endpoint", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "minimal_concurrency_allowed": { + "description": "The minimum concurrency allowed for this endpoint", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "requested_concurrency": { + "description": "The requested concurrency (total CPU) for the endpoint", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "requested_num_replicas": { + "description": "The requested number of replicas for the endpoint", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aisearch.EndpointType": { + "description": "Type of endpoint.", + "enum": [ + "STORAGE_OPTIMIZED", + "STANDARD" + ], + "enum_launch_stages": { + "STANDARD": "PUBLIC_PREVIEW", + "STORAGE_OPTIMIZED": "PUBLIC_PREVIEW" + } + }, + "aisearch.FacetResultData": { + "description": "Facet aggregation rows returned by a query.", + "fields": { + "facet_array": { + "description": "Facet rows; each row is `[facet_column_name, value_or_range, count]`.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "facet_row_count": { + "description": "Number of facet rows returned.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "aisearch.GetEndpointRequest": {}, + "aisearch.GetIndexRequest": {}, + "aisearch.Index": { + "description": "An AI Search index — a searchable collection of vectors and metadata hosted on an\nAI Search endpoint. Indexes are children of endpoints; customers create, get, list,\nand delete them. The `{index}` segment of the resource name is the index's Unity\nCatalog table name.", + "fields": { + "creator": { + "description": "Creator of the index.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "delta_sync_index_spec": { + "description": "Specification for a Delta Sync index. Set when `index_type` is `DELTA_SYNC`.", + "ref": "aisearch.DeltaSyncIndexSpec", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "direct_access_index_spec": { + "description": "Specification for a Direct Access index. Set when `index_type` is `DIRECT_ACCESS`.", + "ref": "aisearch.DirectAccessIndexSpec", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "endpoint": { + "description": "Name of the endpoint associated with the index. Ignored on create — the endpoint is\ntaken from `CreateIndexRequest.parent`; populated only on output.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "index_subtype": { + "description": "The subtype of the index. Set on create and immutable thereafter.", + "ref": "aisearch.IndexSubtype", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "index_type": { + "description": "Type of index. Required on create and immutable thereafter.", + "ref": "aisearch.IndexType", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "name": { + "description": "Name of the AI Search index. Server-assigned full resource path\n(`workspaces/{workspace}/endpoints/{endpoint}/indexes/{index}`) on output, where\n`{index}` is the index's Unity Catalog table name. On create, the user-supplied UC\ntable name is conveyed via `CreateIndexRequest.index_id`; the server composes the\nfull `name` and returns it on the response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "primary_key": { + "description": "Primary key of the index. Set on create and immutable thereafter.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "status": { + "description": "Current status of the index.", + "ref": "aisearch.IndexStatus", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "aisearch.IndexStatus": { + "description": "Lifecycle and health state of an AI Search index, along with human-readable\ndetail about that state and basic indexing progress.", + "fields": { + "index_url": { + "description": "Index API URL used to perform operations on the index.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "indexed_row_count": { + "description": "Number of rows indexed.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "message": { + "description": "Human-readable detail about the index's current state.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "ready": { + "description": "Whether the index is ready for search.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "aisearch.IndexSubtype": { + "description": "The subtype of the AI Search index, determining the indexing and retrieval strategy.\n- `VECTOR`: Not a supported create value — do not select it. Use `HYBRID` (vector + hybrid\nsearch) or `FULL_TEXT` (full-text only). It is the proto2 default (`= 0`) solely to mirror\nthe legacy `index_v2.proto` enum value-for-value; it is not an offered index subtype.\n- `FULL_TEXT`: An index that uses full-text search without vector embeddings.\n- `HYBRID`: An index that uses vector embeddings for similarity search and hybrid search.", + "enum": [ + "VECTOR", + "FULL_TEXT", + "HYBRID" + ], + "enum_launch_stages": { + "FULL_TEXT": "PUBLIC_PREVIEW", + "HYBRID": "PUBLIC_PREVIEW", + "VECTOR": "PUBLIC_PREVIEW" + }, + "enum_descriptions": { + "FULL_TEXT": "An index that uses full-text search without vector embeddings.", + "HYBRID": "An index that uses vector embeddings for similarity search and hybrid search.", + "VECTOR": "Not a supported create value — do not select it. Use `HYBRID` (vector + hybrid" + } + }, + "aisearch.IndexType": { + "description": "There are 2 types of AI Search indexes:\n- `DELTA_SYNC`: An index that automatically syncs with a source Delta Table,\nautomatically and incrementally updating the index as the underlying data in\nthe Delta Table changes.\n- `DIRECT_ACCESS`: An index that supports direct read and write of vectors and\nmetadata through our REST and SDK APIs. With this model, the user manages\nindex updates.", + "enum": [ + "DELTA_SYNC", + "DIRECT_ACCESS" + ], + "enum_launch_stages": { + "DELTA_SYNC": "PUBLIC_PREVIEW", + "DIRECT_ACCESS": "PUBLIC_PREVIEW" + }, + "enum_descriptions": { + "DELTA_SYNC": "An index that automatically syncs with a source Delta Table,", + "DIRECT_ACCESS": "An index that supports direct read and write of vectors and" + } + }, + "aisearch.ListEndpointsRequest": { + "fields": { + "page_size": { + "description": "Best-effort upper bound on the number of results to return. Honored as an upper\nbound by the shim: `page_size` only narrows the legacy backend's response, never\nwidens it, so the practical cap is `min(page_size, legacy_fixed_page_size)`.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Page token from a previous response. If not provided, returns the first page.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aisearch.ListEndpointsResponse": { + "description": "Response for ListEndpoints carrying the page of endpoints and an optional continuation token.", + "fields": { + "endpoints": { + "description": "The endpoints in the workspace.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "next_page_token": { + "description": "A token that can be used to get the next page of results. Empty when there are no more results.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "aisearch.ListIndexesRequest": { + "fields": { + "page_size": { + "description": "Best-effort upper bound on the number of results to return. Honored as an upper\nbound by the shim: `page_size` only narrows the legacy backend's response, never\nwidens it, so the practical cap is `min(page_size, legacy_fixed_page_size)`.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Page token from a previous response. If not provided, returns the first page.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aisearch.ListIndexesResponse": { + "description": "Response for ListIndexes carrying the page of indexes and an optional continuation token.", + "fields": { + "indexes": { + "description": "The indexes on the endpoint. The field is named `indexes` (not the irregular plural\n`indices`) to satisfy core::0132, which derives the response field name from the\nListIndexes method. core::0158::response-plural-first-field independently computes the\nresource plural as `indices` and is satisfied via a scoped field exception below.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "next_page_token": { + "description": "A token that can be used to get the next page of results. Empty when there are no more results.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "aisearch.PipelineType": { + "description": "Pipeline execution mode for a Delta Sync index. Required on create for Delta Sync\nindexes; the legacy backend rejects an unset value with INVALID_PARAMETER_VALUE.\n- `TRIGGERED`: the pipeline stops after refreshing the source table once, using the\ndata available when the update started.\n- `CONTINUOUS`: the pipeline processes new data as it arrives in the source table to\nkeep the index fresh.", + "enum": [ + "TRIGGERED", + "CONTINUOUS" + ], + "enum_launch_stages": { + "CONTINUOUS": "PUBLIC_PREVIEW", + "TRIGGERED": "PUBLIC_PREVIEW" + }, + "enum_descriptions": { + "CONTINUOUS": "the pipeline processes new data as it arrives in the source table to", + "TRIGGERED": "the pipeline stops after refreshing the source table once, using the" + } + }, + "aisearch.QueryIndexRequest": { + "description": "Request to query (search) an AI Search index. The legacy `num_results` count is exposed as\n`max_results`; v1 returns up to `max_results` rows in a single response (no cursor pagination\n— see the note on `max_results` below).", + "fields": { + "columns": { + "description": "Column names to include in each result row.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "columns_to_rerank": { + "description": "Columns whose values are sent to the reranker.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "facets": { + "description": "Facets to compute over the matched results (e.g. `\"category TOP 5\"`).", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "filters_json": { + "description": "JSON string describing query filters (e.g. `{\"id \u003e\": 5}`).", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "max_results": { + "description": "Maximum number of results to return (the legacy `num_results`). Defaults to 10.\nPrefer `page_size`; when both are set, `page_size` takes precedence.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "query_columns": { + "description": "Text columns to search for `query_text`. When empty, all text columns are searched.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "query_text": { + "description": "Query text. Required for Delta Sync indexes that compute embeddings from a model endpoint.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "query_type": { + "description": "Query type: `ANN`, `HYBRID`, or `FULL_TEXT`. Defaults to `ANN`.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "query_vector": { + "description": "Query vector. Required for Direct Access indexes and Delta Sync indexes with self-managed\nvectors.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "reranker": { + "description": "If set, results are reranked before being returned.", + "ref": "aisearch.RerankerConfig", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "score_threshold": { + "description": "Score threshold for the approximate nearest-neighbor search. Defaults to 0.0.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "sort_columns": { + "description": "Sort clauses, e.g. `[\"rating DESC\", \"price ASC\"]`. Overrides relevance ordering.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aisearch.QueryIndexResponse": { + "description": "Response for QueryIndex carrying the matched rows and their column metadata.", + "fields": { + "facet_result": { + "description": "Facet aggregation rows, when facets were requested.", + "ref": "aisearch.FacetResultData", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "manifest": { + "description": "Metadata describing the result columns.", + "ref": "aisearch.ResultManifest", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "result": { + "description": "The matched result rows.", + "ref": "aisearch.ResultData", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "aisearch.RemoveDataRequest": { + "description": "Request to remove rows by primary key from a Direct Access AI Search index.\nNamed RemoveData (not DeleteData) so the linter does not classify it as a standard\nAIP-135 Delete method — it deletes rows within an index, not the index resource.", + "fields": { + "primary_keys": { + "description": "Primary keys of the rows to remove.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "aisearch.RemoveDataResponse": { + "description": "Response for RemoveData.", + "fields": { + "result": { + "description": "Per-row outcome of the delete.", + "ref": "aisearch.DataModificationResult", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "status": { + "description": "Overall status of the delete.", + "ref": "aisearch.DataModificationStatus", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "aisearch.RerankerConfig": { + "description": "Configuration for reranking query results with a reranker model.", + "fields": { + "model": { + "description": "Reranker identifier: \"databricks_reranker\" for the base model, or a Model Serving\nendpoint name when `model_type` is MODEL_TYPE_FINETUNED.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "model_type": { + "description": "Discriminator for how `model` is interpreted.", + "ref": "aisearch.RerankerConfigModelType", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "parameters": { + "description": "Parameters controlling reranking.", + "ref": "aisearch.RerankerConfigRerankerParameters", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aisearch.RerankerConfigModelType": { + "description": "How the `model` field is interpreted.", + "enum": [ + "MODEL_TYPE_BASE", + "MODEL_TYPE_FINETUNED" + ], + "enum_launch_stages": { + "MODEL_TYPE_BASE": "PUBLIC_PREVIEW", + "MODEL_TYPE_FINETUNED": "PUBLIC_PREVIEW" + } + }, + "aisearch.RerankerConfigRerankerParameters": { + "description": "Parameters controlling how the reranker processes results.", + "fields": { + "columns_to_rerank": { + "description": "Columns whose values are concatenated and sent to the reranker.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aisearch.ResultData": { + "description": "The rows of a query result set.", + "fields": { + "data_array": { + "description": "Result rows; each row is a list of column values aligned with the manifest columns.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "row_count": { + "description": "Number of rows in the result set.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "aisearch.ResultManifest": { + "description": "Metadata describing the columns of a query result set.", + "fields": { + "column_count": { + "description": "Number of columns in the result set.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "columns": { + "description": "Information about each column in the result set.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "facet_column_count": { + "description": "Number of columns in the facet result.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "facet_columns": { + "description": "Information about each facet column.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "aisearch.ScalingChangeState": { + "description": "State of the most recent scaling change request for a Standard endpoint.", + "enum": [ + "SCALING_CHANGE_UNSPECIFIED", + "SCALING_CHANGE_APPLIED", + "SCALING_CHANGE_IN_PROGRESS" + ], + "enum_launch_stages": { + "SCALING_CHANGE_APPLIED": "PUBLIC_PREVIEW", + "SCALING_CHANGE_IN_PROGRESS": "PUBLIC_PREVIEW", + "SCALING_CHANGE_UNSPECIFIED": "PUBLIC_PREVIEW" + } + }, + "aisearch.ScanIndexRequest": { + "description": "Request to scan (paginate over) the rows of an AI Search index. Models the legacy\n`num_results` / `last_primary_key` cursor as AIP-158 `page_size` / `page_token`.", + "fields": { + "page_size": { + "description": "Maximum number of rows to return in this page.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Page token from a previous response; if unset, scanning starts from the beginning.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "aisearch.ScanIndexResponse": { + "description": "Response for ScanIndex carrying a page of rows and an optional continuation token.", + "fields": { + "data": { + "description": "The rows in this page, each a struct of column name to value.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "next_page_token": { + "description": "Token for the next page; empty when the scan is exhausted.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "aisearch.SyncIndexRequest": { + "description": "Request to synchronize a Delta Sync AI Search index with its source Delta table." + }, + "aisearch.SyncIndexResponse": { + "description": "Response for SyncIndex. Empty today; reserved so future sync metadata (e.g. an\noperation handle) can be added without breaking the wire contract." + }, + "aisearch.ThroughputChangeRequestState": { + "description": "State of the most recent throughput change request issued against a Storage Optimized\nendpoint. Surfaced on `EndpointThroughputInfo.change_request_state`.", + "enum": [ + "CHANGE_SUCCESS", + "CHANGE_FAILED", + "CHANGE_REACHED_MINIMUM", + "CHANGE_REACHED_MAXIMUM", + "CHANGE_IN_PROGRESS", + "CHANGE_ADJUSTED" + ], + "enum_launch_stages": { + "CHANGE_ADJUSTED": "PUBLIC_PREVIEW", + "CHANGE_FAILED": "PUBLIC_PREVIEW", + "CHANGE_IN_PROGRESS": "PUBLIC_PREVIEW", + "CHANGE_REACHED_MAXIMUM": "PUBLIC_PREVIEW", + "CHANGE_REACHED_MINIMUM": "PUBLIC_PREVIEW", + "CHANGE_SUCCESS": "PUBLIC_PREVIEW" + } + }, + "aisearch.UpdateEndpointRequest": { + "fields": { + "endpoint": { + "description": "The Endpoint resource to update. `endpoint.name` carries the full resource path.", + "ref": "aisearch.Endpoint", + "launch_stage": "PUBLIC_PREVIEW" + }, + "update_mask": { + "description": "The list of fields to update.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "aisearch.UpsertDataRequest": { + "description": "Request to upsert rows into a Direct Access AI Search index.", + "fields": { + "inputs_json": { + "description": "JSON document describing the rows to upsert.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "aisearch.UpsertDataResponse": { + "description": "Response for UpsertData.", + "fields": { + "result": { + "description": "Per-row outcome of the upsert.", + "ref": "aisearch.DataModificationResult", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "status": { + "description": "Overall status of the upsert.", + "ref": "aisearch.DataModificationStatus", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "apps.App": { + "fields": { + "active_deployment": { + "description": "The active deployment of the app. A deployment is considered active when it has been deployed\nto the app compute.", + "ref": "apps.AppDeployment", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "app_status": { + "ref": "apps.ApplicationStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "budget_policy_id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "compute_max_instances": { + "description": "Maximum number of app instances the app is configured to run. Must be set together with `compute_min_instances`.", + "launch_stage": "GA" + }, + "compute_min_instances": { + "description": "Minimum number of app instances the app is configured to run. Must be set together with `compute_max_instances`.", + "launch_stage": "GA" + }, + "compute_size": { + "ref": "apps.ComputeSize", + "launch_stage": "GA" + }, + "compute_status": { + "ref": "apps.ComputeStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "create_time": { + "description": "The creation time of the app. Formatted timestamp in ISO 6801.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "creator": { + "description": "The email of the user that created the app.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "default_git_source": { + "description": "The Git source of the app's most recent active deployment, including the repository\nconfiguration and the resolved reference. Populated by the system after a Git-based\ndeployment and used as the default reference when automatic deployments are enabled.", + "ref": "apps.GitSource", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "default_source_code_path": { + "description": "The default workspace file system path of the source code from which app deployment are\ncreated. This field tracks the workspace source code path of the last active deployment.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "The description of the app.", + "launch_stage": "GA" + }, + "effective_budget_policy_id": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_usage_policy_id": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_user_api_scopes": { + "description": "The effective api scopes granted to the user access token.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "forward_user_access_token": { + "description": "Forward the user's access token to the app. Requires stopping and starting app compute to take effect.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "git_repository": { + "description": "Git repository configuration for app deployments. When specified, deployments can\nreference code from this repository by providing only the git reference (branch, tag, or commit).", + "ref": "apps.GitRepository", + "launch_stage": "GA" + }, + "git_source": { + "description": "The Git source to deploy from, specifying the reference to check out (branch, tag, or\ncommit) and an optional path to the app source code within the repository configured in\ngit_repository.", + "ref": "apps.GitSource", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "id": { + "description": "The unique identifier of the app.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "launch_stage": "GA" + }, + "oauth2_app_client_id": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "oauth2_app_integration_id": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "pending_deployment": { + "description": "The pending deployment of the app. A deployment is considered pending when it is being prepared\nfor deployment to the app compute.", + "ref": "apps.AppDeployment", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "resources": { + "description": "Resources for the app.", + "launch_stage": "GA" + }, + "service_principal_client_id": { + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "service_principal_id": { + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "service_principal_name": { + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "source_code_path": { + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "space": { + "description": "Name of the space this app belongs to.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "telemetry_export_destinations": { + "launch_stage": "GA" + }, + "thumbnail_url": { + "description": "The URL of the thumbnail image for the app.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "The update time of the app. Formatted timestamp in ISO 6801.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updater": { + "description": "The email of the user that last updated the app.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "url": { + "description": "The URL of the app once it is deployed.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "usage_policy_id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "user_api_scopes": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "apps.AppAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "apps.AppPermissionLevel", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "apps.AppAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "apps.AppDeployment": { + "fields": { + "command": { + "description": "The command with which to run the app. This will override the command specified in the app.yaml file.", + "launch_stage": "GA" + }, + "create_time": { + "description": "The creation time of the deployment. Formatted timestamp in ISO 6801.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "creator": { + "description": "The email of the user creates the deployment.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "deployment_artifacts": { + "description": "The deployment artifacts for an app.", + "ref": "apps.AppDeploymentArtifacts", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "deployment_id": { + "description": "The unique id of the deployment.", + "launch_stage": "GA" + }, + "env_vars": { + "description": "The environment variables to set in the app runtime environment. This will override the environment variables specified in the app.yaml file.", + "launch_stage": "GA" + }, + "git_source": { + "description": "Git repository to use as the source for the app deployment.", + "ref": "apps.GitSource", + "launch_stage": "GA" + }, + "health_check": { + "description": "Deploy-time health check for the app. Verifies the app is responding to HTTP requests before considering the deployment successful.", + "ref": "apps.AppHealthCheck", + "launch_stage": "PRIVATE_PREVIEW" + }, + "mode": { + "description": "The mode of which the deployment will manage the source code.", + "ref": "apps.AppDeploymentMode", + "launch_stage": "GA" + }, + "source_code_path": { + "description": "The workspace file system path of the source code used to create the app deployment. This is different from\n`deployment_artifacts.source_code_path`, which is the path used by the deployed app. The former refers\nto the original source code location of the app in the workspace during deployment creation, whereas\nthe latter provides a system generated stable snapshotted source code path used by the deployment.", + "launch_stage": "GA" + }, + "status": { + "description": "Status and status message of the deployment", + "ref": "apps.AppDeploymentStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "The update time of the deployment. Formatted timestamp in ISO 6801.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "apps.AppDeploymentArtifacts": { + "fields": { + "source_code_path": { + "description": "The snapshotted workspace file system path of the source code loaded by the deployed app.", + "launch_stage": "GA" + } + } + }, + "apps.AppDeploymentMode": { + "enum": [ + "SNAPSHOT", + "AUTO_SYNC" + ], + "enum_launch_stages": { + "AUTO_SYNC": "GA", + "SNAPSHOT": "GA" + } + }, + "apps.AppDeploymentState": { + "enum": [ + "SUCCEEDED", + "FAILED", + "IN_PROGRESS", + "CANCELLED" + ], + "enum_launch_stages": { + "CANCELLED": "GA", + "FAILED": "GA", + "IN_PROGRESS": "GA", + "SUCCEEDED": "GA" + } + }, + "apps.AppDeploymentStatus": { + "fields": { + "message": { + "description": "Message corresponding with the deployment state.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "state": { + "description": "State of the deployment.", + "ref": "apps.AppDeploymentState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "apps.AppHealthCheck": { + "description": "Deploy-time HTTP health check configuration for an app deployment.", + "fields": { + "path": { + "description": "HTTP path to probe, e.g. \"/health\" or \"/api/status\".", + "launch_stage": "PRIVATE_PREVIEW" + }, + "timeout": { + "description": "Timeout to wait for the health check to pass before failing the deployment. If not set, a default timeout is used.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.AppManifest": { + "description": "App manifest definition", + "fields": { + "description": { + "description": "Description of the app defined by manifest author / publisher", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Name of the app defined by manifest author / publisher", + "launch_stage": "PRIVATE_PREVIEW" + }, + "resource_specs": { + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "version": { + "description": "The manifest schema version, for now only 1 is allowed", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.AppManifestAppResourceExperimentSpec": { + "fields": { + "permission": { + "ref": "apps.AppManifestAppResourceExperimentSpecExperimentPermission", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.AppManifestAppResourceExperimentSpecExperimentPermission": { + "enum": [ + "CAN_MANAGE", + "CAN_EDIT", + "CAN_READ" + ], + "enum_launch_stages": { + "CAN_EDIT": "PRIVATE_PREVIEW", + "CAN_MANAGE": "PRIVATE_PREVIEW", + "CAN_READ": "PRIVATE_PREVIEW" + } + }, + "apps.AppManifestAppResourceJobSpec": { + "fields": { + "permission": { + "description": "Permissions to grant on the Job. Supported permissions are: \"CAN_MANAGE\", \"IS_OWNER\", \"CAN_MANAGE_RUN\", \"CAN_VIEW\".", + "ref": "apps.AppManifestAppResourceJobSpecJobPermission", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.AppManifestAppResourceJobSpecJobPermission": { + "enum": [ + "CAN_MANAGE", + "IS_OWNER", + "CAN_MANAGE_RUN", + "CAN_VIEW" + ], + "enum_launch_stages": { + "CAN_MANAGE": "PRIVATE_PREVIEW", + "CAN_MANAGE_RUN": "PRIVATE_PREVIEW", + "CAN_VIEW": "PRIVATE_PREVIEW", + "IS_OWNER": "PRIVATE_PREVIEW" + } + }, + "apps.AppManifestAppResourceSecretSpec": { + "fields": { + "permission": { + "description": "Permission to grant on the secret scope. For secrets, only one permission is allowed. Permission must be one of: \"READ\", \"WRITE\", \"MANAGE\".", + "ref": "apps.AppManifestAppResourceSecretSpecSecretPermission", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.AppManifestAppResourceSecretSpecSecretPermission": { + "description": "Permission to grant on the secret scope. Supported permissions are: \"READ\", \"WRITE\", \"MANAGE\".", + "enum": [ + "READ", + "WRITE", + "MANAGE" + ], + "enum_launch_stages": { + "MANAGE": "PRIVATE_PREVIEW", + "READ": "PRIVATE_PREVIEW", + "WRITE": "PRIVATE_PREVIEW" + } + }, + "apps.AppManifestAppResourceServingEndpointSpec": { + "fields": { + "permission": { + "description": "Permission to grant on the serving endpoint. Supported permissions are: \"CAN_MANAGE\", \"CAN_QUERY\", \"CAN_VIEW\".", + "ref": "apps.AppManifestAppResourceServingEndpointSpecServingEndpointPermission", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.AppManifestAppResourceServingEndpointSpecServingEndpointPermission": { + "enum": [ + "CAN_MANAGE", + "CAN_QUERY", + "CAN_VIEW" + ], + "enum_launch_stages": { + "CAN_MANAGE": "PRIVATE_PREVIEW", + "CAN_QUERY": "PRIVATE_PREVIEW", + "CAN_VIEW": "PRIVATE_PREVIEW" + } + }, + "apps.AppManifestAppResourceSpec": { + "description": "AppResource related fields are copied from app.proto but excludes resource identifiers (e.g. name, id, key, scope, etc.)", + "fields": { + "description": { + "description": "Description of the App Resource.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "experiment_spec": { + "ref": "apps.AppManifestAppResourceExperimentSpec", + "launch_stage": "PRIVATE_PREVIEW" + }, + "job_spec": { + "ref": "apps.AppManifestAppResourceJobSpec", + "launch_stage": "PRIVATE_PREVIEW" + }, + "name": { + "description": "Name of the App Resource.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "secret_spec": { + "ref": "apps.AppManifestAppResourceSecretSpec", + "launch_stage": "PRIVATE_PREVIEW" + }, + "serving_endpoint_spec": { + "ref": "apps.AppManifestAppResourceServingEndpointSpec", + "launch_stage": "PRIVATE_PREVIEW" + }, + "sql_warehouse_spec": { + "ref": "apps.AppManifestAppResourceSqlWarehouseSpec", + "launch_stage": "PRIVATE_PREVIEW" + }, + "uc_securable_spec": { + "ref": "apps.AppManifestAppResourceUcSecurableSpec", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.AppManifestAppResourceSqlWarehouseSpec": { + "fields": { + "permission": { + "description": "Permission to grant on the SQL warehouse. Supported permissions are: \"CAN_MANAGE\", \"CAN_USE\", \"IS_OWNER\".", + "ref": "apps.AppManifestAppResourceSqlWarehouseSpecSqlWarehousePermission", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.AppManifestAppResourceSqlWarehouseSpecSqlWarehousePermission": { + "enum": [ + "CAN_MANAGE", + "CAN_USE", + "IS_OWNER" + ], + "enum_launch_stages": { + "CAN_MANAGE": "PRIVATE_PREVIEW", + "CAN_USE": "PRIVATE_PREVIEW", + "IS_OWNER": "PRIVATE_PREVIEW" + } + }, + "apps.AppManifestAppResourceUcSecurableSpec": { + "fields": { + "permission": { + "ref": "apps.AppManifestAppResourceUcSecurableSpecUcSecurablePermission", + "launch_stage": "PRIVATE_PREVIEW" + }, + "securable_type": { + "ref": "apps.AppManifestAppResourceUcSecurableSpecUcSecurableType", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.AppManifestAppResourceUcSecurableSpecUcSecurablePermission": { + "enum": [ + "READ_VOLUME", + "WRITE_VOLUME", + "MANAGE", + "SELECT", + "EXECUTE", + "USE_CONNECTION" + ], + "enum_launch_stages": { + "EXECUTE": "PRIVATE_PREVIEW", + "MANAGE": "PRIVATE_PREVIEW", + "READ_VOLUME": "PRIVATE_PREVIEW", + "SELECT": "PRIVATE_PREVIEW", + "USE_CONNECTION": "PRIVATE_PREVIEW", + "WRITE_VOLUME": "PRIVATE_PREVIEW" + } + }, + "apps.AppManifestAppResourceUcSecurableSpecUcSecurableType": { + "enum": [ + "VOLUME", + "TABLE", + "FUNCTION", + "CONNECTION", + "MODEL_SERVICE" + ], + "enum_launch_stages": { + "CONNECTION": "PRIVATE_PREVIEW", + "FUNCTION": "PRIVATE_PREVIEW", + "MODEL_SERVICE": "PRIVATE_PREVIEW", + "TABLE": "PRIVATE_PREVIEW", + "VOLUME": "PRIVATE_PREVIEW" + } + }, + "apps.AppPermission": { + "fields": { + "inherited": { + "launch_stage": "GA" + }, + "inherited_from_object": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "apps.AppPermissionLevel", + "launch_stage": "GA" + } + } + }, + "apps.AppPermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_MANAGE", + "CAN_USE" + ] + }, + "apps.AppPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "launch_stage": "GA" + }, + "object_type": { + "launch_stage": "GA" + } + } + }, + "apps.AppPermissionsDescription": { + "fields": { + "description": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "apps.AppPermissionLevel", + "launch_stage": "GA" + } + } + }, + "apps.AppPermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "apps.AppResource": { + "fields": { + "app": { + "ref": "apps.AppResourceApp", + "launch_stage": "GA" + }, + "database": { + "ref": "apps.AppResourceDatabase", + "launch_stage": "GA" + }, + "description": { + "description": "Description of the App Resource.", + "launch_stage": "GA" + }, + "experiment": { + "ref": "apps.AppResourceExperiment", + "launch_stage": "GA" + }, + "genie_space": { + "ref": "apps.AppResourceGenieSpace", + "launch_stage": "GA" + }, + "job": { + "ref": "apps.AppResourceJob", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the App Resource.", + "launch_stage": "GA" + }, + "postgres": { + "ref": "apps.AppResourcePostgres", + "launch_stage": "GA" + }, + "secret": { + "ref": "apps.AppResourceSecret", + "launch_stage": "GA" + }, + "serving_endpoint": { + "ref": "apps.AppResourceServingEndpoint", + "launch_stage": "GA" + }, + "sql_warehouse": { + "ref": "apps.AppResourceSqlWarehouse", + "launch_stage": "GA" + }, + "uc_securable": { + "ref": "apps.AppResourceUcSecurable", + "launch_stage": "GA" + } + } + }, + "apps.AppResourceApp": { + "fields": { + "name": { + "launch_stage": "GA" + }, + "permission": { + "ref": "apps.AppResourceAppAppPermission", + "launch_stage": "GA" + } + } + }, + "apps.AppResourceAppAppPermission": { + "enum": [ + "CAN_USE" + ], + "enum_launch_stages": { + "CAN_USE": "GA" + } + }, + "apps.AppResourceDatabase": { + "fields": { + "database_name": { + "launch_stage": "GA" + }, + "instance_name": { + "launch_stage": "GA" + }, + "permission": { + "ref": "apps.AppResourceDatabaseDatabasePermission", + "launch_stage": "GA" + } + } + }, + "apps.AppResourceDatabaseDatabasePermission": { + "enum": [ + "CAN_CONNECT_AND_CREATE" + ], + "enum_launch_stages": { + "CAN_CONNECT_AND_CREATE": "GA" + } + }, + "apps.AppResourceExperiment": { + "fields": { + "experiment_id": { + "launch_stage": "GA" + }, + "permission": { + "ref": "apps.AppResourceExperimentExperimentPermission", + "launch_stage": "GA" + } + } + }, + "apps.AppResourceExperimentExperimentPermission": { + "enum": [ + "CAN_MANAGE", + "CAN_EDIT", + "CAN_READ" + ], + "enum_launch_stages": { + "CAN_EDIT": "GA", + "CAN_MANAGE": "GA", + "CAN_READ": "GA" + } + }, + "apps.AppResourceGenieSpace": { + "fields": { + "name": { + "launch_stage": "GA" + }, + "permission": { + "ref": "apps.AppResourceGenieSpaceGenieSpacePermission", + "launch_stage": "GA" + }, + "space_id": { + "launch_stage": "GA" + } + } + }, + "apps.AppResourceGenieSpaceGenieSpacePermission": { + "enum": [ + "CAN_MANAGE", + "CAN_EDIT", + "CAN_RUN", + "CAN_VIEW" + ], + "enum_launch_stages": { + "CAN_EDIT": "GA", + "CAN_MANAGE": "GA", + "CAN_RUN": "GA", + "CAN_VIEW": "GA" + } + }, + "apps.AppResourceJob": { + "fields": { + "id": { + "description": "Id of the job to grant permission on.", + "launch_stage": "GA" + }, + "permission": { + "description": "Permissions to grant on the Job. Supported permissions are: \"CAN_MANAGE\", \"IS_OWNER\", \"CAN_MANAGE_RUN\", \"CAN_VIEW\".", + "ref": "apps.AppResourceJobJobPermission", + "launch_stage": "GA" + } + } + }, + "apps.AppResourceJobJobPermission": { + "enum": [ + "CAN_MANAGE", + "IS_OWNER", + "CAN_MANAGE_RUN", + "CAN_VIEW" + ], + "enum_launch_stages": { + "CAN_MANAGE": "GA", + "CAN_MANAGE_RUN": "GA", + "CAN_VIEW": "GA", + "IS_OWNER": "GA" + } + }, + "apps.AppResourcePostgres": { + "fields": { + "branch": { + "launch_stage": "GA" + }, + "database": { + "launch_stage": "GA" + }, + "permission": { + "ref": "apps.AppResourcePostgresPostgresPermission", + "launch_stage": "GA" + } + } + }, + "apps.AppResourcePostgresPostgresPermission": { + "enum": [ + "CAN_CONNECT_AND_CREATE" + ], + "enum_launch_stages": { + "CAN_CONNECT_AND_CREATE": "GA" + } + }, + "apps.AppResourceSecret": { + "fields": { + "key": { + "description": "Key of the secret to grant permission on.", + "launch_stage": "GA" + }, + "permission": { + "description": "Permission to grant on the secret scope. For secrets, only one permission is allowed. Permission must be one of: \"READ\", \"WRITE\", \"MANAGE\".", + "ref": "apps.AppResourceSecretSecretPermission", + "launch_stage": "GA" + }, + "scope": { + "description": "Scope of the secret to grant permission on.", + "launch_stage": "GA" + } + } + }, + "apps.AppResourceSecretSecretPermission": { + "description": "Permission to grant on the secret scope. Supported permissions are: \"READ\", \"WRITE\", \"MANAGE\".", + "enum": [ + "READ", + "WRITE", + "MANAGE" + ], + "enum_launch_stages": { + "MANAGE": "GA", + "READ": "GA", + "WRITE": "GA" + } + }, + "apps.AppResourceServingEndpoint": { + "fields": { + "name": { + "description": "Name of the serving endpoint to grant permission on.", + "launch_stage": "GA" + }, + "permission": { + "description": "Permission to grant on the serving endpoint. Supported permissions are: \"CAN_MANAGE\", \"CAN_QUERY\", \"CAN_VIEW\".", + "ref": "apps.AppResourceServingEndpointServingEndpointPermission", + "launch_stage": "GA" + } + } + }, + "apps.AppResourceServingEndpointServingEndpointPermission": { + "enum": [ + "CAN_MANAGE", + "CAN_QUERY", + "CAN_VIEW" + ], + "enum_launch_stages": { + "CAN_MANAGE": "GA", + "CAN_QUERY": "GA", + "CAN_VIEW": "GA" + } + }, + "apps.AppResourceSqlWarehouse": { + "fields": { + "id": { + "description": "Id of the SQL warehouse to grant permission on.", + "launch_stage": "GA" + }, + "permission": { + "description": "Permission to grant on the SQL warehouse. Supported permissions are: \"CAN_MANAGE\", \"CAN_USE\", \"IS_OWNER\".", + "ref": "apps.AppResourceSqlWarehouseSqlWarehousePermission", + "launch_stage": "GA" + } + } + }, + "apps.AppResourceSqlWarehouseSqlWarehousePermission": { + "enum": [ + "CAN_MANAGE", + "CAN_USE", + "IS_OWNER" + ], + "enum_launch_stages": { + "CAN_MANAGE": "GA", + "CAN_USE": "GA", + "IS_OWNER": "GA" + } + }, + "apps.AppResourceUcSecurable": { + "fields": { + "permission": { + "ref": "apps.AppResourceUcSecurableUcSecurablePermission", + "launch_stage": "GA" + }, + "securable_full_name": { + "launch_stage": "GA" + }, + "securable_kind": { + "description": "The securable kind from Unity Catalog.\nSee https://docs.databricks.com/api/workspace/tables/get#securable_kind_manifest-securable_kind.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "securable_type": { + "ref": "apps.AppResourceUcSecurableUcSecurableType", + "launch_stage": "GA" + } + } + }, + "apps.AppResourceUcSecurableUcSecurablePermission": { + "enum": [ + "READ_VOLUME", + "WRITE_VOLUME", + "SELECT", + "EXECUTE", + "USE_CONNECTION", + "MODIFY" + ], + "enum_launch_stages": { + "EXECUTE": "GA", + "MODIFY": "GA", + "READ_VOLUME": "GA", + "SELECT": "GA", + "USE_CONNECTION": "GA", + "WRITE_VOLUME": "GA" + } + }, + "apps.AppResourceUcSecurableUcSecurableType": { + "enum": [ + "VOLUME", + "TABLE", + "FUNCTION", + "CONNECTION", + "MODEL_SERVICE" + ], + "enum_launch_stages": { + "CONNECTION": "GA", + "FUNCTION": "GA", + "MODEL_SERVICE": "GA", + "TABLE": "GA", + "VOLUME": "GA" + } + }, + "apps.AppThumbnail": { + "description": "The thumbnail for an app.", + "fields": { + "thumbnail": { + "description": "The thumbnail image bytes.", + "launch_stage": "GA" + } + } + }, + "apps.AppUpdate": { + "fields": { + "budget_policy_id": { + "launch_stage": "GA" + }, + "compute_max_instances": { + "description": "Maximum number of app instances the app is configured to run. Must be set together with `compute_min_instances`.", + "launch_stage": "GA" + }, + "compute_min_instances": { + "description": "Minimum number of app instances the app is configured to run. Must be set together with `compute_max_instances`.", + "launch_stage": "GA" + }, + "compute_size": { + "ref": "apps.ComputeSize", + "launch_stage": "GA" + }, + "description": { + "launch_stage": "GA" + }, + "forward_user_access_token": { + "description": "Forward the user's access token to the app. Requires stopping and starting app compute to take effect.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "git_repository": { + "ref": "apps.GitRepository", + "launch_stage": "GA" + }, + "resources": { + "launch_stage": "GA" + }, + "status": { + "ref": "apps.AppUpdateUpdateStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "telemetry_export_destinations": { + "launch_stage": "GA" + }, + "usage_policy_id": { + "launch_stage": "GA" + }, + "user_api_scopes": { + "launch_stage": "GA" + } + } + }, + "apps.AppUpdateUpdateStatus": { + "fields": { + "message": { + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "state": { + "ref": "apps.AppUpdateUpdateStatusUpdateState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "apps.AppUpdateUpdateStatusUpdateState": { + "enum": [ + "NOT_UPDATED", + "IN_PROGRESS", + "SUCCEEDED", + "FAILED" + ], + "enum_launch_stages": { + "FAILED": "GA", + "IN_PROGRESS": "GA", + "NOT_UPDATED": "GA", + "SUCCEEDED": "GA" + } + }, + "apps.ApplicationState": { + "enum": [ + "DEPLOYING", + "RUNNING", + "CRASHED", + "UNAVAILABLE" + ], + "enum_launch_stages": { + "CRASHED": "GA", + "DEPLOYING": "GA", + "RUNNING": "GA", + "UNAVAILABLE": "GA" + } + }, + "apps.ApplicationStatus": { + "fields": { + "message": { + "description": "Application status message", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "running_instances": { + "description": "The number of app instances whose application process is running.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "state": { + "description": "State of the application.", + "ref": "apps.ApplicationState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "apps.AsyncUpdateAppRequest": { + "fields": { + "app": { + "ref": "apps.App", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "GA" + } + } + }, + "apps.ComputeSize": { + "enum": [ + "MEDIUM", + "LARGE", + "XLARGE" + ], + "enum_launch_stages": { + "LARGE": "GA", + "MEDIUM": "GA", + "XLARGE": "GA" + } + }, + "apps.ComputeState": { + "enum": [ + "ERROR", + "DELETING", + "STARTING", + "STOPPING", + "UPDATING", + "STOPPED", + "ACTIVE" + ], + "enum_launch_stages": { + "ACTIVE": "GA", + "DELETING": "GA", + "ERROR": "GA", + "STARTING": "GA", + "STOPPED": "GA", + "STOPPING": "GA", + "UPDATING": "GA" + } + }, + "apps.ComputeStatus": { + "fields": { + "active_instances": { + "description": "The number of active compute instances currently used and billed for this application.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "message": { + "description": "Compute status message", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "state": { + "description": "State of the app compute.", + "ref": "apps.ComputeState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "apps.CreateAppDeploymentRequest": { + "fields": { + "app_deployment": { + "description": "The app deployment configuration.", + "ref": "apps.AppDeployment", + "launch_stage": "GA" + } + } + }, + "apps.CreateAppRequest": { + "fields": { + "app": { + "ref": "apps.App", + "launch_stage": "GA" + }, + "no_compute": { + "description": "If true, the app will not be started after creation.", + "launch_stage": "GA" + } + } + }, + "apps.CreateCustomTemplateRequest": { + "fields": { + "template": { + "ref": "apps.CustomTemplate", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.CreateSpaceRequest": { + "fields": { + "space": { + "ref": "apps.Space", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.CustomTemplate": { + "fields": { + "creator": { + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "The description of the template.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "git_provider": { + "description": "The Git provider of the template.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "git_repo": { + "description": "The Git repository URL that the template resides in.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "manifest": { + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "ref": "apps.AppManifest", + "launch_stage": "PRIVATE_PREVIEW" + }, + "name": { + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "path": { + "description": "The path to the template within the Git repository.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.DatabricksServiceExceptionWithDetailsProto": { + "description": "Databricks Error that is returned by all Databricks APIs.", + "fields": { + "details": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "error_code": { + "ref": "apps.ErrorCode", + "launch_stage": "PRIVATE_PREVIEW" + }, + "message": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "stack_trace": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.DeleteAppRequest": {}, + "apps.DeleteAppThumbnailRequest": {}, + "apps.DeleteCustomTemplateRequest": {}, + "apps.DeleteSpaceRequest": {}, + "apps.EnvVar": { + "fields": { + "name": { + "description": "The name of the environment variable.", + "launch_stage": "GA" + }, + "value": { + "description": "The value for the environment variable.", + "launch_stage": "GA" + }, + "value_from": { + "description": "The name of an external Databricks resource that contains the value, such as a secret or a database table.", + "launch_stage": "GA" + } + } + }, + "apps.ErrorCode": { + "description": "Error codes returned by Databricks APIs to indicate specific failure conditions.", + "enum": [ + "UNKNOWN", + "INTERNAL_ERROR", + "TEMPORARILY_UNAVAILABLE", + "IO_ERROR", + "BAD_REQUEST", + "SERVICE_UNDER_MAINTENANCE", + "WORKSPACE_TEMPORARILY_UNAVAILABLE", + "DEADLINE_EXCEEDED", + "CANCELLED", + "RESOURCE_EXHAUSTED", + "ABORTED", + "NOT_FOUND", + "ALREADY_EXISTS", + "UNAUTHENTICATED", + "UNAVAILABLE", + "INVALID_PARAMETER_VALUE", + "ENDPOINT_NOT_FOUND", + "MALFORMED_REQUEST", + "INVALID_STATE", + "PERMISSION_DENIED", + "FEATURE_DISABLED", + "CUSTOMER_UNAUTHORIZED", + "REQUEST_LIMIT_EXCEEDED", + "RESOURCE_CONFLICT", + "UNPARSEABLE_HTTP_ERROR", + "NOT_IMPLEMENTED", + "DATA_LOSS", + "INVALID_STATE_TRANSITION", + "COULD_NOT_ACQUIRE_LOCK", + "RESOURCE_ALREADY_EXISTS", + "RESOURCE_DOES_NOT_EXIST", + "QUOTA_EXCEEDED", + "MAX_BLOCK_SIZE_EXCEEDED", + "MAX_READ_SIZE_EXCEEDED", + "PARTIAL_DELETE", + "MAX_LIST_SIZE_EXCEEDED", + "DRY_RUN_FAILED", + "RESOURCE_LIMIT_EXCEEDED", + "DIRECTORY_NOT_EMPTY", + "DIRECTORY_PROTECTED", + "MAX_NOTEBOOK_SIZE_EXCEEDED", + "MAX_CHILD_NODE_SIZE_EXCEEDED", + "SEARCH_QUERY_TOO_LONG", + "SEARCH_QUERY_TOO_SHORT", + "MANAGED_RESOURCE_GROUP_DOES_NOT_EXIST", + "PERMISSION_NOT_PROPAGATED", + "DEPLOYMENT_TIMEOUT", + "GIT_CONFLICT", + "GIT_UNKNOWN_REF", + "GIT_SENSITIVE_TOKEN_DETECTED", + "GIT_URL_NOT_ON_ALLOW_LIST", + "GIT_REMOTE_ERROR", + "PROJECTS_OPERATION_TIMEOUT", + "IPYNB_FILE_IN_REPO", + "INSECURE_PARTNER_RESPONSE", + "MALFORMED_PARTNER_RESPONSE", + "METASTORE_DOES_NOT_EXIST", + "DAC_DOES_NOT_EXIST", + "CATALOG_DOES_NOT_EXIST", + "SCHEMA_DOES_NOT_EXIST", + "TABLE_DOES_NOT_EXIST", + "SHARE_DOES_NOT_EXIST", + "RECIPIENT_DOES_NOT_EXIST", + "STORAGE_CREDENTIAL_DOES_NOT_EXIST", + "EXTERNAL_LOCATION_DOES_NOT_EXIST", + "PRINCIPAL_DOES_NOT_EXIST", + "PROVIDER_DOES_NOT_EXIST", + "METASTORE_ALREADY_EXISTS", + "DAC_ALREADY_EXISTS", + "CATALOG_ALREADY_EXISTS", + "SCHEMA_ALREADY_EXISTS", + "TABLE_ALREADY_EXISTS", + "SHARE_ALREADY_EXISTS", + "RECIPIENT_ALREADY_EXISTS", + "STORAGE_CREDENTIAL_ALREADY_EXISTS", + "EXTERNAL_LOCATION_ALREADY_EXISTS", + "PROVIDER_ALREADY_EXISTS", + "CATALOG_NOT_EMPTY", + "SCHEMA_NOT_EMPTY", + "METASTORE_NOT_EMPTY", + "PROVIDER_SHARE_NOT_ACCESSIBLE" + ], + "enum_launch_stages": { + "ABORTED": "PRIVATE_PREVIEW", + "ALREADY_EXISTS": "PRIVATE_PREVIEW", + "BAD_REQUEST": "PRIVATE_PREVIEW", + "CANCELLED": "PRIVATE_PREVIEW", + "CATALOG_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "CATALOG_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "CATALOG_NOT_EMPTY": "PRIVATE_PREVIEW", + "COULD_NOT_ACQUIRE_LOCK": "PRIVATE_PREVIEW", + "CUSTOMER_UNAUTHORIZED": "PRIVATE_PREVIEW", + "DAC_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "DAC_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "DATA_LOSS": "PRIVATE_PREVIEW", + "DEADLINE_EXCEEDED": "PRIVATE_PREVIEW", + "DEPLOYMENT_TIMEOUT": "PRIVATE_PREVIEW", + "DIRECTORY_NOT_EMPTY": "PRIVATE_PREVIEW", + "DIRECTORY_PROTECTED": "PRIVATE_PREVIEW", + "DRY_RUN_FAILED": "PRIVATE_PREVIEW", + "ENDPOINT_NOT_FOUND": "PRIVATE_PREVIEW", + "EXTERNAL_LOCATION_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "EXTERNAL_LOCATION_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "FEATURE_DISABLED": "PRIVATE_PREVIEW", + "GIT_CONFLICT": "PRIVATE_PREVIEW", + "GIT_REMOTE_ERROR": "PRIVATE_PREVIEW", + "GIT_SENSITIVE_TOKEN_DETECTED": "PRIVATE_PREVIEW", + "GIT_UNKNOWN_REF": "PRIVATE_PREVIEW", + "GIT_URL_NOT_ON_ALLOW_LIST": "PRIVATE_PREVIEW", + "INSECURE_PARTNER_RESPONSE": "PRIVATE_PREVIEW", + "INTERNAL_ERROR": "PRIVATE_PREVIEW", + "INVALID_PARAMETER_VALUE": "PRIVATE_PREVIEW", + "INVALID_STATE": "PRIVATE_PREVIEW", + "INVALID_STATE_TRANSITION": "PRIVATE_PREVIEW", + "IO_ERROR": "PRIVATE_PREVIEW", + "IPYNB_FILE_IN_REPO": "PRIVATE_PREVIEW", + "MALFORMED_PARTNER_RESPONSE": "PRIVATE_PREVIEW", + "MALFORMED_REQUEST": "PRIVATE_PREVIEW", + "MANAGED_RESOURCE_GROUP_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "MAX_BLOCK_SIZE_EXCEEDED": "PRIVATE_PREVIEW", + "MAX_CHILD_NODE_SIZE_EXCEEDED": "PRIVATE_PREVIEW", + "MAX_LIST_SIZE_EXCEEDED": "PRIVATE_PREVIEW", + "MAX_NOTEBOOK_SIZE_EXCEEDED": "PRIVATE_PREVIEW", + "MAX_READ_SIZE_EXCEEDED": "PRIVATE_PREVIEW", + "METASTORE_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "METASTORE_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "METASTORE_NOT_EMPTY": "PRIVATE_PREVIEW", + "NOT_FOUND": "PRIVATE_PREVIEW", + "NOT_IMPLEMENTED": "PRIVATE_PREVIEW", + "PARTIAL_DELETE": "PRIVATE_PREVIEW", + "PERMISSION_DENIED": "PRIVATE_PREVIEW", + "PERMISSION_NOT_PROPAGATED": "PRIVATE_PREVIEW", + "PRINCIPAL_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "PROJECTS_OPERATION_TIMEOUT": "PRIVATE_PREVIEW", + "PROVIDER_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "PROVIDER_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "PROVIDER_SHARE_NOT_ACCESSIBLE": "PRIVATE_PREVIEW", + "QUOTA_EXCEEDED": "PRIVATE_PREVIEW", + "RECIPIENT_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "RECIPIENT_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "REQUEST_LIMIT_EXCEEDED": "PRIVATE_PREVIEW", + "RESOURCE_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "RESOURCE_CONFLICT": "PRIVATE_PREVIEW", + "RESOURCE_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "RESOURCE_EXHAUSTED": "PRIVATE_PREVIEW", + "RESOURCE_LIMIT_EXCEEDED": "PRIVATE_PREVIEW", + "SCHEMA_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "SCHEMA_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "SCHEMA_NOT_EMPTY": "PRIVATE_PREVIEW", + "SEARCH_QUERY_TOO_LONG": "PRIVATE_PREVIEW", + "SEARCH_QUERY_TOO_SHORT": "PRIVATE_PREVIEW", + "SERVICE_UNDER_MAINTENANCE": "PRIVATE_PREVIEW", + "SHARE_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "SHARE_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "STORAGE_CREDENTIAL_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "STORAGE_CREDENTIAL_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "TABLE_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "TABLE_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "TEMPORARILY_UNAVAILABLE": "PRIVATE_PREVIEW", + "UNAUTHENTICATED": "PRIVATE_PREVIEW", + "UNAVAILABLE": "PRIVATE_PREVIEW", + "UNKNOWN": "PRIVATE_PREVIEW", + "UNPARSEABLE_HTTP_ERROR": "PRIVATE_PREVIEW", + "WORKSPACE_TEMPORARILY_UNAVAILABLE": "PRIVATE_PREVIEW" + } + }, + "apps.GetAppDeploymentRequest": {}, + "apps.GetAppPermissionLevelsRequest": {}, + "apps.GetAppPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "GA" + } + } + }, + "apps.GetAppPermissionsRequest": {}, + "apps.GetAppRequest": {}, + "apps.GetAppUpdateRequest": {}, + "apps.GetCustomTemplateRequest": {}, + "apps.GetOperationRequest": {}, + "apps.GetSpaceRequest": {}, + "apps.GitRepository": { + "description": "Git repository configuration specifying the location of the repository.", + "fields": { + "auto_deploy": { + "description": "When true, automatically deploys the app on push events to the branch configured in\nthe app's deployment_source.git_source.", + "launch_stage": "GA" + }, + "caller_credential_id": { + "description": "ID of a personal access token Git credential owned by the caller, used to\ngrant the app's service principal access to this repository.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "provider": { + "description": "Git provider. Case insensitive. Supported values: gitHub, gitHubEnterprise, bitbucketCloud,\nbitbucketServer, azureDevOpsServices, gitLab, gitLabEnterpriseEdition, awsCodeCommit.", + "launch_stage": "GA" + }, + "url": { + "description": "URL of the Git repository.", + "launch_stage": "GA" + } + } + }, + "apps.GitSource": { + "description": "Complete git source specification including repository location and reference.", + "fields": { + "branch": { + "description": "Git branch to checkout.", + "launch_stage": "GA" + }, + "commit": { + "description": "Git commit SHA to checkout.", + "launch_stage": "GA" + }, + "git_repository": { + "description": "Git repository configuration. Populated from the app's git_repository configuration.", + "ref": "apps.GitRepository", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "resolved_commit": { + "description": "The resolved commit SHA that was actually used for the deployment. This is populated by the\nsystem after resolving the reference (branch, tag, or commit). If commit is specified\ndirectly, this will match commit. If a branch or tag is specified, this contains the\ncommit SHA that the branch or tag pointed to at deployment time.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "source_code_path": { + "description": "Relative path to the app source code within the Git repository. If not specified, the root\nof the repository is used.", + "launch_stage": "GA" + }, + "tag": { + "description": "Git tag to checkout.", + "launch_stage": "GA" + } + } + }, + "apps.ListAppDeploymentsRequest": { + "fields": { + "page_size": { + "description": "Upper bound for items returned.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Pagination token to go to the next page of apps. Requests first page if absent.", + "launch_stage": "GA" + } + } + }, + "apps.ListAppDeploymentsResponse": { + "fields": { + "app_deployments": { + "description": "Deployment history of the app.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Pagination token to request the next page of apps.", + "launch_stage": "GA" + } + } + }, + "apps.ListAppsRequest": { + "fields": { + "page_size": { + "description": "Upper bound for items returned.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Pagination token to go to the next page of apps. Requests first page if absent.", + "launch_stage": "GA" + }, + "space": { + "description": "Filter apps by app space name. When specified, only apps belonging to this space are returned.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.ListAppsResponse": { + "fields": { + "apps": { + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Pagination token to request the next page of apps.", + "launch_stage": "GA" + } + } + }, + "apps.ListCustomTemplatesRequest": { + "fields": { + "page_size": { + "description": "Upper bound for items returned.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token to go to the next page of custom templates. Requests first page if absent.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "apps.ListCustomTemplatesResponse": { + "fields": { + "next_page_token": { + "description": "Pagination token to request the next page of custom templates.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "templates": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.ListSpacesRequest": { + "fields": { + "page_size": { + "description": "Upper bound for items returned.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token to go to the next page of app spaces. Requests first page if absent.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "apps.ListSpacesResponse": { + "fields": { + "next_page_token": { + "description": "Pagination token to request the next page of app spaces.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "spaces": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "fields": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "error": { + "description": "The error result of the operation in case of failure or cancellation.", + "ref": "apps.DatabricksServiceExceptionWithDetailsProto", + "launch_stage": "PRIVATE_PREVIEW" + }, + "metadata": { + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should be a resource name ending with `operations/{unique_id}`.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "response": { + "description": "The normal, successful response of the operation.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.Space": { + "fields": { + "assume_group_id": { + "description": "The group whose permissions users assume via Role Authorization for apps in this space. When\nset, user tokens assume the role of this group instead of doing regular obo token downscoping.\nSet only at space creation.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "create_time": { + "description": "The creation time of the app space. Formatted timestamp in ISO 6801.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "creator": { + "description": "The email of the user that created the app space.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "The description of the app space.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "effective_usage_policy_id": { + "description": "The effective usage policy ID used by apps in the space.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_user_api_scopes": { + "description": "The effective api scopes granted to the user access token.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "id": { + "description": "The unique identifier of the app space.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "resources": { + "description": "Resources for the app space. Resources configured at the space level are available to all apps in the space.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "service_principal_client_id": { + "description": "The service principal client ID for the app space.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "service_principal_id": { + "description": "The service principal ID for the app space.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "service_principal_name": { + "description": "The service principal name for the app space.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "status": { + "description": "The status of the app space.", + "ref": "apps.SpaceStatus", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "The update time of the app space. Formatted timestamp in ISO 6801.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updater": { + "description": "The email of the user that last updated the app space.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "usage_policy_id": { + "description": "The usage policy ID for managing cost at the space level.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "user_api_scopes": { + "description": "OAuth scopes for apps in the space.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "apps.SpaceStatus": { + "fields": { + "message": { + "description": "Message providing context about the current state.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "state": { + "description": "The state of the app space.", + "ref": "apps.SpaceStatusSpaceState", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "apps.SpaceStatusSpaceState": { + "enum": [ + "SPACE_CREATING", + "SPACE_ACTIVE", + "SPACE_ERROR", + "SPACE_DELETING", + "SPACE_DELETED", + "SPACE_UPDATING" + ], + "enum_launch_stages": { + "SPACE_ACTIVE": "PRIVATE_PREVIEW", + "SPACE_CREATING": "PRIVATE_PREVIEW", + "SPACE_DELETED": "PRIVATE_PREVIEW", + "SPACE_DELETING": "PRIVATE_PREVIEW", + "SPACE_ERROR": "PRIVATE_PREVIEW", + "SPACE_UPDATING": "PRIVATE_PREVIEW" + } + }, + "apps.SpaceUpdate": { + "description": "Tracks app space update information.", + "fields": { + "description": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "resources": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "status": { + "ref": "apps.SpaceUpdateStatus", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "usage_policy_id": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "user_api_scopes": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.SpaceUpdateState": { + "enum": [ + "NOT_UPDATED", + "IN_PROGRESS", + "SUCCEEDED", + "FAILED" + ], + "enum_launch_stages": { + "FAILED": "PRIVATE_PREVIEW", + "IN_PROGRESS": "PRIVATE_PREVIEW", + "NOT_UPDATED": "PRIVATE_PREVIEW", + "SUCCEEDED": "PRIVATE_PREVIEW" + } + }, + "apps.SpaceUpdateStatus": { + "description": "Status of an app space update operation", + "fields": { + "message": { + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "state": { + "ref": "apps.SpaceUpdateState", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "apps.StartAppRequest": {}, + "apps.StopAppRequest": {}, + "apps.TelemetryExportDestination": { + "description": "A single telemetry export destination with its configuration and status.", + "fields": { + "unity_catalog": { + "ref": "apps.UnityCatalog", + "launch_stage": "GA" + } + } + }, + "apps.UnityCatalog": { + "description": "Unity Catalog Destinations for OTEL telemetry export.", + "fields": { + "logs_table": { + "description": "Unity Catalog table for OTEL logs.", + "launch_stage": "GA" + }, + "metrics_table": { + "description": "Unity Catalog table for OTEL metrics.", + "launch_stage": "GA" + }, + "traces_table": { + "description": "Unity Catalog table for OTEL traces (spans).", + "launch_stage": "GA" + } + } + }, + "apps.UpdateAppRequest": { + "fields": { + "app": { + "ref": "apps.App", + "launch_stage": "GA" + } + } + }, + "apps.UpdateAppThumbnailRequest": { + "fields": { + "app_thumbnail": { + "description": "The app thumbnail to set.", + "ref": "apps.AppThumbnail", + "launch_stage": "GA" + } + } + }, + "apps.UpdateCustomTemplateRequest": { + "fields": { + "template": { + "ref": "apps.CustomTemplate", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "apps.UpdateSpaceRequest": { + "fields": { + "space": { + "ref": "apps.Space", + "launch_stage": "PRIVATE_PREVIEW" + }, + "update_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "billing.ActionConfiguration": { + "fields": { + "action_configuration_id": { + "description": "Databricks action configuration ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "action_type": { + "description": "The type of the action.", + "ref": "billing.ActionConfigurationType", + "launch_stage": "PUBLIC_PREVIEW" + }, + "target": { + "description": "Target for the action. For example, an email address.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.ActionConfigurationType": { + "description": "Type of action that a budget alert executes when its threshold is crossed.", + "enum": [ + "EMAIL_NOTIFICATION", + "BLOCK_USAGE" + ], + "enum_launch_stages": { + "BLOCK_USAGE": "PUBLIC_BETA", + "EMAIL_NOTIFICATION": "PUBLIC_PREVIEW" + } + }, + "billing.AlertConfiguration": { + "fields": { + "action_configurations": { + "description": "Configured actions for this alert. These define what happens when an alert enters a triggered state.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "alert_configuration_id": { + "description": "Databricks alert configuration ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "principal_overrides": { + "description": "Per-principal threshold overrides for this alert. Only applies to per-user alerts (`scope_type` = `ALERT_CONFIGURATION_SCOPE_TYPE_PER_USER`); ignored for shared alerts.", + "launch_stage": "PUBLIC_BETA" + }, + "quantity_threshold": { + "description": "The threshold for the budget alert to determine if it is in a triggered state. The number is evaluated based on `quantity_type`.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "quantity_type": { + "description": "The way to calculate cost for this budget alert. This is what `quantity_threshold` is measured in.", + "ref": "billing.AlertConfigurationQuantityType", + "launch_stage": "PUBLIC_PREVIEW" + }, + "scope_type": { + "description": "How the alert threshold is evaluated. Determines whether spend is tracked in aggregate or per individual user.", + "ref": "billing.AlertConfigurationScopeType", + "launch_stage": "PUBLIC_BETA" + }, + "time_period": { + "description": "The time window of usage data for the budget.", + "ref": "billing.AlertConfigurationTimePeriod", + "launch_stage": "PUBLIC_PREVIEW" + }, + "trigger_type": { + "description": "The evaluation method to determine when this budget alert is in a triggered state.", + "ref": "billing.AlertConfigurationTriggerType", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.AlertConfigurationQuantityType": { + "enum": [ + "LIST_PRICE_DOLLARS_USD" + ], + "enum_launch_stages": { + "LIST_PRICE_DOLLARS_USD": "PUBLIC_PREVIEW" + } + }, + "billing.AlertConfigurationScopeType": { + "description": "Evaluation scope for an alert configuration.", + "enum": [ + "ALERT_CONFIGURATION_SCOPE_TYPE_SHARED", + "ALERT_CONFIGURATION_SCOPE_TYPE_PER_USER" + ], + "enum_launch_stages": { + "ALERT_CONFIGURATION_SCOPE_TYPE_PER_USER": "PUBLIC_BETA", + "ALERT_CONFIGURATION_SCOPE_TYPE_SHARED": "PUBLIC_BETA" + } + }, + "billing.AlertConfigurationTimePeriod": { + "enum": [ + "MONTH" + ], + "enum_launch_stages": { + "MONTH": "PUBLIC_PREVIEW" + } + }, + "billing.AlertConfigurationTriggerType": { + "enum": [ + "CUMULATIVE_SPENDING_EXCEEDED" + ], + "enum_launch_stages": { + "CUMULATIVE_SPENDING_EXCEEDED": "PUBLIC_PREVIEW" + } + }, + "billing.BudgetConfiguration": { + "fields": { + "account_id": { + "description": "Databricks account ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "alert_configurations": { + "description": "Alerts to configure when this budget is in a triggered state. Budgets must have exactly one alert configuration.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "budget_configuration_id": { + "description": "Databricks budget configuration ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "create_time": { + "description": "Creation time of this budget configuration.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "display_name": { + "description": "Human-readable name of budget configuration. Max Length: 128", + "launch_stage": "PUBLIC_PREVIEW" + }, + "filter": { + "description": "Configured filters for this budget. These are applied to your account's usage to limit the scope of what is considered for this budget.\nLeave empty to include all usage for this account. All provided filters must be matched for usage to be included.", + "ref": "billing.BudgetConfigurationFilter", + "launch_stage": "PUBLIC_PREVIEW" + }, + "resource_type": { + "description": "The resource scope for this budget. Determines whether the budget tracks all resources or a specific resource.", + "ref": "billing.BudgetResourceType", + "launch_stage": "PUBLIC_BETA" + }, + "update_time": { + "description": "Update time of this budget configuration.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.BudgetConfigurationFilter": { + "fields": { + "tags": { + "description": "A list of tag keys and values that will limit the budget to usage that includes those specific custom tags.\nTags are case-sensitive and should be entered exactly as they appear in your usage data.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "workspace_id": { + "description": "If provided, usage must match with the provided Databricks workspace IDs.", + "ref": "billing.BudgetConfigurationFilterWorkspaceIdClause", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.BudgetConfigurationFilterClause": { + "fields": { + "operator": { + "ref": "billing.BudgetConfigurationFilterOperator", + "launch_stage": "PUBLIC_PREVIEW" + }, + "values": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.BudgetConfigurationFilterOperator": { + "enum": [ + "IN" + ], + "enum_launch_stages": { + "IN": "PUBLIC_PREVIEW" + } + }, + "billing.BudgetConfigurationFilterTagClause": { + "fields": { + "key": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "value": { + "ref": "billing.BudgetConfigurationFilterClause", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.BudgetConfigurationFilterWorkspaceIdClause": { + "fields": { + "operator": { + "ref": "billing.BudgetConfigurationFilterOperator", + "launch_stage": "PUBLIC_PREVIEW" + }, + "values": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.BudgetPolicy": { + "description": "Contains the BudgetPolicy details.", + "fields": { + "binding_workspace_ids": { + "description": "List of workspaces that this budget policy will be exclusively bound to.\nAn empty binding implies that this budget policy is open to any workspace in the account.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "custom_tags": { + "description": "A list of tags defined by the customer. At most 20 entries are allowed per policy.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "policy_id": { + "description": "The Id of the policy. This field is generated by Databricks and globally unique.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "policy_name": { + "description": "The name of the policy.\n- Must be unique among active policies.\n- Can contain only characters from the ISO 8859-1 (latin1) set.\n- Can't start with reserved keywords such as `databricks:default-policy`.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "billing.BudgetResourceType": { + "description": "Resource scope for a budget configuration. Determines whether the budget tracks all\nresources or a specific resource.", + "enum": [ + "BUDGET_RESOURCE_TYPE_ALL_RESOURCES", + "BUDGET_RESOURCE_TYPE_UNITY_AI_GATEWAY" + ], + "enum_launch_stages": { + "BUDGET_RESOURCE_TYPE_ALL_RESOURCES": "PUBLIC_BETA", + "BUDGET_RESOURCE_TYPE_UNITY_AI_GATEWAY": "PUBLIC_BETA" + } + }, + "billing.CreateBillingUsageDashboardRequest": { + "fields": { + "dashboard_type": { + "description": "Workspace level usage dashboard shows usage data for the specified workspace ID. Global level usage dashboard shows usage data for all workspaces in the account.", + "ref": "billing.UsageDashboardType", + "launch_stage": "GA" + }, + "major_version": { + "description": "The major version of the usage dashboard template to use. Defaults to VERSION_1.", + "ref": "billing.UsageDashboardMajorVersion", + "launch_stage": "GA" + }, + "workspace_id": { + "description": "The workspace ID of the workspace in which the usage dashboard is created.", + "launch_stage": "GA" + } + } + }, + "billing.CreateBillingUsageDashboardResponse": { + "fields": { + "dashboard_id": { + "description": "The unique id of the usage dashboard.", + "launch_stage": "GA" + } + } + }, + "billing.CreateBudgetConfigurationBudget": { + "fields": { + "account_id": { + "description": "Databricks account ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "alert_configurations": { + "description": "Alerts to configure when this budget is in a triggered state. Budgets must have exactly one alert configuration.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "display_name": { + "description": "Human-readable name of budget configuration. Max Length: 128", + "launch_stage": "PUBLIC_PREVIEW" + }, + "filter": { + "description": "Configured filters for this budget. These are applied to your account's usage to limit the scope of what is considered for this budget.\nLeave empty to include all usage for this account. All provided filters must be matched for usage to be included.", + "ref": "billing.BudgetConfigurationFilter", + "launch_stage": "PUBLIC_PREVIEW" + }, + "resource_type": { + "description": "The resource scope for this budget. Determines whether the budget tracks all resources or a specific resource.", + "ref": "billing.BudgetResourceType", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "billing.CreateBudgetConfigurationBudgetActionConfigurations": { + "fields": { + "action_type": { + "description": "The type of the action.", + "ref": "billing.ActionConfigurationType", + "launch_stage": "PUBLIC_PREVIEW" + }, + "target": { + "description": "Target for the action. For example, an email address.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.CreateBudgetConfigurationBudgetAlertConfigurations": { + "fields": { + "action_configurations": { + "description": "Configured actions for this alert. These define what happens when an alert enters a triggered state.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "principal_overrides": { + "description": "Per-principal threshold overrides for this alert. Only applies to per-user alerts (`scope_type` = `ALERT_CONFIGURATION_SCOPE_TYPE_PER_USER`); ignored for shared alerts.", + "launch_stage": "PUBLIC_BETA" + }, + "quantity_threshold": { + "description": "The threshold for the budget alert to determine if it is in a triggered state. The number is evaluated based on `quantity_type`.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "quantity_type": { + "description": "The way to calculate cost for this budget alert. This is what `quantity_threshold` is measured in.", + "ref": "billing.AlertConfigurationQuantityType", + "launch_stage": "PUBLIC_PREVIEW" + }, + "scope_type": { + "description": "How the alert threshold is evaluated. Determines whether spend is tracked in aggregate or per individual user.", + "ref": "billing.AlertConfigurationScopeType", + "launch_stage": "PUBLIC_BETA" + }, + "time_period": { + "description": "The time window of usage data for the budget.", + "ref": "billing.AlertConfigurationTimePeriod", + "launch_stage": "PUBLIC_PREVIEW" + }, + "trigger_type": { + "description": "The evaluation method to determine when this budget alert is in a triggered state.", + "ref": "billing.AlertConfigurationTriggerType", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.CreateBudgetConfigurationRequest": { + "fields": { + "budget": { + "description": "Properties of the new budget configuration.", + "ref": "billing.CreateBudgetConfigurationBudget", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.CreateBudgetConfigurationResponse": { + "fields": { + "budget": { + "description": "The created budget configuration.", + "ref": "billing.BudgetConfiguration", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.CreateBudgetPolicyRequest": { + "description": "A request to create a BudgetPolicy.", + "fields": { + "policy": { + "description": "The policy to create. `policy_id` needs to be empty as it will be generated\n`policy_name` must be provided, custom_tags may need to be provided\ndepending on the cloud provider. All other fields are optional.", + "ref": "billing.BudgetPolicy", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "request_id": { + "description": "A unique identifier for this request. Restricted to 36 ASCII characters.\nA random UUID is recommended.\nThis request is only idempotent if a `request_id` is provided.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "billing.CreateLogDeliveryConfigurationParams": { + "description": "*\nLog Delivery Configuration", + "fields": { + "config_name": { + "description": "The optional human-readable name of the log delivery configuration. Defaults to empty.", + "launch_stage": "GA" + }, + "credentials_id": { + "description": "The ID for a method:credentials/create that represents the AWS IAM role with policy and trust relationship as described in the main billable usage documentation page. See [Configure billable usage delivery](https://docs.databricks.com/administration-guide/account-settings/billable-usage-delivery.html).", + "launch_stage": "GA" + }, + "delivery_path_prefix": { + "description": "The optional delivery path prefix within Amazon S3 storage. Defaults to empty, which means that logs are delivered to the root of the bucket. This must be a valid S3 object key. This must not start or end with a slash character.", + "launch_stage": "GA" + }, + "delivery_start_time": { + "description": "This field applies only if log_type is BILLABLE_USAGE. This is the optional start month and year for delivery, specified in YYYY-MM format. Defaults to current year and month. BILLABLE_USAGE logs are not available for usage before March 2019 (2019-03).", + "launch_stage": "GA" + }, + "log_type": { + "description": "Log delivery type. Supported values are:\n* `BILLABLE_USAGE` — Configure [billable usage log delivery](https://docs.databricks.com/administration-guide/account-settings/billable-usage-delivery.html). For the CSV schema, see the [View billable usage](https://docs.databricks.com/administration-guide/account-settings/usage.html).\n* `AUDIT_LOGS` — Configure [audit log delivery](https://docs.databricks.com/administration-guide/account-settings/audit-logs.html). For the JSON schema, see [Configure audit logging](https://docs.databricks.com/administration-guide/account-settings/audit-logs.html)", + "ref": "billing.LogType", + "launch_stage": "GA" + }, + "output_format": { + "description": "The file type of log delivery.\n* If `log_type` is `BILLABLE_USAGE`, this value must be `CSV`. Only the CSV (comma-separated values) format is supported. For the schema, see the [View billable usage](https://docs.databricks.com/administration-guide/account-settings/usage.html)\n* If `log_type` is `AUDIT_LOGS`, this value must be `JSON`. Only the JSON (JavaScript Object Notation) format is supported. For the schema, see the [Configuring audit logs](https://docs.databricks.com/administration-guide/account-settings/audit-logs.html).", + "ref": "billing.OutputFormat", + "launch_stage": "GA" + }, + "status": { + "description": "Status of log delivery configuration. Set to `ENABLED` (enabled) or `DISABLED` (disabled). Defaults to `ENABLED`. You can [enable or disable the configuration](#operation/patch-log-delivery-config-status) later. Deletion of a configuration is not supported, so disable a log delivery configuration that is no longer needed.", + "ref": "billing.LogDeliveryConfigStatus", + "launch_stage": "GA" + }, + "storage_configuration_id": { + "description": "The ID for a method:storage/create that represents the S3 bucket with bucket policy as described in the main billable usage documentation page. See [Configure billable usage delivery](https://docs.databricks.com/administration-guide/account-settings/billable-usage-delivery.html).", + "launch_stage": "GA" + }, + "workspace_ids_filter": { + "description": "Optional filter that specifies workspace IDs to deliver logs for. By default the workspace filter is empty and log delivery applies at the account level, delivering workspace-level logs for all workspaces in your account, plus account level logs. You can optionally set this field to an array of workspace IDs (each one is an `int64`) to which log delivery should apply, in which case only workspace-level logs relating to the specified workspaces are delivered. If you plan to use different log delivery configurations for different workspaces, set this field explicitly. Be aware that delivery configurations mentioning specific workspaces won't apply to new workspaces created in the future, and delivery won't include account level logs. For some types of Databricks deployments there is only one workspace per account ID, so this field is unnecessary.", + "launch_stage": "GA" + } + } + }, + "billing.DeleteBudgetConfigurationRequest": {}, + "billing.DeleteBudgetConfigurationResponse": {}, + "billing.DeleteBudgetPolicyRequest": {}, + "billing.DeliveryStatus": { + "description": "*\nThe status string for log delivery. Possible values are:\n`CREATED`: There were no log delivery attempts since the config was created.\n`SUCCEEDED`: The latest attempt of log delivery has succeeded completely.\n`USER_FAILURE`: The latest attempt of log delivery failed because of misconfiguration of customer provided permissions on role or storage.\n`SYSTEM_FAILURE`: The latest attempt of log delivery failed because of an Databricks internal error. Contact support if it doesn't go away soon.\n`NOT_FOUND`: The log delivery status as the configuration has been disabled since the release of this feature or there are no workspaces in the account.", + "enum": [ + "CREATED", + "SUCCEEDED", + "USER_FAILURE", + "SYSTEM_FAILURE", + "NOT_FOUND" + ], + "enum_launch_stages": { + "CREATED": "GA", + "NOT_FOUND": "GA", + "SUCCEEDED": "GA", + "SYSTEM_FAILURE": "GA", + "USER_FAILURE": "GA" + } + }, + "billing.DownloadRequest": { + "fields": { + "end_month": { + "description": "Format: `YYYY-MM`. Last month to return billable usage logs for.\nThis field is required.", + "launch_stage": "GA" + }, + "personal_data": { + "description": "Specify whether to include personally identifiable information in\nthe billable usage logs, for example the email addresses of cluster\ncreators. Handle this information with care. Defaults to false.", + "launch_stage": "GA" + }, + "start_month": { + "description": "Format specification for month in the format `YYYY-MM`. This is\nused to specify billable usage `start_month` and `end_month`\nproperties. **Note**: Billable usage logs are unavailable before\nMarch 2019 (`2019-03`).", + "launch_stage": "GA" + } + } + }, + "billing.DownloadResponse": { + "fields": { + "contents": { + "launch_stage": "GA" + } + } + }, + "billing.Filter": { + "description": "Structured representation of a filter to be applied to a list of policies. All specified filters\nwill be applied in conjunction.", + "fields": { + "creator_user_id": { + "description": "The policy creator user id to be filtered on.\nIf unspecified, all policies will be returned.", + "deprecated": true, + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "creator_user_name": { + "description": "Deprecated: Do not use this field in new integrations. Creator filtering will be removed in a\nfuture version.\nThe policy creator user name to be filtered on.\nIf unspecified, all policies will be returned.", + "deprecated": true, + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "policy_name": { + "description": "The partial name of policies to be filtered on.\nIf unspecified, all policies will be returned.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "billing.GetBillingUsageDashboardRequest": { + "fields": { + "dashboard_type": { + "description": "Workspace level usage dashboard shows usage data for the specified workspace ID. Global level usage dashboard shows usage data for all workspaces in the account.", + "ref": "billing.UsageDashboardType", + "launch_stage": "GA" + }, + "workspace_id": { + "description": "The workspace ID of the workspace in which the usage dashboard is created.", + "launch_stage": "GA" + } + } + }, + "billing.GetBillingUsageDashboardResponse": { + "fields": { + "dashboard_id": { + "description": "The unique id of the usage dashboard.", + "launch_stage": "GA" + }, + "dashboard_url": { + "description": "The URL of the usage dashboard.", + "launch_stage": "GA" + } + } + }, + "billing.GetBudgetConfigurationRequest": {}, + "billing.GetBudgetConfigurationResponse": { + "fields": { + "budget": { + "ref": "billing.BudgetConfiguration", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.GetBudgetPolicyRequest": {}, + "billing.GetLogDeliveryConfigurationResponse": { + "fields": { + "log_delivery_configuration": { + "description": "The fetched log delivery configuration", + "ref": "billing.LogDeliveryConfiguration", + "launch_stage": "GA" + } + } + }, + "billing.GetLogDeliveryRequest": {}, + "billing.LimitConfig": { + "description": "The limit configuration of the policy.\nLimit configuration provide a budget policy level cost control by enforcing the limit." + }, + "billing.ListBudgetConfigurationsRequest": { + "fields": { + "page_token": { + "description": "A page token received from a previous get all budget configurations call. This token can be used to retrieve the subsequent page.\nRequests first page if absent.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.ListBudgetConfigurationsResponse": { + "fields": { + "budgets": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "next_page_token": { + "description": "Token which can be sent as `page_token` to retrieve the next page of results. If this field is omitted, there are no subsequent budgets.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.ListBudgetPoliciesRequest": { + "fields": { + "filter_by": { + "description": "A filter to apply to the list of policies.", + "ref": "billing.Filter", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_size": { + "description": "The maximum number of budget policies to return.\nIf unspecified, at most 100 budget policies will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous `ListServerlessPolicies` call.\nProvide this to retrieve the subsequent page.\nIf unspecified, the first page will be returned.\n\nWhen paginating, all other parameters provided to `ListServerlessPoliciesRequest` must match\nthe call that provided the page token.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "sort_spec": { + "description": "The sort specification.", + "ref": "billing.SortSpec", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "billing.ListBudgetPoliciesResponse": { + "description": "A list of policies.", + "fields": { + "next_page_token": { + "description": "A token that can be sent as `page_token` to retrieve the next page.\nIf this field is omitted, there are no subsequent pages.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "policies": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "previous_page_token": { + "description": "A token that can be sent as `page_token` to retrieve the previous page.\nIn this field is omitted, there are no previous pages.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.ListLogDeliveryRequest": { + "fields": { + "credentials_id": { + "description": "The Credentials id to filter the search results with", + "launch_stage": "GA" + }, + "page_token": { + "description": "A page token received from a previous get all budget configurations call. This token can be used to retrieve the subsequent page.\nRequests first page if absent.", + "launch_stage": "GA" + }, + "status": { + "description": "The log delivery status to filter the search results with", + "ref": "billing.LogDeliveryConfigStatus", + "launch_stage": "GA" + }, + "storage_configuration_id": { + "description": "The Storage Configuration id to filter the search results with", + "launch_stage": "GA" + } + } + }, + "billing.LogDeliveryConfigStatus": { + "description": "*\nLog Delivery Status\n\n`ENABLED`: All dependencies have executed and succeeded\n`DISABLED`: At least one dependency has succeeded", + "enum": [ + "ENABLED", + "DISABLED" + ], + "enum_launch_stages": { + "DISABLED": "GA", + "ENABLED": "GA" + } + }, + "billing.LogDeliveryConfiguration": { + "description": "*\nLog Delivery Configuration", + "fields": { + "account_id": { + "description": "Databricks account ID.", + "launch_stage": "GA" + }, + "config_id": { + "description": "The unique UUID of log delivery configuration", + "launch_stage": "GA" + }, + "config_name": { + "description": "The optional human-readable name of the log delivery configuration. Defaults to empty.", + "launch_stage": "GA" + }, + "creation_time": { + "description": "Time in epoch milliseconds when the log delivery configuration was created.", + "launch_stage": "GA" + }, + "credentials_id": { + "description": "The ID for a method:credentials/create that represents the AWS IAM role with policy and trust relationship as described in the main billable usage documentation page. See [Configure billable usage delivery](https://docs.databricks.com/administration-guide/account-settings/billable-usage-delivery.html).", + "launch_stage": "GA" + }, + "delivery_path_prefix": { + "description": "The optional delivery path prefix within Amazon S3 storage. Defaults to empty, which means that logs are delivered to the root of the bucket. This must be a valid S3 object key. This must not start or end with a slash character.", + "launch_stage": "GA" + }, + "delivery_start_time": { + "description": "This field applies only if log_type is BILLABLE_USAGE. This is the optional start month and year for delivery, specified in YYYY-MM format. Defaults to current year and month. BILLABLE_USAGE logs are not available for usage before March 2019 (2019-03).", + "launch_stage": "GA" + }, + "log_delivery_status": { + "description": "The LogDeliveryStatus of this log delivery configuration", + "ref": "billing.LogDeliveryStatus", + "launch_stage": "GA" + }, + "log_type": { + "description": "Log delivery type. Supported values are:\n* `BILLABLE_USAGE` — Configure [billable usage log delivery](https://docs.databricks.com/administration-guide/account-settings/billable-usage-delivery.html). For the CSV schema, see the [View billable usage](https://docs.databricks.com/administration-guide/account-settings/usage.html).\n* `AUDIT_LOGS` — Configure [audit log delivery](https://docs.databricks.com/administration-guide/account-settings/audit-logs.html). For the JSON schema, see [Configure audit logging](https://docs.databricks.com/administration-guide/account-settings/audit-logs.html)", + "ref": "billing.LogType", + "launch_stage": "GA" + }, + "output_format": { + "description": "The file type of log delivery.\n* If `log_type` is `BILLABLE_USAGE`, this value must be `CSV`. Only the CSV (comma-separated values) format is supported. For the schema, see the [View billable usage](https://docs.databricks.com/administration-guide/account-settings/usage.html)\n* If `log_type` is `AUDIT_LOGS`, this value must be `JSON`. Only the JSON (JavaScript Object Notation) format is supported. For the schema, see the [Configuring audit logs](https://docs.databricks.com/administration-guide/account-settings/audit-logs.html).", + "ref": "billing.OutputFormat", + "launch_stage": "GA" + }, + "status": { + "description": "Status of log delivery configuration. Set to `ENABLED` (enabled) or `DISABLED` (disabled). Defaults to `ENABLED`. You can [enable or disable the configuration](#operation/patch-log-delivery-config-status) later. Deletion of a configuration is not supported, so disable a log delivery configuration that is no longer needed.", + "ref": "billing.LogDeliveryConfigStatus", + "launch_stage": "GA" + }, + "storage_configuration_id": { + "description": "The ID for a method:storage/create that represents the S3 bucket with bucket policy as described in the main billable usage documentation page. See [Configure billable usage delivery](https://docs.databricks.com/administration-guide/account-settings/billable-usage-delivery.html).", + "launch_stage": "GA" + }, + "update_time": { + "description": "Time in epoch milliseconds when the log delivery configuration was updated.", + "launch_stage": "GA" + }, + "workspace_ids_filter": { + "description": "Optional filter that specifies workspace IDs to deliver logs for. By default the workspace filter is empty and log delivery applies at the account level, delivering workspace-level logs for all workspaces in your account, plus account level logs. You can optionally set this field to an array of workspace IDs (each one is an `int64`) to which log delivery should apply, in which case only workspace-level logs relating to the specified workspaces are delivered. If you plan to use different log delivery configurations for different workspaces, set this field explicitly. Be aware that delivery configurations mentioning specific workspaces won't apply to new workspaces created in the future, and delivery won't include account level logs. For some types of Databricks deployments there is only one workspace per account ID, so this field is unnecessary.", + "launch_stage": "GA" + } + } + }, + "billing.LogDeliveryStatus": { + "fields": { + "last_attempt_time": { + "description": "The UTC time for the latest log delivery attempt.", + "launch_stage": "GA" + }, + "last_successful_attempt_time": { + "description": "The UTC time for the latest successful log delivery.", + "launch_stage": "GA" + }, + "message": { + "description": "Informative message about the latest log delivery attempt. If the log delivery fails with USER_FAILURE, error details will be provided for fixing misconfigurations in cloud permissions.", + "launch_stage": "GA" + }, + "status": { + "description": "Enum that describes the status. Possible values are:\n* `CREATED`: There were no log delivery attempts since the config was created.\n* `SUCCEEDED`: The latest attempt of log delivery has succeeded completely.\n* `USER_FAILURE`: The latest attempt of log delivery failed because of misconfiguration of customer provided permissions on role or storage.\n* `SYSTEM_FAILURE`: The latest attempt of log delivery failed because of an Databricks internal error. Contact support if it doesn't go away soon.\n* `NOT_FOUND`: The log delivery status as the configuration has been disabled since the release of this feature or there are no workspaces in the account.", + "ref": "billing.DeliveryStatus", + "launch_stage": "GA" + } + } + }, + "billing.LogType": { + "description": "*\nLog Delivery Type", + "enum": [ + "BILLABLE_USAGE", + "AUDIT_LOGS" + ], + "enum_launch_stages": { + "AUDIT_LOGS": "GA", + "BILLABLE_USAGE": "GA" + } + }, + "billing.OutputFormat": { + "description": "*\nLog Delivery Output Format", + "enum": [ + "CSV", + "JSON" + ], + "enum_launch_stages": { + "CSV": "GA", + "JSON": "GA" + } + }, + "billing.PatchStatusResponse": {}, + "billing.PrincipalOverride": { + "description": "Per-principal threshold override on a PER_USER alert: bumps the alert's quantity_threshold for one principal_id.", + "fields": { + "override_threshold": { + "description": "Dollar amount that overrides the parent alert's quantity_threshold for this principal.", + "launch_stage": "PUBLIC_BETA" + }, + "principal_id": { + "description": "Account-level principal id (user, group, or service principal).", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "billing.SortSpec": { + "fields": { + "descending": { + "description": "Whether to sort in descending order.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "field": { + "description": "The filed to sort by", + "ref": "billing.SortSpecField", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "billing.SortSpecField": { + "enum": [ + "POLICY_NAME" + ], + "enum_launch_stages": { + "POLICY_NAME": "PUBLIC_PREVIEW" + } + }, + "billing.UpdateBudgetConfigurationBudget": { + "fields": { + "account_id": { + "description": "Databricks account ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "alert_configurations": { + "description": "Alerts to configure when this budget is in a triggered state. Budgets must have exactly one alert configuration.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "budget_configuration_id": { + "description": "Databricks budget configuration ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "display_name": { + "description": "Human-readable name of budget configuration. Max Length: 128", + "launch_stage": "PUBLIC_PREVIEW" + }, + "filter": { + "description": "Configured filters for this budget. These are applied to your account's usage to limit the scope of what is considered for this budget.\nLeave empty to include all usage for this account. All provided filters must be matched for usage to be included.", + "ref": "billing.BudgetConfigurationFilter", + "launch_stage": "PUBLIC_PREVIEW" + }, + "resource_type": { + "description": "The resource scope for this budget. Determines whether the budget tracks all resources or a specific resource.", + "ref": "billing.BudgetResourceType", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "billing.UpdateBudgetConfigurationRequest": { + "fields": { + "budget": { + "description": "The updated budget. This will overwrite the budget specified by the budget ID.", + "ref": "billing.UpdateBudgetConfigurationBudget", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.UpdateBudgetConfigurationResponse": { + "fields": { + "budget": { + "description": "The updated budget.", + "ref": "billing.BudgetConfiguration", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.UpdateBudgetPolicyRequest": { + "fields": { + "limit_config": { + "description": "DEPRECATED. This is redundant field as LimitConfig is part of the BudgetPolicy", + "ref": "billing.LimitConfig", + "deprecated": true, + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "policy": { + "description": "The policy to update. `creator_user_id` cannot be specified in the request. All other fields\nmust be specified even if not changed. The `policy_id` is used to identify the policy to\nupdate.", + "ref": "billing.BudgetPolicy", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "billing.UpdateLogDeliveryConfigurationStatusRequest": { + "description": "*\nUpdate Log Delivery Configuration", + "fields": { + "status": { + "description": "Status of log delivery configuration. Set to `ENABLED` (enabled) or `DISABLED` (disabled). Defaults to `ENABLED`. You can [enable or disable the configuration](#operation/patch-log-delivery-config-status) later. Deletion of a configuration is not supported, so disable a log delivery configuration that is no longer needed.", + "ref": "billing.LogDeliveryConfigStatus", + "launch_stage": "GA" + } + } + }, + "billing.UsageDashboardMajorVersion": { + "enum": [ + "USAGE_DASHBOARD_MAJOR_VERSION_1", + "USAGE_DASHBOARD_MAJOR_VERSION_2" + ], + "enum_launch_stages": { + "USAGE_DASHBOARD_MAJOR_VERSION_1": "GA", + "USAGE_DASHBOARD_MAJOR_VERSION_2": "GA" + } + }, + "billing.UsageDashboardType": { + "enum": [ + "USAGE_DASHBOARD_TYPE_WORKSPACE", + "USAGE_DASHBOARD_TYPE_GLOBAL" + ], + "enum_launch_stages": { + "USAGE_DASHBOARD_TYPE_GLOBAL": "GA", + "USAGE_DASHBOARD_TYPE_WORKSPACE": "GA" + } + }, + "billing.WrappedCreateLogDeliveryConfiguration": { + "description": "*\nProperties of the new log delivery configuration.", + "fields": { + "log_delivery_configuration": { + "ref": "billing.CreateLogDeliveryConfigurationParams", + "launch_stage": "GA" + } + } + }, + "billing.WrappedLogDeliveryConfiguration": { + "fields": { + "log_delivery_configuration": { + "description": "The created log delivery configuration", + "ref": "billing.LogDeliveryConfiguration", + "launch_stage": "GA" + } + } + }, + "billing.WrappedLogDeliveryConfigurations": { + "fields": { + "log_delivery_configurations": { + "description": "Log delivery configurations were returned successfully.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Token which can be sent as `page_token` to retrieve the next page of results. If this field is omitted, there are no subsequent budgets.", + "launch_stage": "GA" + } + } + }, + "bundledeployments.CompleteVersionRequest": { + "description": "A request to complete a Version.", + "fields": { + "completion_reason": { + "description": "The reason for completing the version. Must be VERSION_COMPLETE_SUCCESS\nor VERSION_COMPLETE_FAILURE.", + "ref": "bundledeployments.VersionComplete", + "launch_stage": "PRIVATE_PREVIEW" + }, + "force": { + "description": "If true, force-completes the version even if the caller is not the\noriginal creator.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "bundledeployments.CreateDeploymentRequest": { + "fields": { + "deployment": { + "description": "The deployment to create. `initial_parent_path` is required. `display_name`, `target_name`,\n`deployment_mode`, and `workspace_info` may be set; every other field is assigned by the\nservice and ignored on input.", + "ref": "bundledeployments.Deployment", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "bundledeployments.CreateVersionRequest": { + "fields": { + "version": { + "description": "The version to create.", + "ref": "bundledeployments.Version", + "launch_stage": "PRIVATE_PREVIEW" + }, + "version_id": { + "description": "The ID to use for the version, which becomes the final component of\nthe version's resource name. A numeric string (base-10, fits in a\nsigned 64-bit integer) chosen by the caller; must be greater than or\nequal to 1. Must be numerically greater than the deployment's\nmost recent version (see `version.previous_version_id`); it does not\nneed to start at 1 or increase by exactly 1. If the value is not\nnumerically greater, the server returns `INVALID_PARAMETER_VALUE`.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "bundledeployments.DashboardMetadata": { + "description": "Dashboard-specific per-resource metadata. Set only for dashboard resources.", + "fields": { + "definition_path": { + "description": "Path of the file that declares this dashboard, relative to the bundle's\nworkspace.file_path (Deployment.workspace_info.file_path) — join the two to\nget the file's absolute workspace path.\n\nFor now this lives only on the dashboard metadata, and is a single string\nbecause it was a single string (`relative_path`) in the legacy bundle\nmetadata.json. We may generalize it in the future: lifting it to a\ntop-level field on Resource/Operation (every resource type has a definition\nlocation) and converting it to a repeated field, since a resource can be\ndeclared across multiple files/locations.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "source_path": { + "description": "Path of the dashboard's source artifact (its `.lvdash.json`), relative to\nthe deployment root.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "bundledeployments.DeleteDeploymentRequest": {}, + "bundledeployments.Deployment": { + "description": "A bundle deployment registered with the control plane.", + "fields": { + "create_time": { + "description": "When the deployment was created.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "The user who created the deployment (email or principal name). Empty if authoritative\ndeployment metadata does not identify a creator or the principal cannot be resolved.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "deployment_mode": { + "description": "Bundle target deployment mode (development or production).", + "ref": "bundledeployments.DeploymentMode", + "launch_stage": "PRIVATE_PREVIEW" + }, + "destroy_time": { + "description": "When deletion was recorded. Unset if deletion has not been recorded.\nThis response metadata does not determine the deployment's lifecycle status.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "destroyed_by": { + "description": "The user who destroyed the deployment (email or principal name).\nUnset if the deployment has not been destroyed.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "display_name": { + "description": "Human-readable name for the deployment, up to 256 characters.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "git_info": { + "description": "Git provenance of the deployment's source, derived from the latest version.", + "ref": "bundledeployments.GitInfo", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "initial_parent_path": { + "description": "The workspace path of the existing folder where the deployment is initially created. Must be\nabsolute and canonical, with single separators, no `.` or `..` segments, and no trailing slash\nunless the path is `/`. It may contain at most 24 path segments, excluding an optional leading\n`/Workspace` segment. The complete path may contain up to 1,024 characters, and each segment\nmay contain up to 511 characters. This field is input only and is not returned in create, get,\nor list responses.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "last_successful_version_id": { + "description": "The version_id of the most recent version that completed successfully.\nUnset until a version has completed successfully. Unlike last_version_id,\nit is not advanced when a version fails, so it always points at the last\nknown-good deployment state (or is unset if there has never been one).", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_version_id": { + "description": "The version_id of the most recent deployment version.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Resource name of the deployment.\nFormat: deployments/{deployment_id}", + "launch_stage": "PRIVATE_PREVIEW" + }, + "status": { + "description": "Current status of the deployment.", + "ref": "bundledeployments.DeploymentStatus", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "target_name": { + "description": "The bundle target name associated with this deployment.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "update_time": { + "description": "When the deployment was last updated.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_by": { + "description": "The user who most recently updated the deployment (email or principal name). Empty if\nauthoritative deployment metadata does not identify a modifier or the principal cannot be\nresolved.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "workspace_info": { + "description": "Workspace location of the deployment.", + "ref": "bundledeployments.WorkspaceInfo", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "bundledeployments.DeploymentMode": { + "description": "Bundle target deployment mode. Mirrors the `mode` field on a bundle target\nin `databricks.yml` (see https://docs.databricks.com/dev-tools/bundles/deployment-modes).", + "enum": [ + "DEPLOYMENT_MODE_DEVELOPMENT", + "DEPLOYMENT_MODE_PRODUCTION" + ], + "enum_launch_stages": { + "DEPLOYMENT_MODE_DEVELOPMENT": "PRIVATE_PREVIEW", + "DEPLOYMENT_MODE_PRODUCTION": "PRIVATE_PREVIEW" + } + }, + "bundledeployments.DeploymentResourceType": { + "description": "Type of a deployment resource.", + "enum": [ + "DEPLOYMENT_RESOURCE_TYPE_JOB", + "DEPLOYMENT_RESOURCE_TYPE_PIPELINE", + "DEPLOYMENT_RESOURCE_TYPE_MODEL", + "DEPLOYMENT_RESOURCE_TYPE_REGISTERED_MODEL", + "DEPLOYMENT_RESOURCE_TYPE_EXPERIMENT", + "DEPLOYMENT_RESOURCE_TYPE_MODEL_SERVING_ENDPOINT", + "DEPLOYMENT_RESOURCE_TYPE_QUALITY_MONITOR", + "DEPLOYMENT_RESOURCE_TYPE_SCHEMA", + "DEPLOYMENT_RESOURCE_TYPE_VOLUME", + "DEPLOYMENT_RESOURCE_TYPE_CLUSTER", + "DEPLOYMENT_RESOURCE_TYPE_DASHBOARD", + "DEPLOYMENT_RESOURCE_TYPE_APP", + "DEPLOYMENT_RESOURCE_TYPE_CATALOG", + "DEPLOYMENT_RESOURCE_TYPE_EXTERNAL_LOCATION", + "DEPLOYMENT_RESOURCE_TYPE_SECRET_SCOPE", + "DEPLOYMENT_RESOURCE_TYPE_ALERT", + "DEPLOYMENT_RESOURCE_TYPE_SQL_WAREHOUSE", + "DEPLOYMENT_RESOURCE_TYPE_DATABASE_INSTANCE", + "DEPLOYMENT_RESOURCE_TYPE_DATABASE_CATALOG", + "DEPLOYMENT_RESOURCE_TYPE_SYNCED_DATABASE_TABLE", + "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_PROJECT", + "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_BRANCH", + "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_ENDPOINT", + "DEPLOYMENT_RESOURCE_TYPE_VECTOR_SEARCH_ENDPOINT", + "DEPLOYMENT_RESOURCE_TYPE_VECTOR_SEARCH_INDEX", + "DEPLOYMENT_RESOURCE_TYPE_JOB_RUN", + "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_CATALOG", + "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_SYNCED_TABLE", + "DEPLOYMENT_RESOURCE_TYPE_GENIE_SPACE", + "DEPLOYMENT_RESOURCE_TYPE_INSTANCE_POOL", + "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_DATABASE", + "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_ROLE", + "DEPLOYMENT_RESOURCE_TYPE_SECRET", + "DEPLOYMENT_RESOURCE_TYPE_CLUSTER_POLICY" + ], + "enum_launch_stages": { + "DEPLOYMENT_RESOURCE_TYPE_ALERT": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_APP": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_CATALOG": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_CLUSTER": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_CLUSTER_POLICY": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_DASHBOARD": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_DATABASE_CATALOG": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_DATABASE_INSTANCE": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_EXPERIMENT": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_EXTERNAL_LOCATION": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_GENIE_SPACE": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_INSTANCE_POOL": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_JOB": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_JOB_RUN": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_MODEL": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_MODEL_SERVING_ENDPOINT": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_PIPELINE": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_BRANCH": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_CATALOG": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_DATABASE": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_ENDPOINT": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_PROJECT": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_ROLE": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_SYNCED_TABLE": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_QUALITY_MONITOR": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_REGISTERED_MODEL": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_SCHEMA": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_SECRET": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_SECRET_SCOPE": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_SQL_WAREHOUSE": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_SYNCED_DATABASE_TABLE": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_VECTOR_SEARCH_ENDPOINT": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_VECTOR_SEARCH_INDEX": "PRIVATE_PREVIEW", + "DEPLOYMENT_RESOURCE_TYPE_VOLUME": "PRIVATE_PREVIEW" + } + }, + "bundledeployments.DeploymentStatus": { + "description": "Status of a deployment.", + "enum": [ + "DEPLOYMENT_STATUS_ACTIVE", + "DEPLOYMENT_STATUS_FAILED", + "DEPLOYMENT_STATUS_IN_PROGRESS", + "DEPLOYMENT_STATUS_DELETED" + ], + "enum_launch_stages": { + "DEPLOYMENT_STATUS_ACTIVE": "PRIVATE_PREVIEW", + "DEPLOYMENT_STATUS_DELETED": "PRIVATE_PREVIEW", + "DEPLOYMENT_STATUS_FAILED": "PRIVATE_PREVIEW", + "DEPLOYMENT_STATUS_IN_PROGRESS": "PRIVATE_PREVIEW" + } + }, + "bundledeployments.GetDeploymentRequest": {}, + "bundledeployments.GetOperationRequest": {}, + "bundledeployments.GetResourceRequest": {}, + "bundledeployments.GetVersionRequest": {}, + "bundledeployments.GitInfo": { + "description": "Git provenance of a bundle's source, captured at deploy time. Lets consumers\nlink a deployed resource back to its source in version control.", + "fields": { + "branch": { + "description": "Branch the source was deployed from.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "commit": { + "description": "Commit SHA of the deployed source.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "origin_url": { + "description": "URL of the git remote the source was deployed from.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "bundledeployments.HeartbeatRequest": { + "description": "A request to send a heartbeat for a Version." + }, + "bundledeployments.HeartbeatResponse": { + "description": "Response for Heartbeat.", + "fields": { + "expire_time": { + "description": "The new lock expiry time after renewal.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "bundledeployments.ListDeploymentsRequest": { + "fields": { + "page_size": { + "description": "The maximum number of deployments to return. The service may return\nfewer than this value.\nIf unspecified, at most 20 deployments will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous `ListDeployments` call.\nProvide this to retrieve the subsequent page.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "show_deleted": { + "description": "Whether to include soft-deleted deployments in the response. Defaults to\nfalse. When true, returns both live and soft-deleted deployments visible to\nthe caller, subject to the filter. Soft-deleted deployments have status\n`DEPLOYMENT_STATUS_DELETED`.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "bundledeployments.ListDeploymentsResponse": { + "description": "Response for ListDeployments.", + "fields": { + "deployments": { + "description": "The deployments from the queried workspace.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "next_page_token": { + "description": "A token, which can be sent as `page_token` to retrieve the next page.\nIf this field is omitted, there are no subsequent pages.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "bundledeployments.ListOperationsRequest": { + "fields": { + "page_size": { + "description": "The maximum number of operations to return. The service may return\nfewer than this value.\nIf unspecified, at most 50 operations will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous `ListOperations` call.\nProvide this to retrieve the subsequent page.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "bundledeployments.ListOperationsResponse": { + "description": "Response for ListOperations.", + "fields": { + "next_page_token": { + "description": "A token, which can be sent as `page_token` to retrieve the next page.\nIf this field is omitted, there are no subsequent pages.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "operations": { + "description": "The resource operations under the specified version.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "bundledeployments.ListResourcesRequest": { + "fields": { + "page_size": { + "description": "The maximum number of resources to return. The service may return\nfewer than this value.\nIf unspecified, at most 50 resources will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous `ListResources` call.\nProvide this to retrieve the subsequent page.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "bundledeployments.ListResourcesResponse": { + "description": "Response for ListResources.", + "fields": { + "next_page_token": { + "description": "A token, which can be sent as `page_token` to retrieve the next page.\nIf this field is omitted, there are no subsequent pages.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "resources": { + "description": "The resources under the specified deployment.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "bundledeployments.ListVersionsRequest": { + "fields": { + "page_size": { + "description": "The maximum number of versions to return. The service may return\nfewer than this value.\nIf unspecified, at most 20 versions will be returned.\nThe maximum value is 100; values above 100 will be coerced to 100.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous `ListVersions` call.\nProvide this to retrieve the subsequent page.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "bundledeployments.ListVersionsResponse": { + "description": "Response for ListVersions.", + "fields": { + "next_page_token": { + "description": "A token, which can be sent as `page_token` to retrieve the next page.\nIf this field is omitted, there are no subsequent pages.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "versions": { + "description": "The versions under the specified deployment.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "bundledeployments.Operation": { + "description": "An operation on a single resource performed during a version. The full set\nof operations for a version is recorded when the version is created: each\ncarries its `resource_key` and `action_type` and starts in\n`OPERATION_STATUS_PENDING`. As each resource is applied, its operation is\nupdated (via UpdateOperation) to record the result of applying the change to\nthe workspace. `state`, `error_message`, `resource_id`, `status`, and\n`dashboard_metadata` may be updated afterwards, guarded by `sequence_id` for\noptimistic concurrency control; all other fields are immutable once recorded.", + "fields": { + "action_type": { + "description": "The type of operation performed on this resource. Set when the version is\ncreated and immutable thereafter.", + "ref": "bundledeployments.OperationActionType", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "create_time": { + "description": "When the operation was recorded.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "dashboard_metadata": { + "description": "Dashboard-specific metadata; set only for dashboard resources. Mutable: may\nbe set or updated via UpdateOperation as the resource is applied, and is\nmirrored onto the corresponding deployment-level resource.", + "ref": "bundledeployments.DashboardMetadata", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "error_message": { + "description": "Error message if the operation failed. Set when status is\nOPERATION_STATUS_FAILED. Captures the error encountered while applying the\nresource to the workspace. Mutable: may be updated after creation via\nUpdateOperation; setting it to an empty string clears it. After an update\nis applied, an operation whose status is OPERATION_STATUS_SUCCEEDED cannot\ncarry an error_message.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Resource name of the operation.\nFormat: deployments/{deployment_id}/versions/{version_id}/operations/{resource_key}", + "launch_stage": "PRIVATE_PREVIEW" + }, + "resource_id": { + "description": "ID of the actual resource in the workspace (e.g. the job ID, pipeline ID).\nRequired whenever `state` is set, because state records a resource that\nexists. A CREATE or RECREATE that has not produced its resource yet records\nneither. Mutable: may be filled in (or corrected) later via UpdateOperation\nonce the ID is known.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "resource_key": { + "description": "Resource identifier within the bundle (e.g. \"jobs.foo\",\n\"pipelines.bar\", \"jobs.foo.permissions\", \"files.\u003crel-path\u003e\").\nCan be an arbitrary UTF-8 encoded string key. This key links the\noperation to the corresponding deployment-level Resource. Set when the\nversion is created and immutable thereafter.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "resource_type": { + "description": "The type of the deployment resource this operation applies to. Derived\nfrom the `resource_key` prefix (e.g. \"jobs\" → JOB); the caller does not\nset this field.", + "ref": "bundledeployments.DeploymentResourceType", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "sequence_id": { + "description": "Monotonically increasing revision used for optimistic concurrency control\n(the AIP-154 concurrency token for this resource, realized as a sequence\nnumber rather than an opaque etag). The server assigns 0 when the operation\nis created and increments it on every successful UpdateOperation, so a\nnever-updated operation is at 0 and the first successful update makes it 1.\nIt is OPTIONAL rather than OUTPUT_ONLY because it is dual-purpose:\nGetOperation returns the current value, and UpdateOperation reads the\ncaller-supplied value as a precondition. The caller must echo the value it\nlast observed; if it no longer matches the server's value, the update is\nrejected with ABORTED so the caller can re-read and retry.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "state": { + "description": "Serialized local config state after the operation. Its presence records\nwhether the resource still exists. Explicitly clearing state removes the resource;\nomitting it from the update mask leaves resource state unchanged.\nState is stored only on Resources. UpdateOperation accepts state but omits it\nfrom its response, as do subsequent GetOperation and ListOperations.\n\nMutable: may be updated after creation via UpdateOperation. When updating,\nthe caller must echo the last-observed `sequence_id` as a concurrency\nprecondition.\n\nThe string is not parsed; it is projected onto the corresponding Resource's\nstate. It is deliberately not google.protobuf.Value, whose only numeric case\nis `double number_value`, so parsing the client's JSON into it rewrites every\ninteger as a double - `1` reads back as `1.0`, which no longer deserializes\ninto an integer field - and silently loses precision above 2^53, which is\nwithin range for IDs the client records.\n\nA string rather than bytes: the payload is always UTF-8 JSON, and proto3 JSON\nmaps bytes to base64, which inflates every request and response by a third\nand makes state unreadable in logs and API responses. Both generate the same\nOpenAPI schema (\"type\": \"string\"), so the SDKs are identical either way.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "status": { + "description": "Status of the operation. Starts as OPERATION_STATUS_PENDING when the version\nis created and moves to a terminal status once the resource is applied.\nMutable: updated via UpdateOperation, e.g. when an operation recorded as\nfailed is retried and eventually succeeds.", + "ref": "bundledeployments.OperationStatus", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "update_time": { + "description": "When the operation was last updated. Set to `create_time` when the operation is created and\nto the server timestamp on each successful UpdateOperation.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "bundledeployments.OperationActionType": { + "description": "Type of action performed on a resource during a deployment.", + "enum": [ + "OPERATION_ACTION_TYPE_RESIZE", + "OPERATION_ACTION_TYPE_UPDATE", + "OPERATION_ACTION_TYPE_UPDATE_WITH_ID", + "OPERATION_ACTION_TYPE_CREATE", + "OPERATION_ACTION_TYPE_RECREATE", + "OPERATION_ACTION_TYPE_DELETE", + "OPERATION_ACTION_TYPE_BIND", + "OPERATION_ACTION_TYPE_BIND_AND_UPDATE", + "OPERATION_ACTION_TYPE_INITIAL_REGISTER" + ], + "enum_launch_stages": { + "OPERATION_ACTION_TYPE_BIND": "PRIVATE_PREVIEW", + "OPERATION_ACTION_TYPE_BIND_AND_UPDATE": "PRIVATE_PREVIEW", + "OPERATION_ACTION_TYPE_CREATE": "PRIVATE_PREVIEW", + "OPERATION_ACTION_TYPE_DELETE": "PRIVATE_PREVIEW", + "OPERATION_ACTION_TYPE_INITIAL_REGISTER": "PRIVATE_PREVIEW", + "OPERATION_ACTION_TYPE_RECREATE": "PRIVATE_PREVIEW", + "OPERATION_ACTION_TYPE_RESIZE": "PRIVATE_PREVIEW", + "OPERATION_ACTION_TYPE_UPDATE": "PRIVATE_PREVIEW", + "OPERATION_ACTION_TYPE_UPDATE_WITH_ID": "PRIVATE_PREVIEW" + } + }, + "bundledeployments.OperationStatus": { + "description": "Status of a resource operation.", + "enum": [ + "OPERATION_STATUS_SUCCEEDED", + "OPERATION_STATUS_FAILED", + "OPERATION_STATUS_PENDING" + ], + "enum_launch_stages": { + "OPERATION_STATUS_FAILED": "PRIVATE_PREVIEW", + "OPERATION_STATUS_PENDING": "PRIVATE_PREVIEW", + "OPERATION_STATUS_SUCCEEDED": "PRIVATE_PREVIEW" + } + }, + "bundledeployments.Resource": { + "description": "A resource managed by a deployment. Resources are implicitly created,\nupdated, or deleted when operations are recorded on a version.", + "fields": { + "dashboard_metadata": { + "description": "Dashboard-specific metadata; set only for dashboard resources.", + "ref": "bundledeployments.DashboardMetadata", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_action_type": { + "description": "The action performed on this resource during the last version.", + "ref": "bundledeployments.OperationActionType", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_version_id": { + "description": "The version_id of the last version where this resource was updated.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Resource name.\nFormat: deployments/{deployment_id}/resources/{resource_key}", + "launch_stage": "PRIVATE_PREVIEW" + }, + "resource_id": { + "description": "ID that references the actual resource in the workspace\n(e.g. the job ID, pipeline ID).", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "resource_key": { + "description": "Resource identifier within the bundle (e.g. \"jobs.foo\",\n\"pipelines.bar\", \"jobs.foo.permissions\").", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "resource_type": { + "description": "The type of the deployment resource.", + "ref": "bundledeployments.DeploymentResourceType", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "state": { + "description": "Serialized local config state (what the CLI deployed). Opaque to this\nservice; see Operation.state for why this is a string and not\ngoogle.protobuf.Value.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "update_time": { + "description": "When the last operation that updated this resource's recorded state was applied. Pairs with\nlast_action_type and last_version_id (all three advance together on that write).", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "bundledeployments.StagedOperation": { + "description": "A resource operation to record when a version is created. Each staged\noperation identifies the resource it applies to and the action planned for\nit; the server records the operation in `OPERATION_STATUS_PENDING`, and its\noutcome is filled in later via UpdateOperation.", + "fields": { + "action_type": { + "description": "The type of operation planned for this resource.", + "ref": "bundledeployments.OperationActionType", + "launch_stage": "PRIVATE_PREVIEW" + }, + "resource_key": { + "description": "The key identifying the resource this operation applies to (e.g.\n\"jobs.foo\", \"pipelines.bar\"). Becomes the final component of the\noperation's name and must be unique among the operations in the version.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "bundledeployments.UpdateDeploymentRequest": { + "fields": { + "deployment": { + "description": "The deployment to update. Its `name` selects the deployment; the fields\nnamed in `update_mask` carry the new values. All other fields are ignored.", + "ref": "bundledeployments.Deployment", + "launch_stage": "PRIVATE_PREVIEW" + }, + "update_mask": { + "description": "The fields to update; supported paths are `display_name`, `deployment_mode`, `target_name`,\nand `workspace_info`. An empty mask or any other path returns INVALID_PARAMETER_VALUE.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "bundledeployments.UpdateOperationRequest": { + "fields": { + "operation": { + "description": "The operation to update. Its `name` selects the operation; the fields named\nin `update_mask` carry the new values; and `sequence_id` carries the\noptimistic-concurrency precondition (see the field docs on Operation). All\nother fields are ignored.", + "ref": "bundledeployments.Operation", + "launch_stage": "PRIVATE_PREVIEW" + }, + "update_mask": { + "description": "The set of fields to update. Required; supported paths are `state`,\n`error_message`, `resource_id`, `status`, and `dashboard_metadata`. An empty\nmask or any other path is rejected with INVALID_PARAMETER_VALUE.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "bundledeployments.Version": { + "description": "A single invocation of a deploy or destroy command against a deployment.\nCreating a version acquires an exclusive lock on the parent deployment.", + "fields": { + "cli_version": { + "description": "CLI version used to initiate the version.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "complete_time": { + "description": "When the version completed. Unset while the version is in progress.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "completed_by": { + "description": "The user who completed the version (email or principal name).\nMay differ from `created_by` when another user force-completes\nthe version.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "completion_reason": { + "description": "Why the version was completed. Unset while in progress.\nSet when status transitions to COMPLETED.", + "ref": "bundledeployments.VersionComplete", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "create_time": { + "description": "When the version was created.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "The user who created the version (email or principal name).", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "deployment_mode": { + "description": "Bundle target deployment mode (development or production), captured at the\ntime of this version.", + "ref": "bundledeployments.DeploymentMode", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "display_name": { + "description": "Display name for the deployment, captured at the time of this version. Up to 256 characters.\nWhen present, creating the version updates the deployment display name. An empty value clears\nit; an absent value leaves the current deployment display name unchanged.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "git_info": { + "description": "Git provenance of the source, captured at the time of this version.", + "ref": "bundledeployments.GitInfo", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "name": { + "description": "Resource name of the version.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "launch_stage": "PRIVATE_PREVIEW" + }, + "operations": { + "description": "The full operation plan for this version: one PENDING operation per entry,\nrecorded in the same transaction. Input only -- supplied on create and never\nreturned by create/get/list; read the recorded operations via ListOperations.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "previous_version_id": { + "description": "The version_id this version was created on top of — the deployment's\nmost recent version at creation time. Leave unset when creating the\nfirst version (the deployment has no prior versions). Set by the\nclient on creation and immutable thereafter.\n\nActs as an optimistic-concurrency precondition: the server requires\nit to equal the deployment's current most-recent version (and to be\nunset when the deployment has no versions) and returns\n`INVALID_PARAMETER_VALUE` on mismatch, so a deploy racing against a\nconcurrent deploy is rejected rather than silently overwriting it.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "status": { + "description": "Status of the version: IN_PROGRESS or COMPLETED.", + "ref": "bundledeployments.VersionStatus", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "target_name": { + "description": "Target name of the deployment, captured at the time of this version.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "version_id": { + "description": "Version identifier within the parent deployment, assigned by the\nclient on creation. A numeric string (base-10, fits in a signed\n64-bit integer) that is greater than or equal to 1. Version IDs are\nstrictly increasing within a deployment but are not required to\nstart at 1 or to be contiguous.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "version_type": { + "description": "Type of version (deploy or destroy).", + "ref": "bundledeployments.VersionType", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "workspace_info": { + "description": "Workspace location of the deployment, captured at the time of this version.", + "ref": "bundledeployments.WorkspaceInfo", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + } + } + }, + "bundledeployments.VersionComplete": { + "description": "Reason why a version was completed.", + "enum": [ + "VERSION_COMPLETE_SUCCESS", + "VERSION_COMPLETE_FAILURE", + "VERSION_COMPLETE_FORCE_ABORT", + "VERSION_COMPLETE_LEASE_EXPIRED" + ], + "enum_launch_stages": { + "VERSION_COMPLETE_FAILURE": "PRIVATE_PREVIEW", + "VERSION_COMPLETE_FORCE_ABORT": "PRIVATE_PREVIEW", + "VERSION_COMPLETE_LEASE_EXPIRED": "PRIVATE_PREVIEW", + "VERSION_COMPLETE_SUCCESS": "PRIVATE_PREVIEW" + } + }, + "bundledeployments.VersionStatus": { + "description": "Status of a version.", + "enum": [ + "VERSION_STATUS_IN_PROGRESS", + "VERSION_STATUS_COMPLETED" + ], + "enum_launch_stages": { + "VERSION_STATUS_COMPLETED": "PRIVATE_PREVIEW", + "VERSION_STATUS_IN_PROGRESS": "PRIVATE_PREVIEW" + } + }, + "bundledeployments.VersionType": { + "description": "Type of version.", + "enum": [ + "VERSION_TYPE_DEPLOY", + "VERSION_TYPE_DESTROY" + ], + "enum_launch_stages": { + "VERSION_TYPE_DEPLOY": "PRIVATE_PREVIEW", + "VERSION_TYPE_DESTROY": "PRIVATE_PREVIEW" + } + }, + "bundledeployments.WorkspaceInfo": { + "description": "Workspace location of a bundle deployment, captured at deploy time.", + "fields": { + "bundle_root_path": { + "description": "Path of the bundle root (the directory containing databricks.yml) relative\nto git_folder_path. Empty when the deployment is not from a Databricks Git\nfolder.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "file_path": { + "description": "Absolute workspace path where the deployed bundle files live. Mirrors the\nworkspace.file_path field in DABs bundle config.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "git_folder_path": { + "description": "When deployed from a Databricks Git folder, the absolute workspace path of\nthat folder; empty for local deploys.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "root_path": { + "description": "Absolute workspace path of the deployment root — the base path the deployed\nfiles live under. Mirrors workspace.root_path in the DABs bundle config;\nfile_path is its files subdirectory.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "source_linked": { + "description": "Whether files are served directly from the source sync root instead of\nbeing copied into file_path.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "catalog.AccessRequestDestinations": { + "fields": { + "are_any_destinations_hidden": { + "description": "Indicates whether any destinations are hidden from the caller due to a lack of permissions.\nThis value is true if the caller does not have permission to see all destinations.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "destination_source_securable": { + "description": "The source securable from which the destinations are inherited. Either the same value as securable (if destination\nis set directly on the securable) or the nearest parent securable with destinations set.", + "ref": "catalog.Securable", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "destinations": { + "description": "The access request destinations for the securable.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL", + "UNORDERED_LIST" + ] + }, + "full_name": { + "description": "The full name of the securable. Redundant with the name in the securable object, but necessary for Terraform integration", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "securable": { + "description": "The securable for which the access request destinations are being modified or read.", + "ref": "catalog.Securable", + "launch_stage": "PUBLIC_PREVIEW" + }, + "securable_type": { + "description": "The type of the securable. Redundant with the type in the securable object, but necessary for Terraform integration", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.AccountsCreateMetastore": { + "description": "Properties of the new metastore.", + "fields": { + "metastore_info": { + "ref": "catalog.CreateAccountsMetastore", + "launch_stage": "GA" + } + } + }, + "catalog.AccountsCreateMetastoreAssignment": { + "description": "The mapping from workspace to metastore.", + "fields": { + "metastore_assignment": { + "ref": "catalog.CreateMetastoreAssignment", + "launch_stage": "GA" + } + } + }, + "catalog.AccountsCreateMetastoreAssignmentResponse": { + "description": "The metastore assignment was successfully created." + }, + "catalog.AccountsCreateMetastoreResponse": { + "fields": { + "metastore_info": { + "ref": "catalog.MetastoreInfo", + "launch_stage": "GA" + } + } + }, + "catalog.AccountsCreateStorageCredential": { + "fields": { + "credential_info": { + "ref": "catalog.CreateAccountsStorageCredential", + "launch_stage": "GA" + }, + "skip_validation": { + "description": "Optional, default false.\nSupplying true to this argument skips validation of the created set of credentials.", + "launch_stage": "GA" + } + } + }, + "catalog.AccountsCreateStorageCredentialInfo": { + "fields": { + "credential_info": { + "ref": "catalog.StorageCredentialInfo", + "launch_stage": "GA" + } + } + }, + "catalog.AccountsDeleteMetastoreAssignmentResponse": { + "description": "The metastore assignment was successfully deleted." + }, + "catalog.AccountsDeleteMetastoreResponse": { + "description": "The metastore was successfully deleted." + }, + "catalog.AccountsDeleteStorageCredentialResponse": { + "description": "The storage credential was successfully deleted." + }, + "catalog.AccountsGetMetastoreResponse": { + "description": "The metastore was successfully returned.", + "fields": { + "metastore_info": { + "ref": "catalog.MetastoreInfo", + "launch_stage": "GA" + } + } + }, + "catalog.AccountsListMetastoresResponse": { + "description": "Metastores were returned successfully.", + "fields": { + "metastores": { + "description": "An array of metastore information objects.", + "launch_stage": "GA" + } + } + }, + "catalog.AccountsMetastoreAssignment": { + "description": "The workspace metastore assignment was successfully returned.", + "fields": { + "metastore_assignment": { + "ref": "catalog.MetastoreAssignment", + "launch_stage": "GA" + } + } + }, + "catalog.AccountsStorageCredentialInfo": { + "description": "The storage credential was successfully retrieved.", + "fields": { + "credential_info": { + "ref": "catalog.StorageCredentialInfo", + "launch_stage": "GA" + } + } + }, + "catalog.AccountsUpdateMetastore": { + "description": "Properties of the metastore to change.", + "fields": { + "metastore_info": { + "description": "Properties of the metastore to change.", + "ref": "catalog.UpdateAccountsMetastore", + "launch_stage": "GA" + } + } + }, + "catalog.AccountsUpdateMetastoreAssignment": { + "description": "The metastore assignment to update.", + "fields": { + "metastore_assignment": { + "ref": "catalog.UpdateMetastoreAssignment", + "launch_stage": "GA" + } + } + }, + "catalog.AccountsUpdateMetastoreAssignmentResponse": { + "description": "The metastore assignment was successfully updated." + }, + "catalog.AccountsUpdateMetastoreResponse": { + "description": "The metastore update request succeeded.", + "fields": { + "metastore_info": { + "ref": "catalog.MetastoreInfo", + "launch_stage": "GA" + } + } + }, + "catalog.AccountsUpdateStorageCredential": { + "description": "The storage credential to update.", + "fields": { + "credential_info": { + "ref": "catalog.UpdateAccountsStorageCredential", + "launch_stage": "GA" + }, + "skip_validation": { + "description": "Optional. Supplying true to this argument skips validation of the updated set of credentials.", + "launch_stage": "GA" + } + } + }, + "catalog.AccountsUpdateStorageCredentialResponse": { + "description": "The storage credential was successfully updated.", + "fields": { + "credential_info": { + "ref": "catalog.StorageCredentialInfo", + "launch_stage": "GA" + } + } + }, + "catalog.ArtifactAllowlistInfo": { + "fields": { + "artifact_matchers": { + "description": "A list of allowed artifact match patterns.", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this artifact allowlist was set, in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "Username of the user who set the artifact allowlist.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "metastore_id": { + "description": "Unique identifier of parent metastore.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.ArtifactMatcher": { + "fields": { + "artifact": { + "description": "The artifact path or maven coordinate", + "launch_stage": "GA" + }, + "match_type": { + "description": "The pattern matching type of the artifact", + "ref": "catalog.MatchType", + "launch_stage": "GA" + } + } + }, + "catalog.ArtifactType": { + "description": "The artifact type", + "enum": [ + "INIT_SCRIPT", + "LIBRARY_JAR", + "LIBRARY_MAVEN" + ], + "enum_launch_stages": { + "INIT_SCRIPT": "GA", + "LIBRARY_JAR": "GA", + "LIBRARY_MAVEN": "GA" + } + }, + "catalog.AssignResponse": {}, + "catalog.AwsCredentials": { + "description": "AWS temporary credentials for API authentication.\nRead more at https://docs.aws.amazon.com/STS/latest/APIReference/API_Credentials.html.", + "fields": { + "access_key_id": { + "description": "The access key ID that identifies the temporary credentials.", + "launch_stage": "GA" + }, + "access_point": { + "description": "The Amazon Resource Name (ARN) of the S3 access point for\ntemporary credentials related the external location.", + "launch_stage": "GA" + }, + "secret_access_key": { + "description": "The secret access key that can be used to sign AWS API requests.", + "launch_stage": "GA" + }, + "session_token": { + "description": "The token that users must pass to AWS API to use the temporary credentials.", + "launch_stage": "GA" + } + } + }, + "catalog.AwsIamRole": { + "description": "The AWS IAM role configuration", + "fields": { + "external_id": { + "description": "The external ID used in role assumption to prevent the confused deputy problem.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "role_arn": { + "description": "The Amazon Resource Name (ARN) of the AWS IAM role used to vend temporary credentials.", + "launch_stage": "GA" + }, + "unity_catalog_iam_arn": { + "description": "The Amazon Resource Name (ARN) of the AWS IAM user managed by Databricks.\nThis is the identity that is going to assume the AWS IAM role.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.AwsIamRoleRequest": { + "description": "The AWS IAM role configuration", + "fields": { + "role_arn": { + "description": "The Amazon Resource Name (ARN) of the AWS IAM role used to vend temporary credentials.", + "launch_stage": "GA" + } + } + }, + "catalog.AwsIamRoleResponse": { + "description": "The AWS IAM role configuration", + "fields": { + "external_id": { + "description": "The external ID used in role assumption to prevent the confused deputy problem.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "role_arn": { + "description": "The Amazon Resource Name (ARN) of the AWS IAM role used to vend temporary credentials.", + "launch_stage": "GA" + }, + "unity_catalog_iam_arn": { + "description": "The Amazon Resource Name (ARN) of the AWS IAM user managed by Databricks.\nThis is the identity that is going to assume the AWS IAM role.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.AwsSqsQueue": { + "fields": { + "managed_resource_id": { + "description": "Unique identifier included in the name of file events managed cloud resources.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "queue_url": { + "description": "The AQS queue url in the format https://sqs.{region}.amazonaws.com/{account id}/{queue name}.\nOnly required for provided_sqs.", + "launch_stage": "GA" + } + } + }, + "catalog.AzureActiveDirectoryToken": { + "description": "Azure Active Directory token, essentially the Oauth token for Azure Service Principal or Managed\nIdentity.\nRead more at https://learn.microsoft.com/en-us/azure/databricks/dev-tools/api/latest/aad/service-prin-aad-token", + "fields": { + "aad_token": { + "description": "Opaque token that contains claims that you can use in Azure Active Directory to access cloud services.", + "launch_stage": "GA" + } + } + }, + "catalog.AzureEncryptionSettings": { + "fields": { + "azure_cmk_access_connector_id": { + "launch_stage": "GA" + }, + "azure_cmk_managed_identity_id": { + "launch_stage": "GA" + }, + "azure_tenant_id": { + "launch_stage": "GA" + } + } + }, + "catalog.AzureManagedIdentity": { + "description": "The Azure managed identity configuration.", + "fields": { + "access_connector_id": { + "description": "The Azure resource ID of the Azure Databricks Access Connector. Use the format\n`/subscriptions/{guid}/resourceGroups/{rg-name}/providers/Microsoft.Databricks/accessConnectors/{connector-name}`.", + "launch_stage": "GA" + }, + "credential_id": { + "description": "The Databricks internal ID that represents this managed identity.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "managed_identity_id": { + "description": "The Azure resource ID of the managed identity. Use the format,\n`/subscriptions/{guid}/resourceGroups/{rg-name}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identity-name}`\nThis is only available for user-assgined identities. For system-assigned identities, the access_connector_id is used to identify the identity.\nIf this field is not provided, then we assume the AzureManagedIdentity is using the system-assigned identity.", + "launch_stage": "GA" + } + } + }, + "catalog.AzureManagedIdentityRequest": { + "description": "The Azure managed identity configuration.", + "fields": { + "access_connector_id": { + "description": "The Azure resource ID of the Azure Databricks Access Connector. Use the format\n`/subscriptions/{guid}/resourceGroups/{rg-name}/providers/Microsoft.Databricks/accessConnectors/{connector-name}`.", + "launch_stage": "GA" + }, + "managed_identity_id": { + "description": "The Azure resource ID of the managed identity. Use the format,\n`/subscriptions/{guid}/resourceGroups/{rg-name}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identity-name}`\nThis is only available for user-assgined identities. For system-assigned identities, the access_connector_id is used to identify the identity.\nIf this field is not provided, then we assume the AzureManagedIdentity is using the system-assigned identity.", + "launch_stage": "GA" + } + } + }, + "catalog.AzureManagedIdentityResponse": { + "description": "The Azure managed identity configuration.", + "fields": { + "access_connector_id": { + "description": "The Azure resource ID of the Azure Databricks Access Connector. Use the format\n`/subscriptions/{guid}/resourceGroups/{rg-name}/providers/Microsoft.Databricks/accessConnectors/{connector-name}`.", + "launch_stage": "GA" + }, + "credential_id": { + "description": "The Databricks internal ID that represents this managed identity.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "managed_identity_id": { + "description": "The Azure resource ID of the managed identity. Use the format,\n`/subscriptions/{guid}/resourceGroups/{rg-name}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identity-name}`\nThis is only available for user-assgined identities. For system-assigned identities, the access_connector_id is used to identify the identity.\nIf this field is not provided, then we assume the AzureManagedIdentity is using the system-assigned identity.", + "launch_stage": "GA" + } + } + }, + "catalog.AzureQueueStorage": { + "fields": { + "managed_resource_id": { + "description": "Unique identifier included in the name of file events managed cloud resources.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "queue_url": { + "description": "The AQS queue url in the format https://{storage account}.queue.core.windows.net/{queue name}\nOnly required for provided_aqs.", + "launch_stage": "GA" + }, + "resource_group": { + "description": "Optional resource group for the queue, event grid subscription, and external location storage\naccount.\nOnly required for locations with a service principal storage credential", + "launch_stage": "GA" + }, + "subscription_id": { + "description": "Optional subscription id for the queue, event grid subscription, and external location storage\naccount.\nRequired for locations with a service principal storage credential", + "launch_stage": "GA" + } + } + }, + "catalog.AzureServicePrincipal": { + "description": "The Azure service principal configuration. Only applicable when purpose is **STORAGE**.", + "fields": { + "application_id": { + "description": "The application ID of the application registration within the referenced AAD tenant.", + "launch_stage": "GA" + }, + "client_secret": { + "description": "The client secret generated for the above app ID in AAD.", + "launch_stage": "GA" + }, + "directory_id": { + "description": "The directory ID corresponding to the Azure Active Directory (AAD) tenant of the application.", + "launch_stage": "GA" + } + } + }, + "catalog.AzureUserDelegationSas": { + "description": "Azure temporary credentials for API authentication.\nRead more at https://docs.microsoft.com/en-us/rest/api/storageservices/create-user-delegation-sas", + "fields": { + "sas_token": { + "description": "The signed URI (SAS Token) used to access blob services for a given path", + "launch_stage": "GA" + } + } + }, + "catalog.BatchCreateAccessRequestsRequest": { + "fields": { + "requests": { + "description": "A list of individual access requests, where each request corresponds to\na set of permissions being requested on a list of securables for a specified principal.\n\nAt most 30 requests per API call.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.BatchCreateAccessRequestsResponse": { + "fields": { + "responses": { + "description": "The access request destinations for each securable object the principal requested.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.CancelRefreshRequest": {}, + "catalog.CancelRefreshResponse": {}, + "catalog.CatalogInfo": { + "fields": { + "browse_only": { + "description": "Indicates whether the principal is limited to retrieving metadata for the associated object through the BROWSE privilege when include_browse is enabled in the request.", + "launch_stage": "GA" + }, + "catalog_type": { + "ref": "catalog.CatalogType", + "launch_stage": "GA" + }, + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "connection_name": { + "description": "The name of the connection to an external data source.", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this catalog was created, in epoch milliseconds.", + "launch_stage": "GA" + }, + "created_by": { + "description": "Username of catalog creator.", + "launch_stage": "GA" + }, + "custom_max_retention_hours": { + "description": "Custom maximum retention period in hours for the catalog", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "effective_predictive_optimization_flag": { + "ref": "catalog.EffectivePredictiveOptimizationFlag", + "launch_stage": "GA" + }, + "enable_predictive_optimization": { + "description": "Whether predictive optimization should be enabled for this object and objects under it.", + "ref": "catalog.EnablePredictiveOptimization", + "launch_stage": "GA" + }, + "full_name": { + "description": "The full name of the catalog. Corresponds with the name field.", + "launch_stage": "GA" + }, + "isolation_mode": { + "description": "Whether the current securable is accessible from all workspaces or a specific set of workspaces.", + "ref": "catalog.CatalogIsolationMode", + "launch_stage": "GA" + }, + "managed_encryption_settings": { + "description": "Control CMK encryption for managed catalog data", + "ref": "catalog.EncryptionSettings", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "Unique identifier of parent metastore.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of catalog.", + "launch_stage": "GA" + }, + "options": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of current owner of catalog.", + "launch_stage": "GA" + }, + "properties": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + }, + "provider_name": { + "description": "The name of delta sharing provider.\n\nA Delta Sharing catalog is a catalog that is based on a Delta share on a remote sharing server.", + "launch_stage": "GA" + }, + "provisioning_info": { + "ref": "catalog.ProvisioningInfo", + "launch_stage": "GA" + }, + "securable_type": { + "ref": "catalog.SecurableType", + "launch_stage": "GA" + }, + "share_name": { + "description": "The name of the share under the share provider.", + "launch_stage": "GA" + }, + "storage_location": { + "description": "Storage Location URL (full path) for managed tables within catalog.", + "launch_stage": "GA" + }, + "storage_root": { + "description": "Storage root URL for managed tables within catalog.", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Time at which this catalog was last modified, in epoch milliseconds.", + "launch_stage": "GA" + }, + "updated_by": { + "description": "Username of user who last modified catalog.", + "launch_stage": "GA" + } + } + }, + "catalog.CatalogIsolationMode": { + "enum": [ + "OPEN", + "ISOLATED" + ], + "enum_launch_stages": { + "ISOLATED": "GA", + "OPEN": "GA" + } + }, + "catalog.CatalogType": { + "description": "The type of the catalog.", + "enum": [ + "MANAGED_CATALOG", + "DELTASHARING_CATALOG", + "SYSTEM_CATALOG", + "INTERNAL_CATALOG", + "FOREIGN_CATALOG", + "MANAGED_ONLINE_CATALOG" + ], + "enum_launch_stages": { + "DELTASHARING_CATALOG": "GA", + "FOREIGN_CATALOG": "GA", + "INTERNAL_CATALOG": "GA", + "MANAGED_CATALOG": "GA", + "MANAGED_ONLINE_CATALOG": "GA", + "SYSTEM_CATALOG": "GA" + } + }, + "catalog.CloudflareApiToken": { + "description": "The Cloudflare API token configuration.\nRead more at https://developers.cloudflare.com/r2/api/s3/tokens/", + "fields": { + "access_key_id": { + "description": "The access key ID associated with the API token.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "account_id": { + "description": "The ID of the account associated with the API token.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "secret_access_key": { + "description": "The secret access token generated for the above access key ID.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "catalog.ColumnInfo": { + "fields": { + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "mask": { + "ref": "catalog.ColumnMask", + "launch_stage": "GA" + }, + "name": { + "description": "Name of Column.", + "launch_stage": "GA" + }, + "nullable": { + "description": "Whether field may be Null (default: true).", + "launch_stage": "GA" + }, + "partition_index": { + "description": "Partition index for column.", + "launch_stage": "GA" + }, + "position": { + "description": "Ordinal position of column (starting at position 0).", + "launch_stage": "GA" + }, + "type_interval_type": { + "description": "Format of IntervalType.", + "launch_stage": "GA" + }, + "type_json": { + "description": "Full data type specification, JSON-serialized.", + "launch_stage": "GA" + }, + "type_name": { + "ref": "catalog.ColumnTypeName", + "launch_stage": "GA" + }, + "type_precision": { + "description": "Digits of precision; required for DecimalTypes.", + "launch_stage": "GA" + }, + "type_scale": { + "description": "Digits to right of decimal; Required for DecimalTypes.", + "launch_stage": "GA" + }, + "type_text": { + "description": "Full data type specification as SQL/catalogString text.", + "launch_stage": "GA" + } + } + }, + "catalog.ColumnMask": { + "fields": { + "function_name": { + "description": "The full name of the column mask SQL UDF.", + "launch_stage": "GA" + }, + "using_arguments": { + "description": "The list of table columns or literals to be passed as additional arguments to a column mask\nfunction, carrying the type (column reference vs constant literal) of each argument.\nDeprecated: use using_column_names instead.", + "deprecated": true, + "launch_stage": "GA" + }, + "using_column_names": { + "description": "The list of additional table columns to be passed as input to the column mask function. The\nfirst arg of the mask function should be of the type of the column being masked and the\ntypes of the rest of the args should match the types of columns in 'using_column_names'.", + "launch_stage": "GA" + } + } + }, + "catalog.ColumnMaskOptions": { + "fields": { + "function_name": { + "description": "The fully qualified name of the column mask function.\nThe function is called on each row of the target table.\nThe function's first argument and its return type should match the type of the masked column.\nRequired on create and update.", + "launch_stage": "GA" + }, + "on_column": { + "description": "The alias of the column to be masked. The alias must refer to one of matched columns.\nThe values of the column is passed to the column mask function as the first argument.\nRequired on create and update.", + "launch_stage": "GA" + }, + "using": { + "description": "Optional list of column aliases or constant literals to be passed as additional arguments to the column mask function.\nThe type of each column should match the positional argument of the column mask function.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ColumnRelationship": { + "fields": { + "source": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "target": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ColumnTagValueExtraction": { + "description": "Extracts the value of a column-level tag: get_column_tag_value(col, \"tagKey\").", + "fields": { + "column_alias": { + "description": "The alias from MATCH COLUMNS that identifies the column.", + "launch_stage": "GA" + }, + "tag_key": { + "description": "1024 matches the max_length on FunctionArgument.constant above.", + "launch_stage": "GA" + } + } + }, + "catalog.ColumnTypeName": { + "enum": [ + "BOOLEAN", + "BYTE", + "SHORT", + "INT", + "LONG", + "FLOAT", + "DOUBLE", + "DATE", + "TIMESTAMP", + "STRING", + "BINARY", + "DECIMAL", + "INTERVAL", + "ARRAY", + "STRUCT", + "MAP", + "CHAR", + "NULL", + "USER_DEFINED_TYPE", + "TIMESTAMP_NTZ", + "VARIANT", + "GEOMETRY", + "GEOGRAPHY", + "TABLE_TYPE" + ], + "enum_launch_stages": { + "ARRAY": "GA", + "BINARY": "GA", + "BOOLEAN": "GA", + "BYTE": "GA", + "CHAR": "GA", + "DATE": "GA", + "DECIMAL": "GA", + "DOUBLE": "GA", + "FLOAT": "GA", + "GEOGRAPHY": "GA", + "GEOMETRY": "GA", + "INT": "GA", + "INTERVAL": "GA", + "LONG": "GA", + "MAP": "GA", + "NULL": "GA", + "SHORT": "GA", + "STRING": "GA", + "STRUCT": "GA", + "TABLE_TYPE": "GA", + "TIMESTAMP": "GA", + "TIMESTAMP_NTZ": "GA", + "USER_DEFINED_TYPE": "GA", + "VARIANT": "GA" + } + }, + "catalog.ConnectionDependency": { + "description": "A connection that is dependent on a SQL object.", + "fields": { + "connection_name": { + "description": "Full name of the dependent connection, in the form of __connection_name__.", + "launch_stage": "GA" + } + } + }, + "catalog.ConnectionInfo": { + "fields": { + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "connection_id": { + "description": "Unique identifier of the Connection.", + "launch_stage": "GA" + }, + "connection_type": { + "description": "The type of connection.", + "ref": "catalog.ConnectionType", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this connection was created, in epoch milliseconds.", + "launch_stage": "GA" + }, + "created_by": { + "description": "Username of connection creator.", + "launch_stage": "GA" + }, + "credential_type": { + "description": "The type of credential.", + "ref": "catalog.CredentialType", + "launch_stage": "GA" + }, + "environment_settings": { + "description": "[Create,Update:OPT] Connection environment settings as EnvironmentSettings object.", + "ref": "catalog.EnvironmentSettings", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "full_name": { + "description": "Full name of connection.", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "Unique identifier of parent metastore.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the connection.", + "launch_stage": "GA" + }, + "options": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of current owner of the connection.", + "launch_stage": "GA" + }, + "properties": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + }, + "provisioning_info": { + "ref": "catalog.ProvisioningInfo", + "launch_stage": "GA" + }, + "read_only": { + "description": "If the connection is read only.", + "launch_stage": "GA" + }, + "secrets": { + "description": "A map of option names to UC Secret references. Keys are connection option names\n(same as in OptionsKVPairs) and values are UC Secret fully qualified names.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "securable_type": { + "ref": "catalog.SecurableType", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Time at which this connection was updated, in epoch milliseconds.", + "launch_stage": "GA" + }, + "updated_by": { + "description": "Username of user who last modified connection.", + "launch_stage": "GA" + }, + "url": { + "description": "URL of the remote data source, extracted from options.", + "launch_stage": "GA" + } + } + }, + "catalog.ConnectionType": { + "enum": [ + "UNKNOWN_CONNECTION_TYPE", + "MYSQL", + "POSTGRESQL", + "SNOWFLAKE", + "REDSHIFT", + "SQLDW", + "SQLSERVER", + "DATABRICKS", + "SALESFORCE", + "BIGQUERY", + "NETSUITE", + "WORKDAY_RAAS", + "HIVE_METASTORE", + "GA4_RAW_DATA", + "SERVICENOW", + "SALESFORCE_DATA_CLOUD", + "GLUE", + "ORACLE", + "TERADATA", + "HTTP", + "POWER_BI", + "DYNAMICS365", + "CONFLUENCE", + "JDBC", + "META_MARKETING", + "TIKTOK_ADS", + "HUBSPOT", + "ZENDESK", + "AWS_SECRETS_MANAGER", + "AZURE_KEY_VAULT", + "GITHUB", + "OUTLOOK", + "SMARTSHEET" + ], + "enum_launch_stages": { + "AWS_SECRETS_MANAGER": "PUBLIC_BETA", + "AZURE_KEY_VAULT": "PUBLIC_BETA", + "BIGQUERY": "GA", + "CONFLUENCE": "GA", + "DATABRICKS": "GA", + "DYNAMICS365": "GA", + "GA4_RAW_DATA": "GA", + "GITHUB": "PUBLIC_BETA", + "GLUE": "GA", + "HIVE_METASTORE": "GA", + "HTTP": "GA", + "HUBSPOT": "GA", + "JDBC": "PUBLIC_PREVIEW", + "META_MARKETING": "GA", + "MYSQL": "GA", + "NETSUITE": "GA", + "ORACLE": "GA", + "OUTLOOK": "PUBLIC_BETA", + "POSTGRESQL": "GA", + "POWER_BI": "GA", + "REDSHIFT": "GA", + "SALESFORCE": "GA", + "SALESFORCE_DATA_CLOUD": "GA", + "SERVICENOW": "GA", + "SMARTSHEET": "GA", + "SNOWFLAKE": "GA", + "SQLDW": "GA", + "SQLSERVER": "GA", + "TERADATA": "GA", + "TIKTOK_ADS": "PUBLIC_BETA", + "UNKNOWN_CONNECTION_TYPE": "GA", + "WORKDAY_RAAS": "GA", + "ZENDESK": "GA" + } + }, + "catalog.ContinuousUpdateStatus": { + "description": "Detailed status of an online table. Shown if the online table is in the ONLINE_CONTINUOUS_UPDATE\nor the ONLINE_UPDATING_PIPELINE_RESOURCES state.", + "fields": { + "initial_pipeline_sync_progress": { + "description": "Progress of the initial data synchronization.", + "ref": "catalog.PipelineProgress", + "launch_stage": "PUBLIC_PREVIEW" + }, + "last_processed_commit_version": { + "description": "The last source table Delta version that was synced to the online table. Note that this Delta\nversion may not be completely synced to the online table yet.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "timestamp": { + "description": "The timestamp of the last time any data was synchronized from the source table to the online\ntable.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.CreateAccessRequest": { + "fields": { + "behalf_of": { + "description": "Optional. The principal this request is for.\nEmpty `behalf_of` defaults to the requester's identity.\n\nPrincipals must be unique across the API call.", + "ref": "catalog.Principal", + "launch_stage": "PUBLIC_PREVIEW" + }, + "comment": { + "description": "Optional. Comment associated with the request.\n\nAt most 200 characters, can only contain lowercase/uppercase\nletters (a-z, A-Z), numbers (0-9), punctuation, and spaces.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "securable_permissions": { + "description": "List of securables and their corresponding requested UC privileges.\n\nAt most 30 securables can be requested for a principal per batched call.\nEach securable can only be requested once per principal.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.CreateAccessRequestResponse": { + "fields": { + "behalf_of": { + "description": "The principal the request was made on behalf of.", + "ref": "catalog.Principal", + "launch_stage": "PUBLIC_PREVIEW" + }, + "request_destinations": { + "description": "The access request destinations for all the securables the principal requested.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.CreateAccountsMetastore": { + "fields": { + "external_access_enabled": { + "description": "Whether to allow non-DBR clients to directly access entities under the metastore.", + "launch_stage": "GA" + }, + "name": { + "description": "The user-specified name of the metastore.", + "launch_stage": "GA" + }, + "region": { + "description": "Cloud region which the metastore serves (e.g., `us-west-2`, `westus`).", + "launch_stage": "GA" + }, + "storage_root": { + "description": "The storage root URL for metastore", + "launch_stage": "GA" + } + } + }, + "catalog.CreateAccountsStorageCredential": { + "fields": { + "aws_iam_role": { + "description": "The AWS IAM role configuration.", + "ref": "catalog.AwsIamRoleRequest", + "launch_stage": "GA" + }, + "azure_managed_identity": { + "description": "The Azure managed identity configuration.", + "ref": "catalog.AzureManagedIdentityRequest", + "launch_stage": "GA" + }, + "azure_service_principal": { + "description": "The Azure service principal configuration.", + "ref": "catalog.AzureServicePrincipal", + "launch_stage": "GA" + }, + "cloudflare_api_token": { + "description": "The Cloudflare API token configuration.", + "ref": "catalog.CloudflareApiToken", + "launch_stage": "PRIVATE_PREVIEW" + }, + "comment": { + "description": "Comment associated with the credential.", + "launch_stage": "GA" + }, + "databricks_gcp_service_account": { + "description": "The Databricks managed GCP service account configuration.", + "ref": "catalog.DatabricksGcpServiceAccountRequest", + "launch_stage": "GA" + }, + "name": { + "description": "The credential name. The name must be unique among storage and service\ncredentials within the metastore.", + "launch_stage": "GA" + }, + "read_only": { + "description": "Whether the credential is usable only for read operations. Only applicable\nwhen purpose is **STORAGE**.", + "launch_stage": "GA" + } + } + }, + "catalog.CreateCatalog": { + "fields": { + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "connection_name": { + "description": "The name of the connection to an external data source.", + "launch_stage": "GA" + }, + "custom_max_retention_hours": { + "description": "Custom maximum retention period in hours for the catalog", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "managed_encryption_settings": { + "description": "Control CMK encryption for managed catalog data", + "ref": "catalog.EncryptionSettings", + "launch_stage": "GA" + }, + "name": { + "description": "Name of catalog.", + "launch_stage": "GA" + }, + "options": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + }, + "properties": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + }, + "provider_name": { + "description": "The name of delta sharing provider.\n\nA Delta Sharing catalog is a catalog that is based on a Delta share on a remote sharing server.", + "launch_stage": "GA" + }, + "share_name": { + "description": "The name of the share under the share provider.", + "launch_stage": "GA" + }, + "storage_root": { + "description": "Storage root URL for managed tables within catalog.", + "launch_stage": "GA" + } + } + }, + "catalog.CreateConnection": { + "fields": { + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "connection_type": { + "description": "The type of connection.", + "ref": "catalog.ConnectionType", + "launch_stage": "GA" + }, + "environment_settings": { + "description": "[Create,Update:OPT] Connection environment settings as EnvironmentSettings object.", + "ref": "catalog.EnvironmentSettings", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Name of the connection.", + "launch_stage": "GA" + }, + "options": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + }, + "parent": { + "description": "Parent schema for schema-level connections, in format \"schemas/{catalog}.{schema}\".\nAbsent for metastore-level (L1) connections.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "properties": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + }, + "read_only": { + "description": "If the connection is read only.", + "launch_stage": "GA" + }, + "secrets": { + "description": "A map of option names to UC Secret references. Keys are connection option names\n(same as in OptionsKVPairs) and values are UC Secret fully qualified names.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.CreateCredentialRequest": { + "fields": { + "aws_iam_role": { + "description": "The AWS IAM role configuration.", + "ref": "catalog.AwsIamRole", + "launch_stage": "GA" + }, + "azure_managed_identity": { + "description": "The Azure managed identity configuration.", + "ref": "catalog.AzureManagedIdentity", + "launch_stage": "GA" + }, + "azure_service_principal": { + "description": "The Azure service principal configuration.", + "ref": "catalog.AzureServicePrincipal", + "launch_stage": "GA" + }, + "comment": { + "description": "Comment associated with the credential.", + "launch_stage": "GA" + }, + "databricks_gcp_service_account": { + "description": "The Databricks managed GCP service account configuration.", + "ref": "catalog.DatabricksGcpServiceAccount", + "launch_stage": "GA" + }, + "name": { + "description": "The credential name. The name must be unique among storage and service\ncredentials within the metastore.", + "launch_stage": "GA" + }, + "purpose": { + "description": "Indicates the purpose of the credential.", + "ref": "catalog.CredentialPurpose", + "launch_stage": "GA" + }, + "read_only": { + "description": "Whether the credential is usable only for read operations. Only applicable\nwhen purpose is **STORAGE**.", + "launch_stage": "GA" + }, + "skip_validation": { + "description": "Optional. Supplying true to this argument skips validation of the created\nset of credentials.", + "launch_stage": "GA" + } + } + }, + "catalog.CreateEntityTagAssignmentRequest": { + "fields": { + "tag_assignment": { + "ref": "catalog.EntityTagAssignment", + "launch_stage": "GA" + } + } + }, + "catalog.CreateExternalLineageRelationshipRequest": { + "fields": { + "external_lineage_relationship": { + "ref": "catalog.CreateRequestExternalLineage", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.CreateExternalLocation": { + "fields": { + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "credential_name": { + "description": "Name of the storage credential used with this location.", + "launch_stage": "GA" + }, + "effective_enable_file_events": { + "description": "The effective value of `enable_file_events` after applying server-side defaults.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_file_event_queue": { + "description": "The effective file event queue configuration after applying server-side defaults.\nAlways populated when a queue is provisioned, regardless of whether the user explicitly\nset `enable_file_events`. Use this field instead of `file_event_queue` for reading\nthe actual queue state.", + "ref": "catalog.FileEventQueue", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "enable_file_events": { + "description": "Whether to enable file events on this external location. Default to `true`. Set to `false` to disable file events.\nThe actual applied value may differ due to server-side defaults; check `effective_enable_file_events` for the effective state.", + "launch_stage": "GA" + }, + "encryption_details": { + "ref": "catalog.EncryptionDetails", + "launch_stage": "GA" + }, + "fallback": { + "description": "Indicates whether fallback mode is enabled for this external location. When fallback mode is enabled, the access to the location falls back to cluster credentials if UC credentials are not sufficient.", + "launch_stage": "GA" + }, + "file_event_queue": { + "description": "File event queue settings. If `enable_file_events` is not `false`, must be defined and have exactly one of the documented properties.", + "ref": "catalog.FileEventQueue", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the external location.", + "launch_stage": "GA" + }, + "read_only": { + "description": "Indicates whether the external location is read-only.", + "launch_stage": "GA" + }, + "skip_validation": { + "description": "Skips validation of the storage credential associated with the external location.", + "launch_stage": "GA" + }, + "url": { + "description": "Path URL of the external location.", + "launch_stage": "GA" + } + } + }, + "catalog.CreateExternalMetadataRequest": { + "fields": { + "external_metadata": { + "ref": "catalog.ExternalMetadata", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.CreateFunction": { + "fields": { + "catalog_name": { + "description": "Name of parent Catalog.", + "launch_stage": "GA" + }, + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "data_type": { + "description": "Scalar function return data type.", + "ref": "catalog.ColumnTypeName", + "launch_stage": "GA" + }, + "external_language": { + "description": "External function language.", + "launch_stage": "GA" + }, + "external_name": { + "description": "External function name.", + "launch_stage": "GA" + }, + "full_data_type": { + "description": "Pretty printed function data type.", + "launch_stage": "GA" + }, + "input_params": { + "description": "Function input parameters.", + "ref": "catalog.FunctionParameterInfos", + "launch_stage": "GA" + }, + "is_deterministic": { + "description": "Whether the function is deterministic.", + "launch_stage": "GA" + }, + "is_null_call": { + "description": "Function null call.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of function, relative to parent schema.", + "launch_stage": "GA" + }, + "parameter_style": { + "description": "Function parameter style. **S** is the value for SQL.", + "ref": "catalog.CreateFunctionParameterStyle", + "launch_stage": "GA" + }, + "properties": { + "description": "JSON-serialized key-value pair map, encoded (escaped) as a string.", + "launch_stage": "GA" + }, + "return_params": { + "description": "Table function return parameters.", + "ref": "catalog.FunctionParameterInfos", + "launch_stage": "GA" + }, + "routine_body": { + "description": "Function language. When **EXTERNAL** is used, the language of the routine function should be specified in the **external_language** field, and the **return_params** of the function cannot be used (as **TABLE** return type is not supported), and the **sql_data_access** field must be **NO_SQL**.", + "ref": "catalog.CreateFunctionRoutineBody", + "launch_stage": "GA" + }, + "routine_definition": { + "description": "Function body.", + "launch_stage": "GA" + }, + "routine_dependencies": { + "description": "Function dependencies. For external UDFs, dependencies may\ncontain only credential, secret, or volume objects.", + "ref": "catalog.DependencyList", + "launch_stage": "GA" + }, + "schema_name": { + "description": "Name of parent Schema relative to its parent Catalog.", + "launch_stage": "GA" + }, + "security_type": { + "description": "Function security type.", + "ref": "catalog.CreateFunctionSecurityType", + "launch_stage": "GA" + }, + "specific_name": { + "description": "Specific name of the function; Reserved for future use.", + "launch_stage": "GA" + }, + "sql_data_access": { + "description": "Function SQL data access.", + "ref": "catalog.CreateFunctionSqlDataAccess", + "launch_stage": "GA" + }, + "sql_path": { + "description": "List of schemes whose objects can be referenced without qualification.", + "launch_stage": "GA" + } + } + }, + "catalog.CreateFunctionParameterStyle": { + "enum": [ + "S" + ], + "enum_launch_stages": { + "S": "GA" + } + }, + "catalog.CreateFunctionRequest": { + "fields": { + "function_info": { + "description": "Partial __FunctionInfo__ specifying the function to be created.", + "ref": "catalog.CreateFunction", + "launch_stage": "GA" + } + } + }, + "catalog.CreateFunctionRoutineBody": { + "enum": [ + "SQL", + "EXTERNAL" + ], + "enum_launch_stages": { + "EXTERNAL": "GA", + "SQL": "GA" + } + }, + "catalog.CreateFunctionSecurityType": { + "enum": [ + "DEFINER" + ], + "enum_launch_stages": { + "DEFINER": "GA" + } + }, + "catalog.CreateFunctionSqlDataAccess": { + "enum": [ + "CONTAINS_SQL", + "READS_SQL_DATA", + "NO_SQL" + ], + "enum_launch_stages": { + "CONTAINS_SQL": "GA", + "NO_SQL": "GA", + "READS_SQL_DATA": "GA" + } + }, + "catalog.CreateMcpServiceRequest": { + "fields": { + "mcp_service": { + "description": "The MCP service to create. Do not set `name`; the server derives it from\n`parent` and `mcp_service_id`. `source_connection` is required.", + "ref": "catalog.McpService", + "launch_stage": "GA" + }, + "mcp_service_id": { + "description": "Name for the MCP service, e.g. \"my_mcp_service\".", + "launch_stage": "GA" + }, + "parent": { + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "launch_stage": "GA" + } + } + }, + "catalog.CreateMcpServiceUserMappedCredentialRequest": { + "fields": { + "login": { + "ref": "catalog.McpServiceUserMappedCredentialLogin", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "catalog.CreateMetastore": { + "fields": { + "external_access_enabled": { + "description": "Whether to allow non-DBR clients to directly access entities under the metastore.", + "launch_stage": "GA" + }, + "name": { + "description": "The user-specified name of the metastore.", + "launch_stage": "GA" + }, + "region": { + "description": "Cloud region which the metastore serves (e.g., `us-west-2`, `westus`).", + "launch_stage": "GA" + }, + "storage_root": { + "description": "The storage root URL for metastore", + "launch_stage": "GA" + } + } + }, + "catalog.CreateMetastoreAssignment": { + "fields": { + "default_catalog_name": { + "description": "The name of the default catalog in the metastore.\nThis field is deprecated. Please use \"Default Namespace API\" to\nconfigure the default catalog for a Databricks workspace.", + "deprecated": true, + "launch_stage": "GA" + }, + "metastore_id": { + "description": "The unique ID of the metastore.", + "launch_stage": "GA" + } + } + }, + "catalog.CreateModelProviderServiceRequest": { + "fields": { + "model_provider_service": { + "description": "The model provider service to create. Do not set `name`; the server derives\nit from `parent` and `model_provider_service_id`.", + "ref": "catalog.ModelProviderService", + "launch_stage": "GA" + }, + "model_provider_service_id": { + "description": "Name for the model provider service, e.g. \"openai_prod\".", + "launch_stage": "GA" + }, + "parent": { + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "launch_stage": "GA" + } + } + }, + "catalog.CreateModelServiceRequest": { + "fields": { + "model_service": { + "description": "The model service to create. Do not set `name`; the server derives it from\n`parent` and `model_service_id`.", + "ref": "catalog.ModelService", + "launch_stage": "GA" + }, + "model_service_id": { + "description": "Name for the model service, e.g. \"my_model_service\".", + "launch_stage": "GA" + }, + "parent": { + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "launch_stage": "GA" + } + } + }, + "catalog.CreateMonitor": { + "fields": { + "assets_dir": { + "description": "[Create:REQ Update:IGN] Field for specifying the absolute path to a custom directory to store data-monitoring\nassets. Normally prepopulated to a default user location via UI and Python APIs.", + "launch_stage": "GA" + }, + "baseline_table_name": { + "description": "[Create:OPT Update:OPT] Baseline table name.\nBaseline data is used to compute drift from the data in the monitored `table_name`.\nThe baseline table and the monitored table shall have the same schema.", + "launch_stage": "GA" + }, + "custom_metrics": { + "description": "[Create:OPT Update:OPT] Custom metrics.", + "launch_stage": "GA" + }, + "data_classification_config": { + "description": "[Create:OPT Update:OPT] Data classification related config.", + "ref": "catalog.MonitorDataClassificationConfig", + "launch_stage": "PRIVATE_PREVIEW" + }, + "inference_log": { + "ref": "catalog.MonitorInferenceLog", + "launch_stage": "GA" + }, + "latest_monitor_failure_msg": { + "description": "[Create:ERR Update:IGN] The latest error message for a monitor failure.", + "launch_stage": "GA" + }, + "notifications": { + "description": "[Create:OPT Update:OPT] Field for specifying notification settings.", + "ref": "catalog.MonitorNotifications", + "launch_stage": "GA" + }, + "output_schema_name": { + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "launch_stage": "GA" + }, + "schedule": { + "description": "[Create:OPT Update:OPT] The monitor schedule.", + "ref": "catalog.MonitorCronSchedule", + "launch_stage": "GA" + }, + "skip_builtin_dashboard": { + "description": "Whether to skip creating a default dashboard summarizing data quality metrics.", + "launch_stage": "GA" + }, + "slicing_exprs": { + "description": "[Create:OPT Update:OPT] List of column expressions to slice data with for targeted analysis. The data is grouped by\neach expression independently, resulting in a separate slice for each predicate and its\ncomplements. For example `slicing_exprs=[“col_1”, “col_2 \u003e 10”]` will generate the following\nslices: two slices for `col_2 \u003e 10` (True and False), and one slice per unique value in\n`col1`. For high-cardinality columns, only the top 100 unique values by frequency will\ngenerate slices.", + "launch_stage": "GA" + }, + "snapshot": { + "description": "Configuration for monitoring snapshot tables.", + "ref": "catalog.MonitorSnapshot", + "launch_stage": "GA" + }, + "time_series": { + "description": "Configuration for monitoring time series tables.", + "ref": "catalog.MonitorTimeSeries", + "launch_stage": "GA" + }, + "warehouse_id": { + "description": "Optional argument to specify the warehouse for dashboard creation. If not specified, the first running\nwarehouse will be used.", + "launch_stage": "GA" + } + } + }, + "catalog.CreateOnlineTableRequest": { + "fields": { + "table": { + "description": "Specification of the online table to be created.", + "ref": "catalog.OnlineTable", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.CreatePolicyRequest": { + "fields": { + "policy_info": { + "description": "Required. The policy to create.", + "ref": "catalog.PolicyInfo", + "launch_stage": "GA" + } + } + }, + "catalog.CreateRegisteredModelRequest": { + "fields": { + "aliases": { + "description": "List of aliases associated with the registered model", + "launch_stage": "GA" + }, + "browse_only": { + "description": "Indicates whether the principal is limited to retrieving metadata for the associated object through the BROWSE privilege when include_browse is enabled in the request.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "catalog_name": { + "description": "The name of the catalog where the schema and the registered model reside", + "launch_stage": "GA" + }, + "comment": { + "description": "The comment attached to the registered model", + "launch_stage": "GA" + }, + "created_at": { + "description": "Creation timestamp of the registered model in milliseconds since the Unix epoch", + "launch_stage": "GA" + }, + "created_by": { + "description": "The identifier of the user who created the registered model", + "launch_stage": "GA" + }, + "full_name": { + "description": "The three-level (fully qualified) name of the registered model", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "The unique identifier of the metastore", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the registered model", + "launch_stage": "GA" + }, + "owner": { + "description": "The identifier of the user who owns the registered model", + "launch_stage": "GA" + }, + "schema_name": { + "description": "The name of the schema where the registered model resides", + "launch_stage": "GA" + }, + "storage_location": { + "description": "The storage location on the cloud under which model version data files are stored", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Last-update timestamp of the registered model in milliseconds since the Unix epoch", + "launch_stage": "GA" + }, + "updated_by": { + "description": "The identifier of the user who updated the registered model last time", + "launch_stage": "GA" + } + } + }, + "catalog.CreateRequestExternalLineage": { + "fields": { + "columns": { + "description": "List of column relationships between source and target objects.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "id": { + "description": "Unique identifier of the external lineage relationship.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "properties": { + "description": "Key-value properties associated with the external lineage relationship.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "source": { + "description": "Source object of the external lineage relationship.", + "ref": "catalog.ExternalLineageObject", + "launch_stage": "PUBLIC_PREVIEW" + }, + "target": { + "description": "Target object of the external lineage relationship.", + "ref": "catalog.ExternalLineageObject", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.CreateSchema": { + "fields": { + "catalog_name": { + "description": "Name of parent catalog.", + "launch_stage": "GA" + }, + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "custom_max_retention_hours": { + "description": "Custom maximum retention period in hours for the schema.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Name of schema, relative to parent catalog.", + "launch_stage": "GA" + }, + "properties": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + }, + "storage_root": { + "description": "Storage root URL for managed tables within schema.", + "launch_stage": "GA" + } + } + }, + "catalog.CreateSecretRequest": { + "fields": { + "secret": { + "description": "The secret object to create. The **name**, **catalog_name**, **schema_name**, and **value**\nfields are required.", + "ref": "catalog.Secret", + "launch_stage": "GA" + } + } + }, + "catalog.CreateSkillRequest": { + "fields": { + "parent": { + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "launch_stage": "PUBLIC_BETA" + }, + "skill": { + "description": "The skill to create. `comment` is the only accepted client input and may be\nomitted. Do not set `name`; the server derives it from `parent` and\n`skill_id`.", + "ref": "catalog.Skill", + "launch_stage": "PUBLIC_BETA" + }, + "skill_id": { + "description": "Name for the skill, e.g. \"basic-math\". The server normalizes this\nidentifier to lowercase. It is independent of the bundle name read from\nSKILL.md.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "catalog.CreateStorageCredential": { + "fields": { + "aws_iam_role": { + "description": "The AWS IAM role configuration.", + "ref": "catalog.AwsIamRoleRequest", + "launch_stage": "GA" + }, + "azure_managed_identity": { + "description": "The Azure managed identity configuration.", + "ref": "catalog.AzureManagedIdentityRequest", + "launch_stage": "GA" + }, + "azure_service_principal": { + "description": "The Azure service principal configuration.", + "ref": "catalog.AzureServicePrincipal", + "launch_stage": "GA" + }, + "cloudflare_api_token": { + "description": "The Cloudflare API token configuration.", + "ref": "catalog.CloudflareApiToken", + "launch_stage": "PRIVATE_PREVIEW" + }, + "comment": { + "description": "Comment associated with the credential.", + "launch_stage": "GA" + }, + "databricks_gcp_service_account": { + "description": "The Databricks managed GCP service account configuration.", + "ref": "catalog.DatabricksGcpServiceAccountRequest", + "launch_stage": "GA" + }, + "name": { + "description": "The credential name. The name must be unique among storage and service\ncredentials within the metastore.", + "launch_stage": "GA" + }, + "read_only": { + "description": "Whether the credential is usable only for read operations. Only applicable\nwhen purpose is **STORAGE**.", + "launch_stage": "GA" + }, + "skip_validation": { + "description": "Supplying true to this argument skips validation of the created credential.", + "launch_stage": "GA" + } + } + }, + "catalog.CreateTableConstraint": { + "fields": { + "constraint": { + "ref": "catalog.TableConstraint", + "launch_stage": "GA" + }, + "full_name_arg": { + "description": "The full name of the table referenced by the constraint.", + "launch_stage": "GA" + } + } + }, + "catalog.CreateTableRequest": { + "fields": { + "catalog_name": { + "description": "Name of parent catalog.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "columns": { + "description": "The array of __ColumnInfo__ definitions of the table's columns.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "data_source_format": { + "ref": "catalog.DataSourceFormat", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "Name of table, relative to parent schema.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "properties": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schema_name": { + "description": "Name of parent schema relative to its parent catalog.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "storage_location": { + "description": "Storage root URL for table (for **MANAGED**, **EXTERNAL** tables).", + "launch_stage": "PUBLIC_PREVIEW" + }, + "table_type": { + "ref": "catalog.TableType", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.CreateVolumeRequestContent": { + "fields": { + "catalog_name": { + "description": "The name of the catalog where the schema and the volume are", + "launch_stage": "GA" + }, + "comment": { + "description": "The comment attached to the volume", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the volume", + "launch_stage": "GA" + }, + "schema_name": { + "description": "The name of the schema where the volume is", + "launch_stage": "GA" + }, + "storage_location": { + "description": "The storage location on the cloud", + "launch_stage": "GA" + }, + "volume_type": { + "description": "The type of the volume. An external volume is located in the specified external location.\nA managed volume is located in the default location which is specified by the parent schema, or the parent catalog, or the Metastore.\n[Learn more](https://docs.databricks.com/aws/en/volumes/managed-vs-external)", + "ref": "catalog.VolumeType", + "launch_stage": "GA" + } + } + }, + "catalog.CredentialDependency": { + "description": "A credential that is dependent on a SQL object.", + "fields": { + "credential_name": { + "description": "Full name of the dependent credential, in the form of __credential_name__.", + "launch_stage": "GA" + } + } + }, + "catalog.CredentialInfo": { + "fields": { + "aws_iam_role": { + "description": "The AWS IAM role configuration.", + "ref": "catalog.AwsIamRole", + "launch_stage": "GA" + }, + "azure_managed_identity": { + "description": "The Azure managed identity configuration.", + "ref": "catalog.AzureManagedIdentity", + "launch_stage": "GA" + }, + "azure_service_principal": { + "description": "The Azure service principal configuration.", + "ref": "catalog.AzureServicePrincipal", + "launch_stage": "GA" + }, + "comment": { + "description": "Comment associated with the credential.", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this credential was created, in epoch milliseconds.", + "launch_stage": "GA" + }, + "created_by": { + "description": "Username of credential creator.", + "launch_stage": "GA" + }, + "databricks_gcp_service_account": { + "description": "The Databricks managed GCP service account configuration.", + "ref": "catalog.DatabricksGcpServiceAccount", + "launch_stage": "GA" + }, + "full_name": { + "description": "The full name of the credential.", + "launch_stage": "GA" + }, + "id": { + "description": "The unique identifier of the credential.", + "launch_stage": "GA" + }, + "isolation_mode": { + "description": "Whether the current securable is accessible from all workspaces or a\nspecific set of workspaces.", + "ref": "catalog.IsolationMode", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "Unique identifier of the parent metastore.", + "launch_stage": "GA" + }, + "name": { + "description": "The credential name. The name must be unique among storage and service\ncredentials within the metastore.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of current owner of credential.", + "launch_stage": "GA" + }, + "purpose": { + "description": "Indicates the purpose of the credential.", + "ref": "catalog.CredentialPurpose", + "launch_stage": "GA" + }, + "read_only": { + "description": "Whether the credential is usable only for read operations. Only applicable\nwhen purpose is **STORAGE**.", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Time at which this credential was last modified, in epoch milliseconds.", + "launch_stage": "GA" + }, + "updated_by": { + "description": "Username of user who last modified the credential.", + "launch_stage": "GA" + }, + "used_for_managed_storage": { + "description": "Whether this credential is the current metastore's root storage credential.\nOnly applicable when purpose is **STORAGE**.", + "launch_stage": "GA" + } + } + }, + "catalog.CredentialPurpose": { + "enum": [ + "STORAGE", + "SERVICE" + ], + "enum_launch_stages": { + "SERVICE": "GA", + "STORAGE": "GA" + } + }, + "catalog.CredentialType": { + "enum": [ + "UNKNOWN_CREDENTIAL_TYPE", + "USERNAME_PASSWORD", + "OAUTH_U2M", + "OAUTH_M2M", + "OAUTH_REFRESH_TOKEN", + "OAUTH_ACCESS_TOKEN", + "OAUTH_RESOURCE_OWNER_PASSWORD", + "SERVICE_CREDENTIAL", + "BEARER_TOKEN", + "OIDC_TOKEN", + "PEM_PRIVATE_KEY", + "OAUTH_U2M_MAPPING", + "ANY_STATIC_CREDENTIAL", + "OAUTH_MTLS", + "SSWS_TOKEN", + "EDGEGRID_AKAMAI" + ], + "enum_launch_stages": { + "ANY_STATIC_CREDENTIAL": "GA", + "BEARER_TOKEN": "GA", + "EDGEGRID_AKAMAI": "GA", + "OAUTH_ACCESS_TOKEN": "GA", + "OAUTH_M2M": "GA", + "OAUTH_MTLS": "GA", + "OAUTH_REFRESH_TOKEN": "GA", + "OAUTH_RESOURCE_OWNER_PASSWORD": "GA", + "OAUTH_U2M": "GA", + "OAUTH_U2M_MAPPING": "GA", + "OIDC_TOKEN": "GA", + "PEM_PRIVATE_KEY": "GA", + "SERVICE_CREDENTIAL": "GA", + "SSWS_TOKEN": "GA", + "UNKNOWN_CREDENTIAL_TYPE": "GA", + "USERNAME_PASSWORD": "GA" + } + }, + "catalog.CredentialValidationResult": { + "fields": { + "message": { + "description": "Error message would exist when the result does not equal to **PASS**.", + "launch_stage": "GA" + }, + "result": { + "description": "The results of the tested operation.", + "ref": "catalog.ValidateCredentialResult", + "launch_stage": "GA" + } + } + }, + "catalog.CurrentRequest": {}, + "catalog.DataSourceFormat": { + "description": "Data source format", + "enum": [ + "DELTA", + "CSV", + "JSON", + "AVRO", + "PARQUET", + "ORC", + "TEXT", + "UNITY_CATALOG", + "DELTASHARING", + "DATABRICKS_FORMAT", + "MYSQL_FORMAT", + "ORACLE_FORMAT", + "POSTGRESQL_FORMAT", + "REDSHIFT_FORMAT", + "SNOWFLAKE_FORMAT", + "SQLDW_FORMAT", + "SQLSERVER_FORMAT", + "SALESFORCE_FORMAT", + "SALESFORCE_DATA_CLOUD_FORMAT", + "TERADATA_FORMAT", + "BIGQUERY_FORMAT", + "NETSUITE_FORMAT", + "WORKDAY_RAAS_FORMAT", + "MONGODB_FORMAT", + "HIVE", + "VECTOR_INDEX_FORMAT", + "DATABRICKS_ROW_STORE_FORMAT", + "DELTA_UNIFORM_HUDI", + "DELTA_UNIFORM_ICEBERG", + "ICEBERG" + ], + "enum_launch_stages": { + "AVRO": "GA", + "BIGQUERY_FORMAT": "GA", + "CSV": "GA", + "DATABRICKS_FORMAT": "GA", + "DATABRICKS_ROW_STORE_FORMAT": "GA", + "DELTA": "GA", + "DELTASHARING": "GA", + "DELTA_UNIFORM_HUDI": "GA", + "DELTA_UNIFORM_ICEBERG": "GA", + "HIVE": "GA", + "ICEBERG": "GA", + "JSON": "GA", + "MONGODB_FORMAT": "GA", + "MYSQL_FORMAT": "GA", + "NETSUITE_FORMAT": "GA", + "ORACLE_FORMAT": "GA", + "ORC": "GA", + "PARQUET": "GA", + "POSTGRESQL_FORMAT": "GA", + "REDSHIFT_FORMAT": "GA", + "SALESFORCE_DATA_CLOUD_FORMAT": "GA", + "SALESFORCE_FORMAT": "GA", + "SNOWFLAKE_FORMAT": "GA", + "SQLDW_FORMAT": "GA", + "SQLSERVER_FORMAT": "GA", + "TERADATA_FORMAT": "GA", + "TEXT": "GA", + "UNITY_CATALOG": "GA", + "VECTOR_INDEX_FORMAT": "GA", + "WORKDAY_RAAS_FORMAT": "GA" + } + }, + "catalog.DatabricksGcpServiceAccount": { + "description": "GCP long-lived credential.\nDatabricks-created Google Cloud Storage service account.", + "fields": { + "credential_id": { + "description": "The Databricks internal ID that represents this managed identity.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "email": { + "description": "The email of the service account.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "private_key_id": { + "description": "The ID that represents the private key for this Service Account", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.DatabricksGcpServiceAccountRequest": { + "description": "GCP long-lived credential.\nDatabricks-created Google Cloud Storage service account." + }, + "catalog.DatabricksGcpServiceAccountResponse": { + "description": "GCP long-lived credential.\nDatabricks-created Google Cloud Storage service account.", + "fields": { + "credential_id": { + "description": "The Databricks internal ID that represents this managed identity.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "email": { + "description": "The email of the service account.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.DeleteAccountMetastoreAssignmentRequest": {}, + "catalog.DeleteAccountMetastoreRequest": { + "fields": { + "force": { + "description": "Force deletion even if the metastore is not empty. Default is false.", + "launch_stage": "GA" + } + } + }, + "catalog.DeleteAccountStorageCredentialRequest": { + "fields": { + "force": { + "description": "Force deletion even if the Storage Credential is not empty. Default is false.", + "launch_stage": "GA" + } + } + }, + "catalog.DeleteAliasRequest": {}, + "catalog.DeleteCatalogRequest": { + "fields": { + "force": { + "description": "Force deletion even if the catalog is not empty.", + "launch_stage": "GA" + } + } + }, + "catalog.DeleteConnectionRequest": {}, + "catalog.DeleteCredentialRequest": { + "fields": { + "force": { + "description": "Force an update even if there are dependent services (when purpose is\n**SERVICE**) or dependent external locations and external tables (when\npurpose is **STORAGE**).", + "launch_stage": "GA" + } + } + }, + "catalog.DeleteCredentialResponse": {}, + "catalog.DeleteEntityTagAssignmentRequest": {}, + "catalog.DeleteExternalLineageRelationshipRequest": { + "fields": { + "external_lineage_relationship": { + "ref": "catalog.DeleteRequestExternalLineage", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.DeleteExternalLocationRequest": { + "fields": { + "force": { + "description": "Force deletion even if there are dependent external tables or mounts.", + "launch_stage": "GA" + } + } + }, + "catalog.DeleteExternalMetadataRequest": {}, + "catalog.DeleteFunctionRequest": { + "fields": { + "force": { + "description": "Force deletion even if the function is notempty.", + "launch_stage": "GA" + } + } + }, + "catalog.DeleteMcpServiceRequest": { + "fields": { + "etag": { + "description": "Optimistic concurrency token from the most recent read. When set, the\ndelete succeeds only if the resource has not changed. Leave unset for an\nunconditional delete. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.DeleteMcpServiceUserMappedCredentialRequest": {}, + "catalog.DeleteMcpServiceUserMappedCredentialResponse": { + "description": "Delete returns no resource; a dedicated (empty) response keeps the revoke RPC's shape owned\nhere rather than google.protobuf.Empty." + }, + "catalog.DeleteMetastoreRequest": { + "fields": { + "force": { + "description": "Force deletion even if the metastore is not empty. Default is false.", + "launch_stage": "GA" + } + } + }, + "catalog.DeleteModelProviderServiceRequest": { + "fields": { + "etag": { + "description": "Optimistic concurrency token from the most recent read. When set, the\ndelete succeeds only if the resource has not changed. Leave unset for an\nunconditional delete. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.DeleteModelServiceRequest": { + "fields": { + "etag": { + "description": "Optimistic concurrency token from the most recent read. When set, the\ndelete succeeds only if the resource has not changed. Leave unset for an\nunconditional delete. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.DeleteModelVersionRequest": {}, + "catalog.DeleteMonitorResponse": {}, + "catalog.DeleteOnlineTableRequest": {}, + "catalog.DeletePolicyRequest": {}, + "catalog.DeletePolicyResponse": {}, + "catalog.DeleteQualityMonitorRequest": {}, + "catalog.DeleteRegisteredModelRequest": {}, + "catalog.DeleteRequestExternalLineage": { + "fields": { + "id": { + "description": "Unique identifier of the external lineage relationship.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "source": { + "description": "Source object of the external lineage relationship.", + "ref": "catalog.ExternalLineageObject", + "launch_stage": "PUBLIC_PREVIEW" + }, + "target": { + "description": "Target object of the external lineage relationship.", + "ref": "catalog.ExternalLineageObject", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.DeleteResponse": {}, + "catalog.DeleteSchemaRequest": { + "fields": { + "force": { + "description": "Force deletion even if the schema is not empty.", + "launch_stage": "GA" + } + } + }, + "catalog.DeleteSecretRequest": {}, + "catalog.DeleteSkillRequest": { + "fields": { + "etag": { + "description": "Optimistic concurrency token from the most recent read. When set, the\ndelete succeeds only if the resource has not changed. Leave unset for an\nunconditional delete. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.DeleteStorageCredentialRequest": { + "fields": { + "force": { + "description": "Force an update even if there are dependent external locations or external\ntables (when purpose is **STORAGE**) or dependent services (when purpose is\n**SERVICE**).", + "launch_stage": "GA" + } + } + }, + "catalog.DeleteTableConstraintRequest": { + "fields": { + "cascade": { + "description": "If true, try deleting all child constraints of the current constraint.\nIf false, reject this operation if the current constraint has any child constraints.", + "launch_stage": "GA" + }, + "constraint_name": { + "description": "The name of the constraint to delete.", + "launch_stage": "GA" + } + } + }, + "catalog.DeleteTableConstraintResponse": {}, + "catalog.DeleteTableRequest": {}, + "catalog.DeleteVolumeRequest": {}, + "catalog.DeltaRuntimePropertiesKvPairs": { + "description": "Properties pertaining to the current state of the delta table as given by the commit server.\nThis does not contain **delta.*** (input) properties in __TableInfo.properties__.", + "fields": { + "delta_runtime_properties": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + } + } + }, + "catalog.DeltaSharingScopeEnum": { + "enum": [ + "INTERNAL", + "INTERNAL_AND_EXTERNAL" + ], + "enum_launch_stages": { + "INTERNAL": "GA", + "INTERNAL_AND_EXTERNAL": "GA" + } + }, + "catalog.DenyOptions": { + "fields": { + "privileges": { + "description": "List of privileges to deny.\nWhen any of these privileges are requested, the policy will deny access\nif the principal and condition match.\nRequired on create and update.", + "launch_stage": "GA" + } + } + }, + "catalog.Dependency": { + "description": "A dependency of a SQL object. One of the following fields must be defined:\n__table__, __function__, __connection__, __credential__, __volume__, or __secret__.", + "fields": { + "connection": { + "ref": "catalog.ConnectionDependency", + "launch_stage": "GA" + }, + "credential": { + "ref": "catalog.CredentialDependency", + "launch_stage": "GA" + }, + "function": { + "ref": "catalog.FunctionDependency", + "launch_stage": "GA" + }, + "table": { + "ref": "catalog.TableDependency", + "launch_stage": "GA" + } + } + }, + "catalog.DependencyList": { + "description": "A list of dependencies.", + "fields": { + "dependencies": { + "description": "Array of dependencies.", + "launch_stage": "GA" + } + } + }, + "catalog.DestinationType": { + "enum": [ + "EMAIL", + "SLACK", + "GENERIC_WEBHOOK", + "MICROSOFT_TEAMS", + "URL" + ], + "enum_launch_stages": { + "EMAIL": "PUBLIC_PREVIEW", + "GENERIC_WEBHOOK": "PUBLIC_PREVIEW", + "MICROSOFT_TEAMS": "PUBLIC_PREVIEW", + "SLACK": "PUBLIC_PREVIEW", + "URL": "PUBLIC_PREVIEW" + } + }, + "catalog.DisableRequest": {}, + "catalog.DisableResponse": {}, + "catalog.EffectivePermissionsList": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + }, + "privilege_assignments": { + "description": "The privileges conveyed to each principal (either directly or via inheritance)", + "launch_stage": "GA" + } + } + }, + "catalog.EffectivePredictiveOptimizationFlag": { + "fields": { + "inherited_from_name": { + "description": "The name of the object from which the flag was inherited. If there was no inheritance, this field is left blank.", + "launch_stage": "GA" + }, + "inherited_from_type": { + "description": "The type of the object from which the flag was inherited. If there was no inheritance, this field is left blank.", + "ref": "catalog.EffectivePredictiveOptimizationFlagInheritedFromType", + "launch_stage": "GA" + }, + "value": { + "description": "Whether predictive optimization should be enabled for this object and objects under it.", + "ref": "catalog.EnablePredictiveOptimization", + "launch_stage": "GA" + } + } + }, + "catalog.EffectivePredictiveOptimizationFlagInheritedFromType": { + "enum": [ + "CATALOG", + "SCHEMA" + ], + "enum_launch_stages": { + "CATALOG": "GA", + "SCHEMA": "GA" + } + }, + "catalog.EffectivePrivilege": { + "fields": { + "inherited_from_name": { + "description": "The full name of the object that conveys this privilege via inheritance.\nThis field is omitted when privilege is not inherited (it's assigned to the securable itself).", + "launch_stage": "GA" + }, + "inherited_from_type": { + "description": "The type of the object that conveys this privilege via inheritance.\nThis field is omitted when privilege is not inherited (it's assigned to the securable itself).", + "ref": "catalog.SecurableType", + "launch_stage": "GA" + }, + "privilege": { + "description": "The privilege assigned to the principal.", + "ref": "catalog.Privilege", + "launch_stage": "GA" + } + } + }, + "catalog.EffectivePrivilegeAssignment": { + "fields": { + "principal": { + "description": "The principal (user email address or group name).", + "launch_stage": "GA" + }, + "privileges": { + "description": "The privileges conveyed to the principal (either directly or via inheritance).", + "launch_stage": "GA" + } + } + }, + "catalog.EnablePredictiveOptimization": { + "enum": [ + "DISABLE", + "ENABLE", + "INHERIT" + ], + "enum_launch_stages": { + "DISABLE": "GA", + "ENABLE": "GA", + "INHERIT": "GA" + } + }, + "catalog.EnableRequest": { + "fields": { + "catalog_name": { + "description": "the catalog for which the system schema is to enabled in", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.EnableResponse": {}, + "catalog.EncryptionDetails": { + "description": "Encryption options that apply to clients connecting to cloud storage.", + "fields": { + "sse_encryption_details": { + "description": "Server-Side Encryption properties for clients communicating with AWS s3.", + "ref": "catalog.SseEncryptionDetails", + "launch_stage": "GA" + } + } + }, + "catalog.EncryptionSettings": { + "description": "Encryption Settings are used to carry metadata for securable encryption at rest.\nCurrently used for catalogs, we can use the information supplied here to interact with a CMK.", + "fields": { + "azure_encryption_settings": { + "description": "optional Azure settings - only required if an Azure CMK is used.", + "ref": "catalog.AzureEncryptionSettings", + "launch_stage": "GA" + }, + "azure_key_vault_key_id": { + "description": "the AKV URL in Azure, null otherwise.", + "launch_stage": "GA" + }, + "customer_managed_key_id": { + "description": "the CMK uuid in AWS and GCP, null otherwise.", + "launch_stage": "GA" + } + } + }, + "catalog.EntityTagAssignment": { + "description": "Represents a tag assignment to an entity", + "fields": { + "entity_name": { + "description": "The fully qualified name of the entity to which the tag is assigned", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "entity_type": { + "description": "The type of the entity to which the tag is assigned.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "source_type": { + "description": "The source type of the tag assignment, e.g., user-assigned or system-assigned", + "ref": "catalog.TagAssignmentSourceType", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "tag_key": { + "description": "The key of the tag", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "tag_value": { + "description": "The value of the tag", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "update_time": { + "description": "The timestamp when the tag assignment was last updated", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_by": { + "description": "The user or principal who updated the tag assignment", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.EnvironmentSettings": { + "fields": { + "environment_version": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "java_dependencies": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ExistsRequest": {}, + "catalog.ExternalLineageExternalMetadata": { + "fields": { + "name": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ExternalLineageExternalMetadataInfo": { + "description": "Represents the external metadata object in the lineage event.", + "fields": { + "entity_type": { + "description": "Type of entity represented by the external metadata object.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "event_time": { + "description": "Timestamp of the lineage event.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "Name of the external metadata object.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "system_type": { + "description": "Type of external system.", + "ref": "catalog.SystemType", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ExternalLineageFileInfo": { + "description": "Represents the path information in the lineage event.", + "fields": { + "event_time": { + "description": "Timestamp of the lineage event.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "path": { + "description": "URL of the path.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "securable_name": { + "description": "The full name of the securable on the path.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "securable_type": { + "description": "The securable type of the securable on the path.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "storage_location": { + "description": "The storage location associated with securable on the path.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ExternalLineageInfo": { + "description": "Lineage response containing lineage information of a data asset.", + "fields": { + "external_lineage_info": { + "description": "Information about the edge metadata of the external lineage relationship.", + "ref": "catalog.ExternalLineageRelationshipInfo", + "launch_stage": "PUBLIC_PREVIEW" + }, + "external_metadata_info": { + "description": "Information about external metadata involved in the lineage relationship.", + "ref": "catalog.ExternalLineageExternalMetadataInfo", + "launch_stage": "PUBLIC_PREVIEW" + }, + "file_info": { + "description": "Information about the file involved in the lineage relationship.", + "ref": "catalog.ExternalLineageFileInfo", + "launch_stage": "PUBLIC_PREVIEW" + }, + "model_info": { + "description": "Information about the model version involved in the lineage relationship.", + "ref": "catalog.ExternalLineageModelVersionInfo", + "launch_stage": "PUBLIC_PREVIEW" + }, + "table_info": { + "description": "Information about the table involved in the lineage relationship.", + "ref": "catalog.ExternalLineageTableInfo", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ExternalLineageModelVersion": { + "fields": { + "name": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "version": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ExternalLineageModelVersionInfo": { + "description": "Represents the model version information in the lineage event.", + "fields": { + "event_time": { + "description": "Timestamp of the lineage event.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "model_name": { + "description": "Name of the model.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "version": { + "description": "Version number of the model.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ExternalLineageObject": { + "fields": { + "external_metadata": { + "ref": "catalog.ExternalLineageExternalMetadata", + "launch_stage": "PUBLIC_PREVIEW" + }, + "model_version": { + "ref": "catalog.ExternalLineageModelVersion", + "launch_stage": "PUBLIC_PREVIEW" + }, + "path": { + "ref": "catalog.ExternalLineagePath", + "launch_stage": "PUBLIC_PREVIEW" + }, + "table": { + "ref": "catalog.ExternalLineageTable", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ExternalLineagePath": { + "fields": { + "url": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ExternalLineageRelationship": { + "fields": { + "columns": { + "description": "List of column relationships between source and target objects.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "id": { + "description": "Unique identifier of the external lineage relationship.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "properties": { + "description": "Key-value properties associated with the external lineage relationship.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "source": { + "description": "Source object of the external lineage relationship.", + "ref": "catalog.ExternalLineageObject", + "launch_stage": "PUBLIC_PREVIEW" + }, + "target": { + "description": "Target object of the external lineage relationship.", + "ref": "catalog.ExternalLineageObject", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ExternalLineageRelationshipInfo": { + "fields": { + "columns": { + "description": "List of column relationships between source and target objects.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "id": { + "description": "Unique identifier of the external lineage relationship.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "properties": { + "description": "Key-value properties associated with the external lineage relationship.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "source": { + "description": "Source object of the external lineage relationship.", + "ref": "catalog.ExternalLineageObject", + "launch_stage": "PUBLIC_PREVIEW" + }, + "target": { + "description": "Target object of the external lineage relationship.", + "ref": "catalog.ExternalLineageObject", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ExternalLineageTable": { + "fields": { + "name": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ExternalLineageTableInfo": { + "description": "Represents the table information in the lineage event.", + "fields": { + "catalog_name": { + "description": "Name of Catalog.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "event_time": { + "description": "Timestamp of the lineage event.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "Name of Table.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schema_name": { + "description": "Name of Schema.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ExternalLocationInfo": { + "fields": { + "browse_only": { + "description": "Indicates whether the principal is limited to retrieving metadata for the associated object through the BROWSE privilege when include_browse is enabled in the request.", + "launch_stage": "GA" + }, + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this external location was created, in epoch milliseconds.", + "launch_stage": "GA" + }, + "created_by": { + "description": "Username of external location creator.", + "launch_stage": "GA" + }, + "credential_id": { + "description": "Unique ID of the location's storage credential.", + "launch_stage": "GA" + }, + "credential_name": { + "description": "Name of the storage credential used with this location.", + "launch_stage": "GA" + }, + "effective_enable_file_events": { + "description": "The effective value of `enable_file_events` after applying server-side defaults.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_file_event_queue": { + "description": "The effective file event queue configuration after applying server-side defaults.\nAlways populated when a queue is provisioned, regardless of whether the user explicitly\nset `enable_file_events`. Use this field instead of `file_event_queue` for reading\nthe actual queue state.", + "ref": "catalog.FileEventQueue", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "enable_file_events": { + "description": "Whether to enable file events on this external location. Default to `true`. Set to `false` to disable file events.\nThe actual applied value may differ due to server-side defaults; check `effective_enable_file_events` for the effective state.", + "launch_stage": "GA" + }, + "encryption_details": { + "ref": "catalog.EncryptionDetails", + "launch_stage": "GA" + }, + "fallback": { + "description": "Indicates whether fallback mode is enabled for this external location. When fallback mode is enabled, the access to the location falls back to cluster credentials if UC credentials are not sufficient.", + "launch_stage": "GA" + }, + "file_event_queue": { + "description": "File event queue settings. If `enable_file_events` is not `false`, must be defined and have exactly one of the documented properties.", + "ref": "catalog.FileEventQueue", + "launch_stage": "GA" + }, + "isolation_mode": { + "ref": "catalog.IsolationMode", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "Unique identifier of metastore hosting the external location.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the external location.", + "launch_stage": "GA" + }, + "owner": { + "description": "The owner of the external location.", + "launch_stage": "GA" + }, + "read_only": { + "description": "Indicates whether the external location is read-only.", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Time at which external location this was last modified, in epoch milliseconds.", + "launch_stage": "GA" + }, + "updated_by": { + "description": "Username of user who last modified the external location.", + "launch_stage": "GA" + }, + "url": { + "description": "Path URL of the external location.", + "launch_stage": "GA" + } + } + }, + "catalog.ExternalMetadata": { + "fields": { + "columns": { + "description": "List of columns associated with the external metadata object.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "create_time": { + "description": "Time at which this external metadata object was created.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "Username of external metadata object creator.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "User-provided free-form text description.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "entity_type": { + "description": "Type of entity within the external system.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "id": { + "description": "Unique identifier of the external metadata object.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "metastore_id": { + "description": "Unique identifier of parent metastore.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Name of the external metadata object.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "owner": { + "description": "Owner of the external metadata object.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "properties": { + "description": "A map of key-value properties attached to the external metadata object.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "system_type": { + "description": "Type of external system.", + "ref": "catalog.SystemType", + "launch_stage": "PUBLIC_PREVIEW" + }, + "update_time": { + "description": "Time at which this external metadata object was last modified.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_by": { + "description": "Username of user who last modified external metadata object.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "url": { + "description": "URL associated with the external metadata object.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.FailedStatus": { + "description": "Detailed status of an online table. Shown if the online table is in the OFFLINE_FAILED or the\nONLINE_PIPELINE_FAILED state.", + "fields": { + "last_processed_commit_version": { + "description": "The last source table Delta version that was synced to the online table. Note that this Delta\nversion may only be partially synced to the online table. Only populated if the table is still\nonline and available for serving.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "timestamp": { + "description": "The timestamp of the last time any data was synchronized from the source table to the online\ntable. Only populated if the table is still online and available for serving.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.FileEventQueue": { + "fields": { + "managed_aqs": { + "ref": "catalog.AzureQueueStorage", + "launch_stage": "GA" + }, + "managed_pubsub": { + "ref": "catalog.GcpPubsub", + "launch_stage": "GA" + }, + "managed_sqs": { + "ref": "catalog.AwsSqsQueue", + "launch_stage": "GA" + }, + "provided_aqs": { + "ref": "catalog.AzureQueueStorage", + "launch_stage": "GA" + }, + "provided_pubsub": { + "ref": "catalog.GcpPubsub", + "launch_stage": "GA" + }, + "provided_sqs": { + "ref": "catalog.AwsSqsQueue", + "launch_stage": "GA" + } + } + }, + "catalog.FinalizeSkillRequest": {}, + "catalog.ForeignKeyConstraint": { + "fields": { + "child_columns": { + "description": "Column names for this constraint.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the constraint.", + "launch_stage": "GA" + }, + "parent_columns": { + "description": "Column names for this constraint.", + "launch_stage": "GA" + }, + "parent_table": { + "description": "The full name of the parent constraint.", + "launch_stage": "GA" + }, + "rely": { + "description": "True if the constraint is RELY, false or unset if NORELY.", + "launch_stage": "GA" + } + } + }, + "catalog.FunctionArgExpression": { + "description": "An expression that is evaluated at query time against per-request context.\nNew variants (e.g., identity attributes) are added as additional oneof cases.", + "fields": { + "tag_introspection": { + "description": "An expression that introspects tags at query time.", + "ref": "catalog.TagIntrospectionExpression", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.FunctionArgument": { + "fields": { + "alias": { + "description": "The alias of a matched column.", + "launch_stage": "GA" + }, + "constant": { + "description": "A constant literal.", + "launch_stage": "GA" + }, + "function_arg_expression": { + "description": "An expression evaluated at query time. Wraps per-request expression variants\n(e.g., tag introspection) so new variants can be added without extending the\nFunctionArgument oneof.", + "ref": "catalog.FunctionArgExpression", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.FunctionDependency": { + "description": "A function that is dependent on a SQL object.", + "fields": { + "function_full_name": { + "description": "Full name of the dependent function, in the form of __catalog_name__.__schema_name__.__function_name__.", + "launch_stage": "GA" + } + } + }, + "catalog.FunctionInfo": { + "fields": { + "browse_only": { + "description": "Indicates whether the principal is limited to retrieving metadata for the associated object through the BROWSE privilege when include_browse is enabled in the request.", + "launch_stage": "GA" + }, + "catalog_name": { + "description": "Name of parent Catalog.", + "launch_stage": "GA" + }, + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this function was created, in epoch milliseconds.", + "launch_stage": "GA" + }, + "created_by": { + "description": "Username of function creator.", + "launch_stage": "GA" + }, + "data_type": { + "description": "Scalar function return data type.", + "ref": "catalog.ColumnTypeName", + "launch_stage": "GA" + }, + "external_language": { + "description": "External function language.", + "launch_stage": "GA" + }, + "external_name": { + "description": "External function name.", + "launch_stage": "GA" + }, + "full_data_type": { + "description": "Pretty printed function data type.", + "launch_stage": "GA" + }, + "full_name": { + "description": "Full name of Function, in form of **catalog_name**.**schema_name**.**function_name**", + "launch_stage": "GA" + }, + "function_id": { + "description": "Id of Function, relative to parent schema.", + "launch_stage": "GA" + }, + "input_params": { + "description": "Function input parameters.", + "ref": "catalog.FunctionParameterInfos", + "launch_stage": "GA" + }, + "is_deterministic": { + "description": "Whether the function is deterministic.", + "launch_stage": "GA" + }, + "is_null_call": { + "description": "Function null call.", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "Unique identifier of parent metastore.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of function, relative to parent schema.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of current owner of the function.", + "launch_stage": "GA" + }, + "parameter_style": { + "description": "Function parameter style. **S** is the value for SQL.", + "ref": "catalog.FunctionInfoParameterStyle", + "launch_stage": "GA" + }, + "properties": { + "description": "JSON-serialized key-value pair map, encoded (escaped) as a string.", + "launch_stage": "GA" + }, + "return_params": { + "description": "Table function return parameters.", + "ref": "catalog.FunctionParameterInfos", + "launch_stage": "GA" + }, + "routine_body": { + "description": "Function language. When **EXTERNAL** is used, the language of the routine function should be specified in the **external_language** field, and the **return_params** of the function cannot be used (as **TABLE** return type is not supported), and the **sql_data_access** field must be **NO_SQL**.", + "ref": "catalog.FunctionInfoRoutineBody", + "launch_stage": "GA" + }, + "routine_definition": { + "description": "Function body.", + "launch_stage": "GA" + }, + "routine_dependencies": { + "description": "Function dependencies. For external UDFs, dependencies may\ncontain only credential, secret, or volume objects.", + "ref": "catalog.DependencyList", + "launch_stage": "GA" + }, + "schema_name": { + "description": "Name of parent Schema relative to its parent Catalog.", + "launch_stage": "GA" + }, + "security_type": { + "description": "Function security type.", + "ref": "catalog.FunctionInfoSecurityType", + "launch_stage": "GA" + }, + "specific_name": { + "description": "Specific name of the function; Reserved for future use.", + "launch_stage": "GA" + }, + "sql_data_access": { + "description": "Function SQL data access.", + "ref": "catalog.FunctionInfoSqlDataAccess", + "launch_stage": "GA" + }, + "sql_path": { + "description": "List of schemes whose objects can be referenced without qualification.", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Time at which this function was last modified, in epoch milliseconds.", + "launch_stage": "GA" + }, + "updated_by": { + "description": "Username of user who last modified the function.", + "launch_stage": "GA" + } + } + }, + "catalog.FunctionInfoParameterStyle": { + "enum": [ + "S" + ], + "enum_launch_stages": { + "S": "GA" + } + }, + "catalog.FunctionInfoRoutineBody": { + "enum": [ + "SQL", + "EXTERNAL" + ], + "enum_launch_stages": { + "EXTERNAL": "GA", + "SQL": "GA" + } + }, + "catalog.FunctionInfoSecurityType": { + "enum": [ + "DEFINER" + ], + "enum_launch_stages": { + "DEFINER": "GA" + } + }, + "catalog.FunctionInfoSqlDataAccess": { + "enum": [ + "CONTAINS_SQL", + "READS_SQL_DATA", + "NO_SQL" + ], + "enum_launch_stages": { + "CONTAINS_SQL": "GA", + "NO_SQL": "GA", + "READS_SQL_DATA": "GA" + } + }, + "catalog.FunctionParameterInfo": { + "fields": { + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of Parameter.", + "launch_stage": "GA" + }, + "parameter_default": { + "description": "Default value of the parameter.", + "launch_stage": "GA" + }, + "parameter_mode": { + "description": "Function parameter mode.", + "ref": "catalog.FunctionParameterMode", + "launch_stage": "GA" + }, + "parameter_type": { + "description": "Function parameter type.", + "ref": "catalog.FunctionParameterType", + "launch_stage": "GA" + }, + "position": { + "description": "Ordinal position of column (starting at position 0).", + "launch_stage": "GA" + }, + "type_interval_type": { + "description": "Format of IntervalType.", + "launch_stage": "GA" + }, + "type_json": { + "description": "Full data type spec, JSON-serialized.", + "launch_stage": "GA" + }, + "type_name": { + "description": "Name of type (INT, STRUCT, MAP, etc.)", + "ref": "catalog.ColumnTypeName", + "launch_stage": "GA" + }, + "type_precision": { + "description": "Digits of precision; required on Create for DecimalTypes.", + "launch_stage": "GA" + }, + "type_scale": { + "description": "Digits to right of decimal; Required on Create for DecimalTypes.", + "launch_stage": "GA" + }, + "type_text": { + "description": "Full data type spec, SQL/catalogString text.", + "launch_stage": "GA" + } + } + }, + "catalog.FunctionParameterInfos": { + "fields": { + "parameters": { + "launch_stage": "GA" + } + } + }, + "catalog.FunctionParameterMode": { + "enum": [ + "IN" + ], + "enum_launch_stages": { + "IN": "GA" + } + }, + "catalog.FunctionParameterType": { + "enum": [ + "PARAM", + "COLUMN" + ], + "enum_launch_stages": { + "COLUMN": "GA", + "PARAM": "GA" + } + }, + "catalog.GcpOauthToken": { + "description": "GCP temporary credentials for API authentication.\nRead more at https://developers.google.com/identity/protocols/oauth2/service-account", + "fields": { + "oauth_token": { + "launch_stage": "GA" + } + } + }, + "catalog.GcpPubsub": { + "fields": { + "managed_resource_id": { + "description": "Unique identifier included in the name of file events managed cloud resources.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "subscription_name": { + "description": "The Pub/Sub subscription name in the format projects/{project}/subscriptions/{subscription name}.\nOnly required for provided_pubsub.", + "launch_stage": "GA" + } + } + }, + "catalog.GenerateTemporaryPathCredentialRequest": { + "fields": { + "dry_run": { + "description": "Optional. When set to true, the service will not validate that the generated\ncredentials can perform write operations, therefore no new paths will be created\nand the response will not contain valid credentials. Defaults to false.", + "launch_stage": "GA" + }, + "operation": { + "description": "The operation being performed on the path.", + "ref": "catalog.PathOperation", + "launch_stage": "GA" + }, + "url": { + "description": "URL for path-based access.", + "launch_stage": "GA" + } + } + }, + "catalog.GenerateTemporaryPathCredentialResponse": { + "fields": { + "aws_temp_credentials": { + "ref": "catalog.AwsCredentials", + "launch_stage": "GA" + }, + "azure_aad": { + "ref": "catalog.AzureActiveDirectoryToken", + "launch_stage": "GA" + }, + "azure_user_delegation_sas": { + "ref": "catalog.AzureUserDelegationSas", + "launch_stage": "GA" + }, + "expiration_time": { + "description": "Server time when the credential will expire, in epoch milliseconds.\nThe API client is advised to cache the credential given this expiration time.", + "launch_stage": "GA" + }, + "gcp_oauth_token": { + "ref": "catalog.GcpOauthToken", + "launch_stage": "GA" + }, + "r2_temp_credentials": { + "ref": "catalog.R2Credentials", + "launch_stage": "GA" + }, + "url": { + "description": "The URL of the storage path accessible by the temporary credential.", + "launch_stage": "GA" + } + } + }, + "catalog.GenerateTemporaryServiceCredentialAzureOptions": { + "description": "The Azure cloud options to customize the requested temporary credential", + "fields": { + "resources": { + "description": "The resources to which the temporary Azure credential should apply. These resources\nare the scopes that are passed to the token provider (see https://learn.microsoft.com/python/api/azure-core/azure.core.credentials.tokencredential?view=azure-python)", + "launch_stage": "GA" + } + } + }, + "catalog.GenerateTemporaryServiceCredentialGcpOptions": { + "description": "The GCP cloud options to customize the requested temporary credential", + "fields": { + "scopes": { + "description": "The scopes to which the temporary GCP credential should apply. These resources\nare the scopes that are passed to the token provider (see\nhttps://google-auth.readthedocs.io/en/latest/reference/google.auth.html#google.auth.credentials.Credentials)", + "launch_stage": "GA" + } + } + }, + "catalog.GenerateTemporaryServiceCredentialRequest": { + "fields": { + "azure_options": { + "ref": "catalog.GenerateTemporaryServiceCredentialAzureOptions", + "launch_stage": "GA" + }, + "credential_name": { + "description": "The name of the service credential used to generate a temporary credential", + "launch_stage": "GA" + }, + "gcp_options": { + "ref": "catalog.GenerateTemporaryServiceCredentialGcpOptions", + "launch_stage": "GA" + } + } + }, + "catalog.GenerateTemporaryTableCredentialRequest": { + "fields": { + "operation": { + "description": "The operation performed against the table data, either READ or READ_WRITE. If READ_WRITE is specified,\nthe credentials returned will have write permissions, otherwise, it will be read only.", + "ref": "catalog.TableOperation", + "launch_stage": "GA" + }, + "table_id": { + "description": "UUID of the table to read or write.", + "launch_stage": "GA" + } + } + }, + "catalog.GenerateTemporaryTableCredentialResponse": { + "fields": { + "aws_temp_credentials": { + "ref": "catalog.AwsCredentials", + "launch_stage": "GA" + }, + "azure_aad": { + "ref": "catalog.AzureActiveDirectoryToken", + "launch_stage": "GA" + }, + "azure_user_delegation_sas": { + "ref": "catalog.AzureUserDelegationSas", + "launch_stage": "GA" + }, + "expiration_time": { + "description": "Server time when the credential will expire, in epoch milliseconds.\nThe API client is advised to cache the credential given this expiration time.", + "launch_stage": "GA" + }, + "gcp_oauth_token": { + "ref": "catalog.GcpOauthToken", + "launch_stage": "GA" + }, + "r2_temp_credentials": { + "ref": "catalog.R2Credentials", + "launch_stage": "GA" + }, + "url": { + "description": "The URL of the storage path accessible by the temporary credential.", + "launch_stage": "GA" + } + } + }, + "catalog.GenerateTemporaryVolumeCredentialRequest": { + "description": "Generate volume credentials RPC", + "fields": { + "operation": { + "description": "The operation performed against the volume data, either READ_VOLUME or WRITE_VOLUME. If WRITE_VOLUME is specified,\nthe credentials returned will have write permissions, otherwise, it will be read only.", + "ref": "catalog.VolumeOperation", + "launch_stage": "PUBLIC_PREVIEW" + }, + "volume_id": { + "description": "Id of the volume to read or write.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.GenerateTemporaryVolumeCredentialResponse": { + "fields": { + "aws_temp_credentials": { + "ref": "catalog.AwsCredentials", + "launch_stage": "PUBLIC_PREVIEW" + }, + "azure_aad": { + "ref": "catalog.AzureActiveDirectoryToken", + "launch_stage": "PUBLIC_PREVIEW" + }, + "azure_user_delegation_sas": { + "ref": "catalog.AzureUserDelegationSas", + "launch_stage": "PUBLIC_PREVIEW" + }, + "expiration_time": { + "description": "Server time when the credential will expire, in epoch milliseconds.\nThe API client is advised to cache the credential given this expiration time.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "gcp_oauth_token": { + "ref": "catalog.GcpOauthToken", + "launch_stage": "PUBLIC_PREVIEW" + }, + "r2_temp_credentials": { + "ref": "catalog.R2Credentials", + "launch_stage": "PUBLIC_PREVIEW" + }, + "url": { + "description": "The URL of the storage path accessible by the temporary credential.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.GetAccessRequestDestinationsRequest": {}, + "catalog.GetAccountMetastoreAssignmentRequest": {}, + "catalog.GetAccountMetastoreRequest": {}, + "catalog.GetAccountStorageCredentialRequest": {}, + "catalog.GetArtifactAllowlistRequest": {}, + "catalog.GetBindingsRequest": { + "fields": { + "max_results": { + "description": "Maximum number of workspace bindings to return.\n- When set to 0, the page length is set to a server configured value (recommended);\n- When set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- When set to a value less than 0, an invalid parameter error is returned;\n- If not set, all the workspace bindings are returned (not recommended).", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "catalog.GetByAliasRequest": { + "fields": { + "include_aliases": { + "description": "Whether to include aliases associated with the model version in the response", + "launch_stage": "GA" + } + } + }, + "catalog.GetCatalogRequest": { + "fields": { + "include_browse": { + "description": "Whether to include catalogs in the response for which the principal can only access selective metadata for", + "launch_stage": "GA" + } + } + }, + "catalog.GetCatalogWorkspaceBindingsResponse": { + "fields": { + "workspaces": { + "description": "A list of workspace IDs", + "launch_stage": "GA" + } + } + }, + "catalog.GetConnectionRequest": {}, + "catalog.GetCredentialRequest": {}, + "catalog.GetEffectiveRequest": { + "fields": { + "max_results": { + "description": "Specifies the maximum number of privileges to return (page length).\nEvery EffectivePrivilegeAssignment present in a single page response is guaranteed to contain all the effective\nprivileges granted on (or inherited by) the requested Securable for the respective principal.\n\nIf not set, all the effective permissions are returned.\nIf set to\n- lesser than 0: invalid parameter error\n- 0: page length is set to a server configured value\n- lesser than 150 but greater than 0: invalid parameter error (this is to ensure that server is able to return at\nleast one complete EffectivePrivilegeAssignment in a single page response)\n- greater than (or equal to) 150: page length is the minimum of this value and a server configured value", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque token for the next page of results (pagination).", + "launch_stage": "GA" + }, + "principal": { + "description": "If provided, only the effective permissions for the specified principal (user or group) are returned.", + "launch_stage": "GA" + } + } + }, + "catalog.GetEntityTagAssignmentRequest": {}, + "catalog.GetExternalLocationRequest": { + "fields": { + "include_browse": { + "description": "Whether to include external locations in the response for which the principal can only access selective metadata for", + "launch_stage": "GA" + } + } + }, + "catalog.GetExternalMetadataRequest": {}, + "catalog.GetFunctionRequest": { + "fields": { + "include_browse": { + "description": "Whether to include functions in the response for which the principal can only access selective metadata for", + "launch_stage": "GA" + } + } + }, + "catalog.GetGrantRequest": { + "fields": { + "max_results": { + "description": "Specifies the maximum number of privileges to return (page length).\nEvery PrivilegeAssignment present in a single page response is guaranteed to contain all the privileges granted on\nthe requested Securable for the respective principal.\n\nIf not set, all the permissions are returned.\nIf set to\n- lesser than 0: invalid parameter error\n- 0: page length is set to a server configured value\n- lesser than 150 but greater than 0: invalid parameter error (this is to ensure that server is able to return at\nleast one complete PrivilegeAssignment in a single page response)\n- greater than (or equal to) 150: page length is the minimum of this value and a server configured value", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + }, + "principal": { + "description": "If provided, only the permissions for the specified principal (user or group) are returned.", + "launch_stage": "GA" + } + } + }, + "catalog.GetMcpServiceRequest": {}, + "catalog.GetMcpServiceUserMappedCredentialRequest": {}, + "catalog.GetMetastoreRequest": {}, + "catalog.GetMetastoreSummaryResponse": { + "fields": { + "cloud": { + "description": "Cloud vendor of the metastore home shard (e.g., `aws`, `azure`, `gcp`).", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this metastore was created, in epoch milliseconds.", + "launch_stage": "GA" + }, + "created_by": { + "description": "Username of metastore creator.", + "launch_stage": "GA" + }, + "default_data_access_config_id": { + "description": "Unique identifier of the metastore's (Default) Data Access Configuration.", + "deprecated": true, + "launch_stage": "GA" + }, + "delta_sharing_organization_name": { + "description": "The organization name of a Delta Sharing entity, to be used in Databricks-to-Databricks Delta Sharing as the official name.", + "launch_stage": "GA" + }, + "delta_sharing_recipient_token_lifetime_in_seconds": { + "description": "The lifetime of delta sharing recipient token in seconds.", + "launch_stage": "GA" + }, + "delta_sharing_scope": { + "description": "The scope of Delta Sharing enabled for the metastore.", + "ref": "catalog.DeltaSharingScopeEnum", + "launch_stage": "GA" + }, + "external_access_enabled": { + "description": "Whether to allow non-DBR clients to directly access entities under the metastore.", + "launch_stage": "GA" + }, + "global_metastore_id": { + "description": "Globally unique metastore ID across clouds and regions, of the form `cloud:region:metastore_id`.", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "Unique identifier of metastore.", + "launch_stage": "GA" + }, + "name": { + "description": "The user-specified name of the metastore.", + "launch_stage": "GA" + }, + "owner": { + "description": "The owner of the metastore.", + "launch_stage": "GA" + }, + "privilege_model_version": { + "description": "Privilege model version of the metastore, of the form `major.minor` (e.g., `1.0`).", + "launch_stage": "GA" + }, + "region": { + "description": "Cloud region which the metastore serves (e.g., `us-west-2`, `westus`).", + "launch_stage": "GA" + }, + "storage_root": { + "description": "The storage root URL for metastore", + "launch_stage": "GA" + }, + "storage_root_credential_id": { + "description": "UUID of storage credential to access the metastore storage_root.", + "launch_stage": "GA" + }, + "storage_root_credential_name": { + "description": "Name of the storage credential to access the metastore storage_root.", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Time at which the metastore was last modified, in epoch milliseconds.", + "launch_stage": "GA" + }, + "updated_by": { + "description": "Username of user who last modified the metastore.", + "launch_stage": "GA" + } + } + }, + "catalog.GetModelProviderServiceRequest": {}, + "catalog.GetModelServiceRequest": {}, + "catalog.GetModelVersionRequest": { + "fields": { + "include_aliases": { + "description": "Whether to include aliases associated with the model version in the response", + "launch_stage": "GA" + }, + "include_browse": { + "description": "Whether to include model versions in the response for which the principal can only access selective metadata for", + "launch_stage": "GA" + } + } + }, + "catalog.GetOnlineTableRequest": {}, + "catalog.GetPermissionsResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + }, + "privilege_assignments": { + "description": "The privileges assigned to each principal", + "launch_stage": "GA" + } + } + }, + "catalog.GetPolicyRequest": {}, + "catalog.GetQualityMonitorRequest": {}, + "catalog.GetQuotaRequest": {}, + "catalog.GetQuotaResponse": { + "fields": { + "quota_info": { + "description": "The returned QuotaInfo.", + "ref": "catalog.QuotaInfo", + "launch_stage": "GA" + } + } + }, + "catalog.GetRefreshRequest": {}, + "catalog.GetRegisteredModelRequest": { + "fields": { + "include_aliases": { + "description": "Whether to include registered model aliases in the response", + "launch_stage": "GA" + }, + "include_browse": { + "description": "Whether to include registered models in the response for which the principal can only access selective metadata for", + "launch_stage": "GA" + } + } + }, + "catalog.GetSchemaRequest": { + "fields": { + "include_browse": { + "description": "Whether to include schemas in the response for which the principal can only access selective metadata for", + "launch_stage": "GA" + } + } + }, + "catalog.GetSecretRequest": { + "fields": { + "include_value": { + "description": "Whether to include the secret value in the response. Defaults to false. Requires the\n**READ_SECRET** privilege.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.GetSkillRequest": {}, + "catalog.GetStorageCredentialRequest": {}, + "catalog.GetTableRequest": { + "fields": { + "include_browse": { + "description": "Whether to include tables in the response for which the principal can only access selective metadata for.", + "launch_stage": "GA" + }, + "include_delta_metadata": { + "description": "Whether delta metadata should be included in the response.", + "launch_stage": "GA" + }, + "include_manifest_capabilities": { + "description": "Whether to include a manifest containing table capabilities in the response.", + "launch_stage": "GA" + } + } + }, + "catalog.GetWorkspaceBindingRequest": {}, + "catalog.GetWorkspaceBindingsResponse": { + "fields": { + "bindings": { + "description": "List of workspace bindings", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + } + } + }, + "catalog.GovernedTagReference": { + "description": "A governed tag referenced by a policy condition.", + "fields": { + "tag_key": { + "description": "The governed tag key.", + "launch_stage": "GA" + }, + "tag_value": { + "description": "The governed tag value, when the policy references a specific value.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.GrantOptions": { + "fields": { + "privileges": { + "description": "List of privileges to grant.\nWhen any of these privileges are requested, the policy will grant access\nif the principal and condition match.\nRequired on create and update.", + "launch_stage": "GA" + } + } + }, + "catalog.InferenceTableConfig": { + "description": "Configuration for logging request and response payloads to a Unity Catalog\ninference table. When this configuration is present, payload logging is\nenabled by default.", + "fields": { + "is_deleted": { + "description": "Whether the referenced inference table has been deleted. The configuration\nremains visible so you can identify the broken dependency. Payload logging\ncannot continue until the table is restored or the configuration is updated.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "parent": { + "description": "Parent Unity Catalog schema where the inference table is created, in the\nform `schemas/{catalog}.{schema}`. Required when configuring an inference\ntable. After the inference table is created, this field cannot be changed.", + "launch_stage": "GA" + }, + "table": { + "description": "Resolved UC table for payload logs.\nFormat: `tables/{catalog}.{schema}.{table}`.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "table_name_prefix": { + "description": "Prefix used to form the inference table's registered name. AI Gateway\nappends `_payload`; for example, `table_name_prefix = \"orders\"` creates\n`orders_payload`. If unset, the prefix defaults to the service name. Read\n`table` from the response for the resulting resource name. After the\ninference table is created, this field cannot be changed.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.IsolationMode": { + "enum": [ + "ISOLATION_MODE_OPEN", + "ISOLATION_MODE_ISOLATED" + ], + "enum_launch_stages": { + "ISOLATION_MODE_ISOLATED": "GA", + "ISOLATION_MODE_OPEN": "GA" + } + }, + "catalog.LineageDirection": { + "enum": [ + "UPSTREAM", + "DOWNSTREAM" + ], + "enum_launch_stages": { + "DOWNSTREAM": "PUBLIC_PREVIEW", + "UPSTREAM": "PUBLIC_PREVIEW" + } + }, + "catalog.ListAccountMetastoreAssignmentsRequest": {}, + "catalog.ListAccountMetastoreAssignmentsResponse": { + "description": "The metastore assignments were successfully returned.", + "fields": { + "workspace_ids": { + "launch_stage": "GA" + } + } + }, + "catalog.ListAccountMetastoresRequest": {}, + "catalog.ListAccountStorageCredentialsRequest": {}, + "catalog.ListAccountStorageCredentialsResponse": { + "description": "The metastore storage credentials were successfully returned.", + "fields": { + "storage_credentials": { + "description": "An array of metastore storage credentials.", + "launch_stage": "GA" + } + } + }, + "catalog.ListCatalogsRequest": { + "fields": { + "include_browse": { + "description": "Whether to include catalogs in the response for which the principal can only access selective metadata for", + "launch_stage": "GA" + }, + "include_unbound": { + "description": "Whether to include catalogs not bound to the workspace.\nEffective only if the user has permission to update the catalog–workspace binding.", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of catalogs to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid catalogs are returned (not recommended).\n- Note: The number of returned catalogs might be less than the specified max_results size, even zero.\nThe only definitive indication that no further catalogs can be fetched is when the next_page_token is unset from the response.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "catalog.ListCatalogsResponse": { + "fields": { + "catalogs": { + "description": "An array of catalog information objects.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + } + } + }, + "catalog.ListConnectionsRequest": { + "fields": { + "max_results": { + "description": "Maximum number of connections to return.\n- If not set, all connections are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + }, + "parent": { + "description": "Optional. Parent schema filter for listing schema-level connections, in format \"schemas/{catalog}.{schema}\".", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ListConnectionsResponse": { + "fields": { + "connections": { + "description": "An array of connection information objects.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + } + } + }, + "catalog.ListCredentialsRequest": { + "fields": { + "include_unbound": { + "description": "Whether to include credentials not bound to the workspace.\nEffective only if the user has permission to update the credential–workspace binding.", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of credentials to return.\n- If not set, the default max page size is used.\n- When set to a value greater than 0, the page length is the minimum of\nthis value and a server-configured value.\n- When set to 0, the page length is set to a server-configured value\n(recommended).\n- When set to a value less than 0, an invalid parameter error is\nreturned.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque token to retrieve the next page of results.", + "launch_stage": "GA" + }, + "purpose": { + "description": "Return only credentials for the specified purpose.", + "ref": "catalog.CredentialPurpose", + "launch_stage": "GA" + } + } + }, + "catalog.ListCredentialsResponse": { + "fields": { + "credentials": { + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no\nmore pages.\n__page_token__ should be set to this value for the next request (for the\nnext page of results).", + "launch_stage": "GA" + } + } + }, + "catalog.ListEffectivePrivilegeAssignmentsRequest": { + "fields": { + "page_size": { + "description": "Specifies the maximum number of privilege assignments to return (page length).\nEvery EffectivePrivilegeAssignment present in a single page response is guaranteed to contain all the effective\nprivileges granted on (or inherited by) the requested Securable for the respective principal.\n\nIf not set, a server-configured default is used.\nIf set to\n- lesser than 0: invalid parameter error\n- 0: page length is set to a server configured value\n- lesser than 150 but greater than 0: invalid parameter error (this is to ensure that server is able to return at\nleast one complete EffectivePrivilegeAssignment in a single page response)\n- greater than (or equal to) 150: page length is the minimum of this value and a server configured value", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + }, + "principal": { + "description": "If provided, only the effective permissions for the specified principal (user or group) are returned.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ListEffectivePrivilegeAssignmentsResponse": { + "fields": { + "effective_privilege_assignments": { + "description": "The effective privilege assignments for the securable (and optional principal).", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.ListEntityTagAssignmentsRequest": { + "fields": { + "max_results": { + "description": "Optional. Maximum number of tag assignments to return in a single page", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Optional. Pagination token to retrieve the next page of results", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ListEntityTagAssignmentsResponse": { + "fields": { + "next_page_token": { + "description": "Optional. Pagination token for retrieving the next page of results", + "launch_stage": "GA" + }, + "tag_assignments": { + "description": "The list of tag assignments", + "launch_stage": "GA" + } + } + }, + "catalog.ListExternalLineageRelationshipsRequest": { + "fields": { + "lineage_direction": { + "description": "The lineage direction to filter on.", + "ref": "catalog.LineageDirection", + "launch_stage": "PUBLIC_PREVIEW" + }, + "object_info": { + "description": "The object to query external lineage relationships for.\nSince this field is a query parameter, please flatten the nested fields. For example, if the object is a table, the query parameter should look like:\n`object_info.table.name=main.sales.customers`", + "ref": "catalog.ExternalLineageObject", + "launch_stage": "PUBLIC_PREVIEW" + }, + "page_size": { + "description": "Specifies the maximum number of external lineage relationships to return in a single response.\nThe value must be less than or equal to 1000.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ListExternalLineageRelationshipsResponse": { + "fields": { + "external_lineage_relationships": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "next_page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ListExternalLocationsRequest": { + "fields": { + "include_browse": { + "description": "Whether to include external locations in the response for which the principal can only access selective metadata for", + "launch_stage": "GA" + }, + "include_unbound": { + "description": "Whether to include external locations not bound to the workspace.\nEffective only if the user has permission to update the location–workspace binding.", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of external locations to return.\nIf not set, all the external locations are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "catalog.ListExternalLocationsResponse": { + "fields": { + "external_locations": { + "description": "An array of external locations.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + } + } + }, + "catalog.ListExternalMetadataRequest": { + "fields": { + "page_size": { + "description": "Specifies the maximum number of external metadata objects to return in a single response.\nThe value must be less than or equal to 1000.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ListExternalMetadataResponse": { + "fields": { + "external_metadata": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "next_page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ListFunctionsRequest": { + "fields": { + "catalog_name": { + "description": "Name of parent catalog for functions of interest.", + "launch_stage": "GA" + }, + "include_browse": { + "description": "Whether to include functions in the response for which the principal can only access selective metadata for", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of functions to return.\nIf not set, all the functions are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + }, + "schema_name": { + "description": "Parent schema of functions.", + "launch_stage": "GA" + } + } + }, + "catalog.ListFunctionsResponse": { + "fields": { + "functions": { + "description": "An array of function information objects.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + } + } + }, + "catalog.ListMcpServicesRequest": { + "fields": { + "page_size": { + "description": "Maximum number of MCP services to return. Defaults to 100 when unset or 0;\nthe maximum is 200. Use `page_token` to retrieve additional pages.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Opaque pagination token from the previous response.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "parent": { + "description": "Parent schema to list within, in the form\n`schemas/{catalog}.{schema}`. Required. Each `{...}` component is capped at\n255 characters individually.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "view": { + "description": "Fields to return for each service. `FULL` includes source-connection\ndetails and rate-limit principal names. `BASIC` omits the source connection\nand omits principal names from rate limits. Defaults to `BASIC` when unset.", + "ref": "catalog.ListMcpServicesRequestView", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ListMcpServicesRequestView": { + "description": "Controls which fields are populated on each McpService in the response.\nThe server uses `BASIC` when `view` is unset. Callers needing the full\nconfiguration must request it explicitly with `view = FULL`.", + "enum": [ + "FULL", + "BASIC" + ], + "enum_launch_stages": { + "BASIC": "GA", + "FULL": "GA" + } + }, + "catalog.ListMcpServicesResponse": { + "description": "Response for listing MCP services.", + "fields": { + "mcp_services": { + "description": "The list of MCP services.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Pagination token for retrieving the next page. Empty when there are no\nmore results.", + "launch_stage": "GA" + } + } + }, + "catalog.ListMetastoresRequest": { + "fields": { + "max_results": { + "description": "Maximum number of metastores to return.\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all the metastores are returned (not recommended).\n- Note: The number of returned metastores might be less than the specified max_results size, even zero.\nThe only definitive indication that no further metastores can be fetched is when the next_page_token is unset from the response.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "catalog.ListMetastoresResponse": { + "fields": { + "metastores": { + "description": "An array of metastore information objects.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + } + } + }, + "catalog.ListModelProviderServicesRequest": { + "fields": { + "page_size": { + "description": "Maximum number of provider services to return. Defaults to 100 when unset or\n0; the maximum is 200. Use `page_token` to retrieve additional pages.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Opaque pagination token from the previous response.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "parent": { + "description": "Parent schema to list within, in the form\n`schemas/{catalog}.{schema}`. Required. Each `{...}` component is capped at\n255 characters individually.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "view": { + "description": "Fields to return for each service. `FULL` includes resolved\nservice-credential and inference-table details and rate-limit principal\nnames. `BASIC` omits those details and principal names from rate limits.\nDefaults to `BASIC` when unset.", + "ref": "catalog.ListModelProviderServicesRequestView", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ListModelProviderServicesRequestView": { + "description": "Controls which fields are populated on each ModelProviderService in the\nresponse. The server uses `BASIC` when `view` is unset. Callers needing the\nfull configuration must request it explicitly with `view = FULL`.", + "enum": [ + "FULL", + "BASIC" + ], + "enum_launch_stages": { + "BASIC": "GA", + "FULL": "GA" + } + }, + "catalog.ListModelProviderServicesResponse": { + "description": "Response for listing model provider services.", + "fields": { + "model_provider_services": { + "description": "The list of model provider services.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Pagination token for retrieving the next page. Empty when there are no\nmore results.", + "launch_stage": "GA" + } + } + }, + "catalog.ListModelServicesRequest": { + "fields": { + "page_size": { + "description": "Maximum number of model services to return. Defaults to 100 when unset or 0;\nthe maximum is 200. Use `page_token` to retrieve additional pages.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Opaque pagination token from the previous response.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "parent": { + "description": "Parent schema to list within, in the form\n`schemas/{catalog}.{schema}`. Required. Each `{...}` component is capped at\n255 characters individually.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "view": { + "description": "Fields to return for each service. `FULL` includes destinations,\ninference-table details, and rate-limit principal names. `BASIC` omits\ndestinations and inference-table details and omits principal names from\nrate limits. Defaults to `BASIC` when unset.", + "ref": "catalog.ListModelServicesRequestView", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ListModelServicesRequestView": { + "description": "Controls which fields are populated on each ModelService in the response.\nThe server uses `BASIC` when `view` is unset. Callers needing the full\nconfiguration must request it explicitly with `view = FULL`.", + "enum": [ + "FULL", + "BASIC" + ], + "enum_launch_stages": { + "BASIC": "GA", + "FULL": "GA" + } + }, + "catalog.ListModelServicesResponse": { + "description": "Response for listing model services.", + "fields": { + "model_services": { + "description": "The list of model services.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Pagination token for retrieving the next page. Empty when there are no\nmore results.", + "launch_stage": "GA" + } + } + }, + "catalog.ListModelVersionsRequest": { + "fields": { + "include_browse": { + "description": "Whether to include model versions in the response for which the principal can only access selective metadata for", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of model versions to return.\nIf not set, the page length is set to a server configured value (100, as of 1/3/2024).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value(1000, as of 1/3/2024);\n- when set to 0, the page length is set to a server configured value (100, as of 1/3/2024) (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "catalog.ListModelVersionsResponse": { + "fields": { + "model_versions": { + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + } + } + }, + "catalog.ListPoliciesRequest": { + "fields": { + "include_inherited": { + "description": "Optional. Whether to include policies defined on parent securables.\nBy default, the inherited policies are not included.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "max_results": { + "description": "Optional. Maximum number of policies to return on a single page (page length).\n- When not set or set to 0, the page length is set to a server configured value (recommended);\n- When set to a value greater than 0, the page length is the minimum of this value and a server configured value;", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Optional. Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ListPoliciesResponse": { + "fields": { + "next_page_token": { + "description": "Optional opaque token for continuing pagination. `page_token` should be set to this value for\nthe next request to retrieve the next page of results.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "policies": { + "description": "The list of retrieved policies.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.ListPrivilegeAssignmentsRequest": { + "fields": { + "page_size": { + "description": "Specifies the maximum number of privilege assignments to return (page length).\nEvery PrivilegeAssignment present in a single page response is guaranteed to contain all the privileges granted on\nthe requested Securable for the respective principal.\n\nIf not set, page length is the server configured value.\nIf set to\n- lesser than 0: invalid parameter error\n- 0: page length is set to a server configured value\n- lesser than 150 but greater than 0: invalid parameter error (this is to ensure that server is able to return at\nleast one complete PrivilegeAssignment in a single page response)\n- greater than (or equal to) 150: page length is the minimum of this value and a server configured value", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + }, + "principal": { + "description": "If provided, only the permissions for the specified principal (user or group) are returned.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ListPrivilegeAssignmentsResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "privilege_assignments": { + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.ListQuotasRequest": { + "fields": { + "max_results": { + "description": "The number of quotas to return.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque token for the next page of results.", + "launch_stage": "GA" + } + } + }, + "catalog.ListQuotasResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request.", + "launch_stage": "GA" + }, + "quotas": { + "description": "An array of returned QuotaInfos.", + "launch_stage": "GA" + } + } + }, + "catalog.ListRefreshesRequest": {}, + "catalog.ListRegisteredModelsRequest": { + "fields": { + "catalog_name": { + "description": "The identifier of the catalog under which to list registered models.\nIf specified, schema_name must be specified.", + "launch_stage": "GA" + }, + "include_browse": { + "description": "Whether to include registered models in the response for which the principal can only access selective metadata for", + "launch_stage": "GA" + }, + "max_results": { + "description": "Max number of registered models to return.\n\nIf both catalog and schema are specified:\n- when max_results is not specified, the page length is set to a server configured value (10000, as of 4/2/2024).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value (10000, as of 4/2/2024);\n- when set to 0, the page length is set to a server configured value (10000, as of 4/2/2024);\n- when set to a value less than 0, an invalid parameter error is returned;\n\nIf neither schema nor catalog is specified:\n- when max_results is not specified, the page length is set to a server configured value (100, as of 4/2/2024).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value (1000, as of 4/2/2024);\n- when set to 0, the page length is set to a server configured value (100, as of 4/2/2024);\n- when set to a value less than 0, an invalid parameter error is returned;", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque token to send for the next page of results (pagination).", + "launch_stage": "GA" + }, + "schema_name": { + "description": "The identifier of the schema under which to list registered models.\nIf specified, catalog_name must be specified.", + "launch_stage": "GA" + } + } + }, + "catalog.ListRegisteredModelsResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token for pagination. Omitted if there are no more results. page_token should\nbe set to this value for fetching the next page.", + "launch_stage": "GA" + }, + "registered_models": { + "launch_stage": "GA" + } + } + }, + "catalog.ListSchemasRequest": { + "fields": { + "catalog_name": { + "description": "Parent catalog for schemas of interest.", + "launch_stage": "GA" + }, + "include_browse": { + "description": "Whether to include schemas in the response for which the principal can only access selective metadata for", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of schemas to return.\nIf not set, all the schemas are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "catalog.ListSchemasResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + }, + "schemas": { + "description": "An array of schema information objects.", + "launch_stage": "GA" + } + } + }, + "catalog.ListSecretsRequest": { + "fields": { + "catalog_name": { + "description": "The name of the catalog under which to list secrets. Both **catalog_name** and\n**schema_name** must be specified together.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_size": { + "description": "Maximum number of secrets to return.\n\n- If not specified, at most 1000 secrets are returned.\n- If set to a value greater than 0, the page length is the minimum of this value and 1000.\n- If set to 0, the page length is set to 1000.\n- If set to a value less than 0, an invalid parameter error is returned.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Opaque pagination token to go to the next page based on previous query. The maximum page length\nis determined by a server configured value.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "schema_name": { + "description": "The name of the schema under which to list secrets. Both **catalog_name** and\n**schema_name** must be specified together.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ListSecretsResponse": { + "description": "Response message for ListSecrets.", + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n**page_token** should be set to this value for the next request.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "secrets": { + "description": "An array of secret objects.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.ListSkillsRequest": { + "fields": { + "page_size": { + "description": "Maximum number of skills to return. Defaults to 100 when unset or 0; the\nmaximum is 200. Use `page_token` to retrieve additional pages.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Opaque pagination token from a previous request.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "parent": { + "description": "Name of the parent schema. Format: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.\n\nRequired: skill listing is schema-scoped, so `parent` must be set; an unset\nor empty `parent` is rejected with INVALID_PARAMETER_VALUE.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "catalog.ListSkillsResponse": { + "description": "Response for listing skills.", + "fields": { + "next_page_token": { + "description": "Pagination token for retrieving the next page of results.", + "launch_stage": "PUBLIC_BETA" + }, + "skills": { + "description": "The list of skills.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "catalog.ListStorageCredentialsRequest": { + "fields": { + "include_unbound": { + "description": "Whether to include credentials not bound to the workspace.\nEffective only if the user has permission to update the credential–workspace binding.", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of storage credentials to return.\nIf not set, all the storage credentials are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of\nthis value and a server configured value;\n- when set to 0, the page length is set to a server configured value\n(recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "catalog.ListStorageCredentialsResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no\nmore pages.\n__page_token__ should be set to this value for the next request (for the\nnext page of results).", + "launch_stage": "GA" + }, + "storage_credentials": { + "launch_stage": "GA" + } + } + }, + "catalog.ListSummariesRequest": { + "fields": { + "catalog_name": { + "description": "Name of parent catalog for tables of interest.", + "launch_stage": "GA" + }, + "include_manifest_capabilities": { + "description": "Whether to include a manifest containing table capabilities in the response.", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of summaries for tables to return.\nIf not set, the page length is set to a server configured value (10000, as of 1/5/2024).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value (10000, as of 1/5/2024);\n- when set to 0, the page length is set to a server configured value (10000, as of 1/5/2024) (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + }, + "schema_name_pattern": { + "description": "A sql LIKE pattern (% and _) for schema names.\nAll schemas will be returned if not set or empty.", + "launch_stage": "GA" + }, + "table_name_pattern": { + "description": "A sql LIKE pattern (% and _) for table names.\nAll tables will be returned if not set or empty.", + "launch_stage": "GA" + } + } + }, + "catalog.ListSystemSchemasRequest": { + "fields": { + "max_results": { + "description": "Maximum number of schemas to return.\n- When set to 0, the page length is set to a server configured value (recommended);\n- When set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- When set to a value less than 0, an invalid parameter error is returned;\n- If not set, all the schemas are returned (not recommended).", + "launch_stage": "PUBLIC_PREVIEW" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ListSystemSchemasResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "An array of system schema information objects.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.ListTableSummariesResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + }, + "tables": { + "description": "List of table summaries.", + "launch_stage": "GA" + } + } + }, + "catalog.ListTablesRequest": { + "fields": { + "catalog_name": { + "description": "Name of parent catalog for tables of interest.", + "launch_stage": "GA" + }, + "include_browse": { + "description": "Whether to include tables in the response for which the principal can only access selective metadata for.", + "launch_stage": "GA" + }, + "include_manifest_capabilities": { + "description": "Whether to include a manifest containing table capabilities in the response.", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of tables to return.\nIf not set, all the tables are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "launch_stage": "GA" + }, + "omit_columns": { + "description": "Whether to omit the columns of the table from the response or not.", + "launch_stage": "GA" + }, + "omit_properties": { + "description": "Whether to omit the properties of the table from the response or not.", + "launch_stage": "GA" + }, + "omit_username": { + "description": "Whether to omit the username of the table (e.g. owner, updated_by, created_by) from the response or not.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque token to send for the next page of results (pagination).", + "launch_stage": "GA" + }, + "schema_name": { + "description": "Parent schema of tables.", + "launch_stage": "GA" + } + } + }, + "catalog.ListTablesResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + }, + "tables": { + "description": "An array of table information objects.", + "launch_stage": "GA" + } + } + }, + "catalog.ListVolumesRequest": { + "fields": { + "catalog_name": { + "description": "The identifier of the catalog", + "launch_stage": "GA" + }, + "include_browse": { + "description": "Whether to include volumes in the response for which the principal can only access selective metadata for", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of volumes to return (page length).\n\nIf not set, the page length is set to a server configured value (10000, as of 1/29/2024).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value (10000, as of 1/29/2024);\n- when set to 0, the page length is set to a server configured value (10000, as of 1/29/2024) (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;\n\nNote: this parameter controls only the maximum number of volumes to return. The actual number of volumes returned in a page\nmay be smaller than this value, including 0, even if there are more pages.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque token returned by a previous request. It must be included in the request to retrieve the next page of results (pagination).", + "launch_stage": "GA" + }, + "schema_name": { + "description": "The identifier of the schema", + "launch_stage": "GA" + } + } + }, + "catalog.ListVolumesResponseContent": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request to retrieve the next page of results.", + "launch_stage": "GA" + }, + "volumes": { + "launch_stage": "GA" + } + } + }, + "catalog.MatchColumn": { + "fields": { + "alias": { + "description": "Optional alias of the matched column.", + "launch_stage": "GA" + }, + "condition": { + "description": "The condition expression used to match a table column.", + "launch_stage": "GA" + } + } + }, + "catalog.MatchType": { + "description": "The artifact pattern matching type", + "enum": [ + "PREFIX_MATCH" + ], + "enum_launch_stages": { + "PREFIX_MATCH": "GA" + } + }, + "catalog.McpService": { + "description": "A Unity Catalog securable that registers an MCP server through a Unity\nCatalog connection and exposes its tools for discovery, authorization, and\ninvocation.", + "fields": { + "comment": { + "description": "User-provided description.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "config": { + "description": "Connection, tool selectors, and rate limits. Required on Create. On Update,\nprovide this field when `update_mask` contains `config` or one of its\nsubpaths.", + "ref": "catalog.McpServiceConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "create_time": { + "description": "Time the MCP service was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "Creator identity.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_owner": { + "description": "Owner of the MCP service.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "etag": { + "description": "Optimistic concurrency token returned on every read. To make an Update or\nDelete conditional, pass the last-read value in that request's `etag`\nfield. In REST responses, this value is a base64 string; URL-encode it when\nsetting the `etag` query parameter.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "metastore_id": { + "description": "Metastore hosting the MCP service.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`mcp_service_id`; required and immutable on Update/Get/Delete.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "update_time": { + "description": "Time the MCP service was last modified.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_by": { + "description": "Identity of the last updater.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.McpServiceConfig": { + "description": "Operational configuration for an MCP service. Groups the source reference,\ntool selectors, and rate limits -- the fields that configure how the MCP\nservice behaves at invocation time.", + "fields": { + "include_tool_selectors": { + "description": "Tool names or prefix patterns to expose from the MCP server. Use exact\ntool names or prefix patterns such as `read_*`. An empty list exposes all\ntools. At most 1,024 selectors are allowed, and each selector can contain\nat most 256 characters.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "rate_limits": { + "description": "Rate limits for tool invocations. Supported scopes are user, group, service\nprincipal, the service as a whole, and each user by default. Request and\ntoken limits are supported. Empty when no rate limit is configured.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "source_connection": { + "description": "Unity Catalog connection referencing the MCP server. Required on Create.", + "ref": "catalog.McpServiceConfigSourceConnection", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.McpServiceConfigSourceConnection": { + "description": "Unity Catalog connection that points to the MCP server. On Create, provide\n`name` in the schema-scoped form\n`connections/{catalog}.{schema}.{connection}`. On read, the service\npopulates the resolved connection metadata. If the connection is deleted,\nits reference remains visible so you can identify the broken dependency.", + "fields": { + "is_deleted": { + "description": "Whether the referenced connection has been deleted. The MCP service keeps\nthe reference so callers can identify the broken dependency; tool\ninvocation fails until the source connection is updated.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Resource name of the Unity Catalog connection used to access the MCP\nserver, in the form `connections/{catalog}.{schema}.{connection}`.", + "launch_stage": "GA" + }, + "options": { + "description": "Options needed to build the U2M authorize request, returned as a flat map. When set, it\nincludes: `authorization_endpoint` (OAuth authorize URL), `token_endpoint` (token-exchange\nURL), `oauth_scope` (space-separated scopes to request), `client_id` (OAuth client id), and\n`oauth_provider` (the OAuth provider).", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.McpServiceUserMappedCredential": { + "description": "A caller's per-user OAuth credential for an MCP service.", + "fields": { + "options": { + "description": "Token-expiry info for the credential, returned as a flat map: `access_token_expiration` (always\nset) and `refresh_token_expiration` (set when the credential has a refresh token). Both values\nare timestamps.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "provisioning_info": { + "description": "Provisioning state of the credential. `ACTIVE` means the caller is logged in and the credential\nis usable; any other state means the login has not completed.", + "ref": "catalog.ProvisioningInfo", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.McpServiceUserMappedCredentialLogin": { + "description": "Login input for an MCP service user credential. Carries the OAuth exchange fields as a flat map.", + "fields": { + "options": { + "description": "OAuth exchange fields: `pkce_verifier`, `authorization_code`, and `oauth_redirect_uri`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.MetastoreAssignment": { + "fields": { + "default_catalog_name": { + "description": "The name of the default catalog in the metastore. This field is deprecated.\nPlease use \"Default Namespace API\" to configure the default catalog for a Databricks workspace.", + "deprecated": true, + "launch_stage": "GA" + }, + "metastore_id": { + "description": "The unique ID of the metastore.", + "launch_stage": "GA" + }, + "workspace_id": { + "description": "The unique ID of the Databricks workspace.", + "launch_stage": "GA" + } + } + }, + "catalog.MetastoreInfo": { + "fields": { + "cloud": { + "description": "Cloud vendor of the metastore home shard (e.g., `aws`, `azure`, `gcp`).", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this metastore was created, in epoch milliseconds.", + "launch_stage": "GA" + }, + "created_by": { + "description": "Username of metastore creator.", + "launch_stage": "GA" + }, + "default_data_access_config_id": { + "description": "Unique identifier of the metastore's (Default) Data Access Configuration.", + "deprecated": true, + "launch_stage": "GA" + }, + "delta_sharing_organization_name": { + "description": "The organization name of a Delta Sharing entity, to be used in Databricks-to-Databricks Delta Sharing as the official name.", + "launch_stage": "GA" + }, + "delta_sharing_recipient_token_lifetime_in_seconds": { + "description": "The lifetime of delta sharing recipient token in seconds.", + "launch_stage": "GA" + }, + "delta_sharing_scope": { + "description": "The scope of Delta Sharing enabled for the metastore.", + "ref": "catalog.DeltaSharingScopeEnum", + "launch_stage": "GA" + }, + "external_access_enabled": { + "description": "Whether to allow non-DBR clients to directly access entities under the metastore.", + "launch_stage": "GA" + }, + "global_metastore_id": { + "description": "Globally unique metastore ID across clouds and regions, of the form `cloud:region:metastore_id`.", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "Unique identifier of metastore.", + "launch_stage": "GA" + }, + "name": { + "description": "The user-specified name of the metastore.", + "launch_stage": "GA" + }, + "owner": { + "description": "The owner of the metastore.", + "launch_stage": "GA" + }, + "privilege_model_version": { + "description": "Privilege model version of the metastore, of the form `major.minor` (e.g., `1.0`).", + "launch_stage": "GA" + }, + "region": { + "description": "Cloud region which the metastore serves (e.g., `us-west-2`, `westus`).", + "launch_stage": "GA" + }, + "storage_root": { + "description": "The storage root URL for metastore", + "launch_stage": "GA" + }, + "storage_root_credential_id": { + "description": "UUID of storage credential to access the metastore storage_root.", + "launch_stage": "GA" + }, + "storage_root_credential_name": { + "description": "Name of the storage credential to access the metastore storage_root.", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Time at which the metastore was last modified, in epoch milliseconds.", + "launch_stage": "GA" + }, + "updated_by": { + "description": "Username of user who last modified the metastore.", + "launch_stage": "GA" + } + } + }, + "catalog.ModelProviderService": { + "description": "A Unity Catalog securable that stores authentication and request\nconfiguration for an external model provider, such as OpenAI, Azure OpenAI,\nor Amazon Bedrock. Model service destinations reference it to send requests\nto that provider.\n\nA model provider service can be referenced by multiple model services. A\nmodel service can route across multiple model provider services for traffic\nsplitting or failover.", + "fields": { + "comment": { + "description": "User-provided description.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "config": { + "description": "Provider authentication, exposed models, request-forwarding controls, rate\nlimits, and payload logging. Required on Create. On Update, it is required\nonly when `config` or one of its subpaths appears in `update_mask`.", + "ref": "catalog.ModelProviderServiceConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "create_time": { + "description": "Time the provider service was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "Creator identity.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_owner": { + "description": "Owner of the model provider service.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "etag": { + "description": "Optimistic concurrency token returned on every read. To make an Update or\nDelete conditional, pass the last-read value in that request's `etag`\nfield. In REST responses, this value is a base64 string; URL-encode it when\nsetting the `etag` query parameter.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "metastore_id": { + "description": "Metastore hosting the provider service.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Resource name of the provider service.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`model_provider_service_id`; required and immutable on Update/Get/Delete.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "update_time": { + "description": "Time the provider service was last modified.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_by": { + "description": "Identity of the last updater.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.ModelProviderServiceConfig": { + "description": "Behavioral configuration for a ModelProviderService: provider authentication\nand provider-specific fields, the catalog of models this provider\nservice can route to, and the passthrough policy that governs how request\nheaders, query parameters, and unmanaged subpaths cross the trust boundary\nto the upstream provider.", + "fields": { + "allow_all_targets": { + "description": "When true, accepts any model exposed by the upstream provider; `targets`\nis not required and does not restrict routability. When false, only\nmodels listed in `targets` are routable. Defaults to false.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "amazon_bedrock": { + "ref": "catalog.ModelProviderServiceConfigAmazonBedrockProviderConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "anthropic": { + "ref": "catalog.ModelProviderServiceConfigAnthropicProviderConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "azure_openai": { + "ref": "catalog.ModelProviderServiceConfigAzureOpenAiProviderConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "bedrock_mantle": { + "ref": "catalog.ModelProviderServiceConfigAmazonBedrockProviderConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "custom": { + "ref": "catalog.ModelProviderServiceConfigCustomProviderConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "forward_headers": { + "description": "Whether to forward incoming HTTP headers to the upstream provider. Defaults\nto false and is configured for the entire provider service, not per request.\nUpstream authentication is configured separately in the provider-specific\nconfiguration.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "forward_query_parameters": { + "description": "Whether to forward incoming query parameters to the upstream provider.\nDefaults to false and is configured for the entire provider service, not\nper request.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "forward_unmanaged_paths": { + "description": "Whether to proxy paths that AI Gateway does not recognize as configured\nprovider-native API types. Defaults to false. When true, these paths are\nforwarded unchanged to the upstream provider. When false, only\nrecognized API paths are served. Enabling this broadens the upstream API\nsurface exposed through the provider service. AI Gateway cannot evaluate\nService Policies on opaque unmanaged requests, so unmanaged requests are\nrejected whenever Service Policies are attached to this securable.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "gemini_enterprise": { + "ref": "catalog.ModelProviderServiceConfigGeminiEnterpriseProviderConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "inference_table": { + "description": "Payload logging configuration for requests sent directly to this provider\nservice. Requests routed through a model service are captured by that model\nservice's inference table instead.", + "ref": "catalog.InferenceTableConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "microsoft_foundry": { + "ref": "catalog.ModelProviderServiceConfigMicrosoftFoundryProviderConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "openai": { + "ref": "catalog.ModelProviderServiceConfigOpenAiProviderConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "pricing": { + "description": "Pricing configuration for this provider service. An explicitly empty\nconfiguration is retained on Create and Update and applies no adjustment.", + "ref": "catalog.ModelProviderServiceConfigProviderPricingConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "provider_type": { + "description": "External model provider. Required on Create and immutable thereafter. Set\nthe matching provider-specific configuration, such as `openai`,\n`azure_openai`, or `amazon_bedrock`.", + "ref": "catalog.ModelProviderServiceConfigExternalModelProviderType", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "rate_limits": { + "description": "Rate limits for requests sent directly to this provider service. Requests\nrouted through a model service use that model service's rate limits instead.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "targets": { + "description": "Models and provider-native API types exposed by this provider service. Each\nentry must include at least one `native_api_types` value. When\n`allow_all_targets` is false, at least one entry is required and model\nservice destinations can reference only listed models. When\n`allow_all_targets` is true, any upstream model is routable; entries in\nthis list provide API-type metadata without restricting other models.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigAmazonBedrockProviderConfig": { + "description": "Amazon Bedrock provider configuration.", + "fields": { + "direct": { + "description": "Amazon Bedrock region and authentication configuration.", + "ref": "catalog.ModelProviderServiceConfigAmazonBedrockProviderDirectConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigAmazonBedrockProviderDirectConfig": { + "description": "Direct form of Amazon Bedrock provider config.\n\nAuthentication is one of two mutually exclusive modes, exactly one of which\nmust be supplied on Create:\n- Access keys: set `aws_access_key`, leave `service_credential` unset.\n- Unity Catalog service credential: set `service_credential.name` to the\nresource name `credentials/{name}`, leave `aws_access_key` unset. The\ncredential value lives in Unity Catalog and is referenced by name, not\nheld on this message.\nSetting more than one mode is rejected.", + "fields": { + "aws_access_key": { + "description": "AWS access-key-pair authentication. Set `access_key_id` and\n`secret_access_key.plaintext`. Mutually exclusive with\n`service_credential`.", + "ref": "catalog.ModelProviderServiceConfigAwsAccessKey", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "region": { + "description": "AWS region where the Bedrock endpoint is hosted (e.g., `us-east-1`).\nRequired on Create.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "service_credential": { + "description": "Reference to a Unity Catalog service credential authorizing Bedrock\nrequests. On Create, supply `service_credential.name` in the form\n`credentials/{name}`. Required on Create when using service-credential\nauthentication; mutually exclusive with `aws_access_key`. The credential\nis referenced by name; its value is not carried here. Only\nsupported on AWS-hosted workspaces.", + "ref": "catalog.ModelProviderServiceConfigServiceCredential", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigAnthropicProviderConfig": { + "description": "Anthropic provider configuration. Exactly one of `direct` or `relayed` must\nbe set on Create; the two are mutually exclusive.", + "fields": { + "direct": { + "description": "Direct authentication with an API key supplied in\n`direct.api_key.plaintext`. Required unless `relayed` is set.", + "ref": "catalog.ModelProviderServiceConfigAnthropicProviderDirectConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "relayed": { + "description": "Relayed authentication. Each inference request supplies the caller's\nOAuth token, which is forwarded to Anthropic. No Anthropic credential is\nstored. Mutually exclusive with `direct`.", + "ref": "catalog.ModelProviderServiceConfigAnthropicProviderRelayedConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigAnthropicProviderDirectConfig": { + "description": "Direct form of Anthropic provider config.", + "fields": { + "api_key": { + "description": "Anthropic API key. Required when creating the service. Supply the value\nin `api_key.plaintext`.", + "ref": "catalog.ModelProviderServiceConfigProviderSecret", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigAnthropicProviderRelayedConfig": { + "description": "Relayed Anthropic provider configuration. Each inference request supplies\nthe caller's OAuth token, which is forwarded to Anthropic. No Anthropic\ncredential is stored." + }, + "catalog.ModelProviderServiceConfigAwsAccessKey": { + "description": "AWS access-key-pair auth for Amazon Bedrock: a SigV4-signing key pair.", + "fields": { + "access_key_id": { + "description": "AWS access key ID. Required on Create when using access-key auth. Treated as\nusername-equivalent (not a secret value): round-trips on reads and is\nscrubbed from audit logs.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "secret_access_key": { + "description": "AWS secret access key paired with `access_key_id`. Required when creating\na service with access-key authentication. Supply the value in\n`secret_access_key.plaintext`.", + "ref": "catalog.ModelProviderServiceConfigProviderSecret", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigAzureOpenAiProviderConfig": { + "description": "Azure OpenAI provider configuration.", + "fields": { + "direct": { + "description": "Azure OpenAI endpoint and authentication configuration.", + "ref": "catalog.ModelProviderServiceConfigAzureOpenAiProviderDirectConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigAzureOpenAiProviderDirectConfig": { + "description": "Direct form of Azure OpenAI provider config. Exactly one of three\nmutually-exclusive auth modes must be supplied on Create:\n- API key: set `api_key`, leave `entra_service_principal` and\n`service_credential` unset.\n- Entra ID (service principal): set `entra_service_principal`, leave\n`api_key` and `service_credential` unset.\n- Unity Catalog service credential: set `service_credential.name` to the\nresource name `credentials/{name}`, leave `api_key` and\n`entra_service_principal` unset. The credential value lives in Unity\nCatalog and is referenced by name, not held on this message. Only\nsupported on Azure-hosted workspaces.\nSetting more than one mode is rejected.", + "fields": { + "api_key": { + "description": "Azure OpenAI API key. Supply the value in `api_key.plaintext`. Mutually\nexclusive with Entra ID and Unity Catalog service credential\nauthentication.", + "ref": "catalog.ModelProviderServiceConfigProviderSecret", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "base_url": { + "description": "Full Azure OpenAI endpoint base URL, e.g.\n`https://myresource.openai.azure.com`. Required on Create.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "entra_service_principal": { + "description": "Entra ID service-principal authentication. Set `tenant_id`, `client_id`,\nand `client_secret.plaintext`. Mutually exclusive with `api_key` and\n`service_credential`.", + "ref": "catalog.ModelProviderServiceConfigEntraServicePrincipal", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "service_credential": { + "description": "Reference to a Unity Catalog service credential authorizing Azure OpenAI\nrequests. On Create, supply `service_credential.name` in the form\n`credentials/{name}`. Required on Create when using service-credential\nauthentication; mutually exclusive with `api_key` and\n`entra_service_principal`. The credential is referenced by name; its value\nis not carried here. Only supported on Azure-hosted workspaces.", + "ref": "catalog.ModelProviderServiceConfigServiceCredential", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigCustomProviderApiKeyHeaderAuth": { + "description": "Header-based API-key authentication for a custom provider: the secret is\nforwarded on outbound requests under a caller-chosen HTTP header, as\n`\u003capi_key_name\u003e: \u003capi_key_value\u003e`.", + "fields": { + "api_key_name": { + "description": "HTTP header name that carries the API key on outbound requests (e.g.,\n`Ocp-Apim-Subscription-Key`). The value forwarded under this header is\nsupplied via `api_key_value`.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "api_key_value": { + "description": "Secret value forwarded under the `api_key_name` header on outbound\nrequests. Supplied as inline plaintext via `ProviderSecret.plaintext`.", + "ref": "catalog.ModelProviderServiceConfigProviderSecret", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigCustomProviderConfig": { + "description": "Custom OpenAI-compatible provider configuration with bearer-token\nauthentication.", + "fields": { + "direct": { + "description": "Endpoint and authentication configuration for the custom provider.", + "ref": "catalog.ModelProviderServiceConfigCustomProviderDirectConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigCustomProviderDirectConfig": { + "description": "Direct form of a custom provider configuration. Set `api_key` to send the\nsecret as an `Authorization` bearer token, or `header_auth` to forward it\nunder a caller-chosen HTTP header.", + "fields": { + "api_key": { + "description": "Bearer token forwarded in the `Authorization` header. Supply the value\nin `api_key.plaintext`.", + "ref": "catalog.ModelProviderServiceConfigProviderSecret", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "base_url": { + "description": "Endpoint URL of the OpenAI-compatible service (e.g.,\n`https://api.example.com/v1`). Required on Create.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "header_auth": { + "description": "Header-based API-key auth: the secret is forwarded on outbound requests\nunder a caller-chosen HTTP header rather than as an `Authorization`\nbearer token. Set this instead of `api_key` for header auth.", + "ref": "catalog.ModelProviderServiceConfigCustomProviderApiKeyHeaderAuth", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigEntraServicePrincipal": { + "description": "Entra ID (Azure AD) service-principal authentication. The `tenant_id` and\n`client_id` identify the service principal, and `client_secret` authenticates\nit. AI Gateway exchanges these credentials for an Entra bearer token for\nrequests to Azure OpenAI or Microsoft Foundry.", + "fields": { + "client_id": { + "description": "Entra ID client (application) ID. Required on Create.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "client_secret": { + "description": "Entra ID client secret. Supply the value in `client_secret.plaintext`.", + "ref": "catalog.ModelProviderServiceConfigProviderSecret", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "tenant_id": { + "description": "Entra ID (Azure AD) tenant ID. Required on Create.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigExternalModelProviderType": { + "description": "External LLM provider for an EXTERNAL_FOUNDATION_MODEL destination.", + "enum": [ + "EXTERNAL_MODEL_PROVIDER_TYPE_OPENAI", + "EXTERNAL_MODEL_PROVIDER_TYPE_AZURE_OPENAI", + "EXTERNAL_MODEL_PROVIDER_TYPE_ANTHROPIC", + "EXTERNAL_MODEL_PROVIDER_TYPE_AMAZON_BEDROCK", + "EXTERNAL_MODEL_PROVIDER_TYPE_CUSTOM", + "EXTERNAL_MODEL_PROVIDER_TYPE_MICROSOFT_FOUNDRY", + "EXTERNAL_MODEL_PROVIDER_TYPE_GEMINI_ENTERPRISE", + "EXTERNAL_MODEL_PROVIDER_TYPE_BEDROCK_MANTLE" + ], + "enum_launch_stages": { + "EXTERNAL_MODEL_PROVIDER_TYPE_AMAZON_BEDROCK": "GA", + "EXTERNAL_MODEL_PROVIDER_TYPE_ANTHROPIC": "GA", + "EXTERNAL_MODEL_PROVIDER_TYPE_AZURE_OPENAI": "GA", + "EXTERNAL_MODEL_PROVIDER_TYPE_BEDROCK_MANTLE": "GA", + "EXTERNAL_MODEL_PROVIDER_TYPE_CUSTOM": "GA", + "EXTERNAL_MODEL_PROVIDER_TYPE_GEMINI_ENTERPRISE": "GA", + "EXTERNAL_MODEL_PROVIDER_TYPE_MICROSOFT_FOUNDRY": "GA", + "EXTERNAL_MODEL_PROVIDER_TYPE_OPENAI": "GA" + } + }, + "catalog.ModelProviderServiceConfigGeminiEnterpriseProviderConfig": { + "description": "Gemini Enterprise provider configuration.", + "fields": { + "direct": { + "description": "Gemini Enterprise project, region, and authentication configuration.", + "ref": "catalog.ModelProviderServiceConfigGeminiEnterpriseProviderDirectConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigGeminiEnterpriseProviderDirectConfig": { + "description": "Direct Gemini Enterprise provider configuration. An API key is required\nwhen creating the service.", + "fields": { + "api_key": { + "description": "Google Gemini Enterprise API key. Required when creating the service.\nSupply the value in `api_key.plaintext`.", + "ref": "catalog.ModelProviderServiceConfigProviderSecret", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "project_id": { + "description": "GCP project ID hosting the Gemini Enterprise endpoint. Required on Create.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "region": { + "description": "GCP region of the Gemini Enterprise endpoint (e.g., `us-central1`).\nRequired on Create.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "service_credential": { + "description": "Reference to a Unity Catalog service credential authorizing Gemini\nEnterprise requests. On Create, supply `service_credential.name` as\n`credentials/{name}`; required when using service-credential\nauthentication and mutually exclusive with `api_key`. The credential is\nreferenced by name; its value is not carried here. On read, the resolved\n`id` and `is_deleted` are also populated. Supported only on GCP-hosted\nworkspaces.", + "ref": "catalog.ModelProviderServiceConfigServiceCredential", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigMicrosoftFoundryProviderConfig": { + "description": "Microsoft Foundry provider configuration.", + "fields": { + "direct": { + "description": "Microsoft Foundry endpoint and authentication configuration.", + "ref": "catalog.ModelProviderServiceConfigMicrosoftFoundryProviderDirectConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigMicrosoftFoundryProviderDirectConfig": { + "description": "Direct form of Microsoft Foundry provider config.\n\nAuthentication is one of three mutually exclusive modes, exactly one of which\nmust be supplied on Create:\n- API key: set `api_key`, leave `entra_service_principal` and\n`service_credential` unset.\n- Entra ID (service principal): set `entra_service_principal`, leave\n`api_key` and `service_credential` unset. AI Gateway exchanges these for\nan Entra bearer token on outbound requests via the OAuth2\nclient-credentials grant.\n- Unity Catalog service credential: set `service_credential.name` to the\nresource name `credentials/{name}`, leave `api_key` and\n`entra_service_principal` unset. The credential value lives in Unity\nCatalog and is referenced by name, not held on this message. Only\nsupported on Azure-hosted workspaces.\nSetting more than one mode is rejected.", + "fields": { + "api_key": { + "description": "Microsoft Foundry API key. Supply the value in `api_key.plaintext`.\nMutually exclusive with Entra ID and Unity Catalog service credential\nauthentication.", + "ref": "catalog.ModelProviderServiceConfigProviderSecret", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "base_url": { + "description": "Microsoft Foundry endpoint URL. Required on Create.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "entra_service_principal": { + "description": "Entra ID service-principal authentication. Set `tenant_id`, `client_id`,\nand `client_secret.plaintext`. Mutually exclusive with `api_key` and\n`service_credential`.", + "ref": "catalog.ModelProviderServiceConfigEntraServicePrincipal", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "service_credential": { + "description": "Reference to a Unity Catalog service credential authorizing Microsoft\nFoundry requests. On Create, supply `service_credential.name` in the form\n`credentials/{name}`. Required on Create when using service-credential\nauthentication; mutually exclusive with `api_key` and\n`entra_service_principal`. The credential is referenced by name; its value\nis not carried here. Only supported on Azure-hosted workspaces.", + "ref": "catalog.ModelProviderServiceConfigServiceCredential", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigModelTargetConfig": { + "description": "Model target configuration shared by model provider service targets and\nexternal model destinations on model services.", + "fields": { + "endpoint_route": { + "description": "Relative path appended to a custom provider's `base_url` for this model,\nsuch as `serve/openai/chat`. Nonempty values are only supported for\ncustom model provider service targets; other provider types reject them.\nModel service destinations do not support this field. Do not include\nURI templates, queries, or fragments. When empty, `base_url` is used unchanged.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "model": { + "description": "Provider-side model identifier, such as `gpt-5` or `claude-opus-4-7`.\nThis identifies a model at the upstream provider; it is not a Unity\nCatalog model resource.", + "launch_stage": "GA" + }, + "native_api_types": { + "description": "Provider-native API types supported by this model, such as\n`openai/v1/chat/completions`. A model provider service target requires at\nleast one value. A model service destination may omit the list to use the\nmatching provider service target's types when available. AI Gateway uses\nthe selected types for translation. At most 64 entries of 256 characters\neach are allowed.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigOpenAiProviderConfig": { + "description": "OpenAI provider configuration.", + "fields": { + "direct": { + "description": "OpenAI configuration with an API key supplied in the request.", + "ref": "catalog.ModelProviderServiceConfigOpenAiProviderDirectConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigOpenAiProviderDirectConfig": { + "description": "Direct (inline-credentials) form of the OpenAI provider config.", + "fields": { + "api_key": { + "description": "OpenAI API key. Required when creating the service. Supply the value in\n`api_key.plaintext`.", + "ref": "catalog.ModelProviderServiceConfigProviderSecret", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "base_url": { + "description": "Optional custom base URL. Defaults to `https://api.openai.com/v1`. Use for\nOpenAI-API-compatible third-party endpoints or in-network proxies.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "organization": { + "description": "Optional OpenAI organization ID. When set, the platform forwards it as\nthe `OpenAI-Organization` header.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigProviderPricingConfig": { + "description": "Pricing adjustments applied to this provider service's external-model spend\nestimates.", + "fields": { + "default_discount_basis_points": { + "description": "Provider-wide adjustment to external-model spend estimates in basis points:\n2000 = 20% off; -2000 = a 20% markup. Negative values have no lower bound\nbeyond the int32 range. Values cannot exceed 10000 (100% off). An omitted\nvalue or zero leaves the estimate unchanged.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigProviderSecret": { + "description": "A secret value supplied as part of an inline provider config. The caller\nsupplies the value as inline `plaintext` on writes; the platform stores it\nencrypted. The `plaintext` field is `INPUT_ONLY` and never round-trips on\nreads.", + "fields": { + "plaintext": { + "description": "Inline plaintext credential. INPUT_ONLY: the value never round-trips on\nreads. Get and List responses omit `plaintext`; the enclosing secret\nobject remains present to indicate that a secret is configured.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "secret_reference": { + "description": "Reference to a customer-owned UC Secret that carries this secret value.\nThe value is read at invoke time under the model provider service\nowner's access and is never copied onto the model provider service, so\nrotating the UC Secret takes effect with no change to the model provider\nservice. On Create, supply `secret_reference.name` as\n`secrets/{catalog}.{schema}.{secret}`.", + "ref": "catalog.ModelProviderServiceConfigSecretReference", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelProviderServiceConfigSecretReference": { + "description": "Reference to a customer-owned UC Secret backing a secret-bearing provider\nfield, in the `ProviderSecret.secret_reference` arm.", + "fields": { + "name": { + "description": "Resource name of the bound UC Secret, in the form\n`secrets/{catalog}.{schema}.{secret}`. On Create the caller supplies the\nname here. On read it reflects the secret's current name at read time.", + "launch_stage": "GA" + } + } + }, + "catalog.ModelProviderServiceConfigServiceCredential": { + "description": "The customer-owned Unity Catalog service credential a model provider service\nuses to authenticate to its provider, referenced by name.", + "fields": { + "name": { + "description": "Resource name of the bound Unity Catalog service credential, in the form\n`credentials/{name}`. Supply this field when creating the service or\nrebinding its credential. On read, it reflects the credential's current\nname.", + "launch_stage": "GA" + } + } + }, + "catalog.ModelService": { + "description": "A governed AI Gateway endpoint in Unity Catalog that routes inference\nrequests to one or more destinations, such as a Databricks foundation model\nor an external model reached through a model provider service. Applies\ncentralized access control, rate limits, and auditing to its traffic.", + "fields": { + "comment": { + "description": "User-provided description.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "config": { + "description": "Destinations, routing, rate limits, and payload logging configuration.\nRequired on Create. On Update, provide this field when `update_mask`\ncontains `config` or one of its subpaths.", + "ref": "catalog.ModelServiceConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "create_time": { + "description": "Time the model service was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "Creator identity.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_owner": { + "description": "Owner of the model service.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "etag": { + "description": "Optimistic concurrency token returned on every read. To make an Update or\nDelete conditional, pass the last-read value in that request's `etag`\nfield. In REST responses, this value is a base64 string; URL-encode it when\nsetting the `etag` query parameter.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "metastore_id": { + "description": "Metastore hosting the model service.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Resource name of the model service.\nFormat: `model-services/{catalog}.{schema}.{model_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`model_service_id`; required and immutable on Update/Get/Delete.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "supported_api_types": { + "description": "API types supported across this service's destinations, such as\n`openai/v1/chat/completions`, `openai/v1/embeddings`, and\n`mlflow/v1/chat/completions`. Derived from the backing models and providers\nat read time.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY", + "UNORDERED_LIST" + ] + }, + "update_time": { + "description": "Time the model service was last modified.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_by": { + "description": "Identity of the last updater.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.ModelServiceConfig": { + "description": "Operational configuration wrapped around the ModelService resource.", + "fields": { + "inference_table": { + "description": "Inference table configuration for payload logging.", + "ref": "catalog.InferenceTableConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "rate_limits": { + "description": "Rate limits applied to requests routed through this model service.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "routing": { + "description": "Routing configuration: destinations and fallback.", + "ref": "catalog.ModelServiceConfigRoutingConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelServiceConfigDestinationConfig": { + "description": "A destination the model service can route traffic to. Exactly one of the\nper-type configs inside `type_config` must be set, and it must match\n`destination_type`.", + "fields": { + "destination_type": { + "description": "Backing-model category. Provide the matching type-specific configuration\nand leave the other type-specific configurations unset.", + "ref": "catalog.ModelServiceConfigDestinationConfigDestinationType", + "launch_stage": "GA" + }, + "external_model_config": { + "description": "Configuration for an external model reached through a model provider service.", + "ref": "catalog.ModelServiceConfigExternalModelConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "is_deleted": { + "description": "Whether the destination's backing model or model provider service has\nbeen deleted. The destination remains visible so you can identify the\nbroken dependency. Requests cannot use this destination until the backing\nresource is restored or the destination is replaced.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "User-facing label for this destination, used in routing references.", + "launch_stage": "GA" + }, + "pay_per_token_config": { + "description": "Configuration for a pay-per-token Databricks foundation model.", + "ref": "catalog.ModelServiceConfigPayPerTokenConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "provisioned_throughput_config": { + "description": "Configuration for a provisioned-throughput Databricks foundation model.", + "ref": "catalog.ModelServiceConfigProvisionedThroughputConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "traffic_percentage": { + "description": "Percentage of primary traffic sent to this destination, from 0 to 100.\nRequired when there is more than one primary destination, in which case the\nprimary percentages must sum to 100; a single primary destination receives\nall traffic. Fallback destinations are ordered and do not use this field.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelServiceConfigDestinationConfigDestinationType": { + "description": "Backing-model category for a model service destination.", + "enum": [ + "DESTINATION_TYPE_PAY_PER_TOKEN_FOUNDATION_MODEL", + "DESTINATION_TYPE_PROVISIONED_THROUGHPUT_FOUNDATION_MODEL", + "DESTINATION_TYPE_EXTERNAL_FOUNDATION_MODEL" + ], + "enum_launch_stages": { + "DESTINATION_TYPE_EXTERNAL_FOUNDATION_MODEL": "GA", + "DESTINATION_TYPE_PAY_PER_TOKEN_FOUNDATION_MODEL": "GA", + "DESTINATION_TYPE_PROVISIONED_THROUGHPUT_FOUNDATION_MODEL": "GA" + } + }, + "catalog.ModelServiceConfigExternalModelConfig": { + "description": "Configuration for an external-foundation-model destination. Provider auth\nand provider-specific cloud configuration are owned by a separate, governed\nModelProviderService entity referenced via `model_provider_service`; the\nplatform resolves the provider at invocation time.", + "fields": { + "model_provider_service": { + "description": "Resource name of the governed ModelProviderService that owns provider\nauth and provider-specific configuration. The referenced\nModelProviderService also carries the provider type, so this message\ndoes not surface it directly.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "launch_stage": "GA" + }, + "target": { + "description": "Routing target for the destination: the provider-side model selected from\nthe referenced ModelProviderService's `targets` catalog, plus the unified\nAPI types the platform should translate to/from at request time.", + "ref": "catalog.ModelProviderServiceConfigModelTargetConfig", + "launch_stage": "GA" + } + } + }, + "catalog.ModelServiceConfigFallbackConfig": { + "description": "Fallback routing applied after a primary destination fails. Fallback\ndestinations are tried in the listed order.", + "fields": { + "destinations": { + "description": "Fallback destinations, tried in the listed order. At most 5 are allowed.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelServiceConfigPayPerTokenConfig": { + "description": "Configuration for a pay-per-token foundation-model destination. Identifies\nthe foundation model by its UC resource name; the platform resolves it to a\nModel Serving endpoint at request time.", + "fields": { + "model": { + "description": "Resource name of the Unity Catalog model.\nFormat: `models/{catalog}.{schema}.{model}`.", + "launch_stage": "GA" + } + } + }, + "catalog.ModelServiceConfigProvisionedThroughputConfig": { + "description": "Configuration for a provisioned-throughput foundation-model destination.\nReferences a pre-existing Model Serving endpoint that serves the model;\nsizing (provisioned throughput, burst scaling, model version) is owned by\nthe Model Serving endpoint itself, not by this message.", + "fields": { + "model": { + "description": "UC model FQN of the model served by the backing endpoint (e.g.,\n`system.ai.databricks-claude-opus-4-6`). Resolved from Model Serving at\nCreate/Update time.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "model_serving_endpoint": { + "description": "Name of the backing Model Serving endpoint serving the provisioned-\nthroughput foundation model, in the form `serving-endpoints/{name}`. The\nsame Unity Catalog model can be served on multiple Model Serving endpoints\nwith different throughput, regions, or configurations. The caller selects\nthe endpoint to which this destination routes. The endpoint must exist at\ncreate time.", + "launch_stage": "GA" + } + } + }, + "catalog.ModelServiceConfigRoutingConfig": { + "description": "Routing configuration for a model service, nesting destinations and\nfallback under a single sub-message.", + "fields": { + "destinations": { + "description": "Primary routing destinations. At most 10 are allowed. At least one is\nrequired on Create. On Update, provide this list when replacing the full\n`config` or updating `config.routing.destinations`; other granular routing\nupdates do not require resending destinations. The intermediate\n`config.routing` mask path is not supported.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "fallback": { + "description": "Fallback routing applied after a primary destination fails. Fallback\ndestinations are tried in the listed order.", + "ref": "catalog.ModelServiceConfigFallbackConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.ModelVersionInfo": { + "fields": { + "aliases": { + "description": "List of aliases associated with the model version", + "launch_stage": "GA" + }, + "catalog_name": { + "description": "The name of the catalog containing the model version", + "launch_stage": "GA" + }, + "comment": { + "description": "The comment attached to the model version", + "launch_stage": "GA" + }, + "created_at": { + "launch_stage": "GA" + }, + "created_by": { + "description": "The identifier of the user who created the model version", + "launch_stage": "GA" + }, + "id": { + "description": "The unique identifier of the model version", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "The unique identifier of the metastore containing the model version", + "launch_stage": "GA" + }, + "model_name": { + "description": "The name of the parent registered model of the model version, relative to parent schema", + "launch_stage": "GA" + }, + "model_version_dependencies": { + "description": "Model version dependencies, for feature-store packaged models", + "ref": "catalog.DependencyList", + "launch_stage": "GA" + }, + "run_id": { + "description": "MLflow run ID used when creating the model version, if ``source`` was generated by an\nexperiment run stored in an MLflow tracking server", + "launch_stage": "GA" + }, + "run_workspace_id": { + "description": "ID of the Databricks workspace containing the MLflow run that generated this model\nversion, if applicable", + "launch_stage": "GA" + }, + "schema_name": { + "description": "The name of the schema containing the model version, relative to parent catalog", + "launch_stage": "GA" + }, + "source": { + "description": "URI indicating the location of the source artifacts (files) for the model version", + "launch_stage": "GA" + }, + "status": { + "description": "Current status of the model version. Newly created model versions start in\nPENDING_REGISTRATION status, then move to READY status once the model version files are uploaded and\nthe model version is finalized. Only model versions in READY status can be loaded for inference or\nserved.", + "ref": "catalog.ModelVersionInfoStatus", + "launch_stage": "GA" + }, + "storage_location": { + "description": "The storage location on the cloud under which model version data files are stored", + "launch_stage": "GA" + }, + "updated_at": { + "launch_stage": "GA" + }, + "updated_by": { + "description": "The identifier of the user who updated the model version last time", + "launch_stage": "GA" + }, + "version": { + "description": "Integer model version number, used to reference the model version in API requests.", + "launch_stage": "GA" + } + } + }, + "catalog.ModelVersionInfoStatus": { + "enum": [ + "MODEL_VERSION_STATUS_UNKNOWN", + "PENDING_REGISTRATION", + "FAILED_REGISTRATION", + "READY" + ], + "enum_launch_stages": { + "FAILED_REGISTRATION": "GA", + "MODEL_VERSION_STATUS_UNKNOWN": "GA", + "PENDING_REGISTRATION": "GA", + "READY": "GA" + } + }, + "catalog.MonitorCronSchedule": { + "fields": { + "pause_status": { + "description": "Read only field that indicates whether a schedule is paused or not.", + "ref": "catalog.MonitorCronSchedulePauseStatus", + "launch_stage": "GA" + }, + "quartz_cron_expression": { + "description": "The expression that determines when to run the monitor. See [examples](https://www.quartz-scheduler.org/documentation/quartz-2.3.0/tutorials/crontrigger.html).", + "launch_stage": "GA" + }, + "timezone_id": { + "description": "The timezone id (e.g., ``PST``) in which to evaluate the quartz expression.", + "launch_stage": "GA" + } + } + }, + "catalog.MonitorCronSchedulePauseStatus": { + "description": "Source link: https://src.dev.databricks.com/databricks/universe/-/blob/elastic-spark-common/api/messages/schedule.proto\nMonitoring workflow schedule pause status.", + "enum": [ + "UNSPECIFIED", + "UNPAUSED", + "PAUSED" + ], + "enum_launch_stages": { + "PAUSED": "GA", + "UNPAUSED": "GA", + "UNSPECIFIED": "GA" + } + }, + "catalog.MonitorDataClassificationConfig": { + "description": "Data classification related configuration.", + "fields": { + "enabled": { + "description": "Whether to enable data classification.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "catalog.MonitorDestination": { + "fields": { + "email_addresses": { + "description": "The list of email addresses to send the notification to. A maximum of 5 email addresses is supported.", + "launch_stage": "GA" + } + } + }, + "catalog.MonitorInferenceLog": { + "fields": { + "granularities": { + "description": "List of granularities to use when aggregating data into time windows based on their timestamp.", + "launch_stage": "GA" + }, + "label_col": { + "description": "Column for the label.", + "launch_stage": "GA" + }, + "model_id_col": { + "description": "Column for the model identifier.", + "launch_stage": "GA" + }, + "prediction_col": { + "description": "Column for the prediction.", + "launch_stage": "GA" + }, + "prediction_proba_col": { + "description": "Column for prediction probabilities", + "launch_stage": "GA" + }, + "problem_type": { + "description": "Problem type the model aims to solve.", + "ref": "catalog.MonitorInferenceLogProblemType", + "launch_stage": "GA" + }, + "timestamp_col": { + "description": "Column for the timestamp.", + "launch_stage": "GA" + } + } + }, + "catalog.MonitorInferenceLogProblemType": { + "enum": [ + "PROBLEM_TYPE_CLASSIFICATION", + "PROBLEM_TYPE_REGRESSION" + ], + "enum_launch_stages": { + "PROBLEM_TYPE_CLASSIFICATION": "GA", + "PROBLEM_TYPE_REGRESSION": "GA" + } + }, + "catalog.MonitorInfo": { + "fields": { + "assets_dir": { + "description": "[Create:REQ Update:IGN] Field for specifying the absolute path to a custom directory to store data-monitoring\nassets. Normally prepopulated to a default user location via UI and Python APIs.", + "launch_stage": "GA" + }, + "baseline_table_name": { + "description": "[Create:OPT Update:OPT] Baseline table name.\nBaseline data is used to compute drift from the data in the monitored `table_name`.\nThe baseline table and the monitored table shall have the same schema.", + "launch_stage": "GA" + }, + "custom_metrics": { + "description": "[Create:OPT Update:OPT] Custom metrics.", + "launch_stage": "GA" + }, + "dashboard_id": { + "description": "[Create:ERR Update:OPT] Id of dashboard that visualizes the computed metrics.\nThis can be empty if the monitor is in PENDING state.", + "launch_stage": "GA" + }, + "data_classification_config": { + "description": "[Create:OPT Update:OPT] Data classification related config.", + "ref": "catalog.MonitorDataClassificationConfig", + "launch_stage": "PRIVATE_PREVIEW" + }, + "drift_metrics_table_name": { + "description": "[Create:ERR Update:IGN] Table that stores drift metrics data. Format: `catalog.schema.table_name`.", + "launch_stage": "GA" + }, + "inference_log": { + "ref": "catalog.MonitorInferenceLog", + "launch_stage": "GA" + }, + "latest_monitor_failure_msg": { + "description": "[Create:ERR Update:IGN] The latest error message for a monitor failure.", + "launch_stage": "GA" + }, + "monitor_version": { + "description": "[Create:ERR Update:IGN] Represents the current monitor configuration version in use. The version will be represented in a\nnumeric fashion (1,2,3...). The field has flexibility to take on negative values, which can indicate corrupted\nmonitor_version numbers.", + "launch_stage": "GA" + }, + "notifications": { + "description": "[Create:OPT Update:OPT] Field for specifying notification settings.", + "ref": "catalog.MonitorNotifications", + "launch_stage": "GA" + }, + "output_schema_name": { + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "launch_stage": "GA" + }, + "profile_metrics_table_name": { + "description": "[Create:ERR Update:IGN] Table that stores profile metrics data. Format: `catalog.schema.table_name`.", + "launch_stage": "GA" + }, + "schedule": { + "description": "[Create:OPT Update:OPT] The monitor schedule.", + "ref": "catalog.MonitorCronSchedule", + "launch_stage": "GA" + }, + "slicing_exprs": { + "description": "[Create:OPT Update:OPT] List of column expressions to slice data with for targeted analysis. The data is grouped by\neach expression independently, resulting in a separate slice for each predicate and its\ncomplements. For example `slicing_exprs=[“col_1”, “col_2 \u003e 10”]` will generate the following\nslices: two slices for `col_2 \u003e 10` (True and False), and one slice per unique value in\n`col1`. For high-cardinality columns, only the top 100 unique values by frequency will\ngenerate slices.", + "launch_stage": "GA" + }, + "snapshot": { + "description": "Configuration for monitoring snapshot tables.", + "ref": "catalog.MonitorSnapshot", + "launch_stage": "GA" + }, + "status": { + "description": "[Create:ERR Update:IGN] The monitor status.", + "ref": "catalog.MonitorInfoStatus", + "launch_stage": "GA" + }, + "table_name": { + "description": "[Create:ERR Update:IGN] UC table to monitor. Format: `catalog.schema.table_name`", + "launch_stage": "GA" + }, + "time_series": { + "description": "Configuration for monitoring time series tables.", + "ref": "catalog.MonitorTimeSeries", + "launch_stage": "GA" + } + } + }, + "catalog.MonitorInfoStatus": { + "enum": [ + "MONITOR_STATUS_ACTIVE", + "MONITOR_STATUS_PENDING", + "MONITOR_STATUS_DELETE_PENDING", + "MONITOR_STATUS_ERROR", + "MONITOR_STATUS_FAILED" + ], + "enum_launch_stages": { + "MONITOR_STATUS_ACTIVE": "GA", + "MONITOR_STATUS_DELETE_PENDING": "GA", + "MONITOR_STATUS_ERROR": "GA", + "MONITOR_STATUS_FAILED": "GA", + "MONITOR_STATUS_PENDING": "GA" + } + }, + "catalog.MonitorMetric": { + "description": "Custom metric definition.", + "fields": { + "definition": { + "description": "Jinja template for a SQL expression that specifies how to compute the metric. See [create metric definition](https://docs.databricks.com/en/lakehouse-monitoring/custom-metrics.html#create-definition).", + "launch_stage": "GA" + }, + "input_columns": { + "description": "A list of column names in the input table the metric should be computed for.\nCan use ``\":table\"`` to indicate that the metric needs information from multiple columns.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the metric in the output tables.", + "launch_stage": "GA" + }, + "output_data_type": { + "description": "The output type of the custom metric.", + "launch_stage": "GA" + }, + "type": { + "description": "Can only be one of ``\"CUSTOM_METRIC_TYPE_AGGREGATE\"``, ``\"CUSTOM_METRIC_TYPE_DERIVED\"``, or ``\"CUSTOM_METRIC_TYPE_DRIFT\"``.\nThe ``\"CUSTOM_METRIC_TYPE_AGGREGATE\"`` and ``\"CUSTOM_METRIC_TYPE_DERIVED\"`` metrics\nare computed on a single table, whereas the ``\"CUSTOM_METRIC_TYPE_DRIFT\"`` compare metrics across\nbaseline and input table, or across the two consecutive time windows.\n- CUSTOM_METRIC_TYPE_AGGREGATE: only depend on the existing columns in your table\n- CUSTOM_METRIC_TYPE_DERIVED: depend on previously computed aggregate metrics\n- CUSTOM_METRIC_TYPE_DRIFT: depend on previously computed aggregate or derived metrics", + "ref": "catalog.MonitorMetricType", + "launch_stage": "GA" + } + } + }, + "catalog.MonitorMetricType": { + "description": "Can only be one of ``\\\"CUSTOM_METRIC_TYPE_AGGREGATE\\\"``, ``\\\"CUSTOM_METRIC_TYPE_DERIVED\\\"``, or ``\\\"CUSTOM_METRIC_TYPE_DRIFT\\\"``.\nThe ``\\\"CUSTOM_METRIC_TYPE_AGGREGATE\\\"`` and ``\\\"CUSTOM_METRIC_TYPE_DERIVED\\\"`` metrics\nare computed on a single table, whereas the ``\\\"CUSTOM_METRIC_TYPE_DRIFT\\\"`` compare metrics across\nbaseline and input table, or across the two consecutive time windows.\n- CUSTOM_METRIC_TYPE_AGGREGATE: only depend on the existing columns in your table\n- CUSTOM_METRIC_TYPE_DERIVED: depend on previously computed aggregate metrics\n- CUSTOM_METRIC_TYPE_DRIFT: depend on previously computed aggregate or derived metrics", + "enum": [ + "CUSTOM_METRIC_TYPE_AGGREGATE", + "CUSTOM_METRIC_TYPE_DERIVED", + "CUSTOM_METRIC_TYPE_DRIFT" + ], + "enum_launch_stages": { + "CUSTOM_METRIC_TYPE_AGGREGATE": "GA", + "CUSTOM_METRIC_TYPE_DERIVED": "GA", + "CUSTOM_METRIC_TYPE_DRIFT": "GA" + } + }, + "catalog.MonitorNotifications": { + "fields": { + "on_failure": { + "description": "Destinations to send notifications on failure/timeout.", + "ref": "catalog.MonitorDestination", + "launch_stage": "GA" + }, + "on_new_classification_tag_detected": { + "description": "Destinations to send notifications on new classification tag detected.", + "ref": "catalog.MonitorDestination", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "catalog.MonitorRefreshInfo": { + "fields": { + "end_time_ms": { + "description": "Time at which refresh operation completed (milliseconds since 1/1/1970 UTC).", + "launch_stage": "GA" + }, + "message": { + "description": "An optional message to give insight into the current state of the job (e.g. FAILURE messages).", + "launch_stage": "GA" + }, + "refresh_id": { + "description": "Unique id of the refresh operation.", + "launch_stage": "GA" + }, + "start_time_ms": { + "description": "Time at which refresh operation was initiated (milliseconds since 1/1/1970 UTC).", + "launch_stage": "GA" + }, + "state": { + "description": "The current state of the refresh.", + "ref": "catalog.MonitorRefreshInfoState", + "launch_stage": "GA" + }, + "trigger": { + "description": "The method by which the refresh was triggered.", + "ref": "catalog.MonitorRefreshInfoTrigger", + "launch_stage": "GA" + } + } + }, + "catalog.MonitorRefreshInfoState": { + "description": "The current state of the refresh.", + "enum": [ + "UNKNOWN", + "PENDING", + "RUNNING", + "SUCCESS", + "FAILED", + "CANCELED" + ], + "enum_launch_stages": { + "CANCELED": "GA", + "FAILED": "GA", + "PENDING": "GA", + "RUNNING": "GA", + "SUCCESS": "GA", + "UNKNOWN": "GA" + } + }, + "catalog.MonitorRefreshInfoTrigger": { + "enum": [ + "UNKNOWN_TRIGGER", + "SCHEDULE", + "MANUAL" + ], + "enum_launch_stages": { + "MANUAL": "GA", + "SCHEDULE": "GA", + "UNKNOWN_TRIGGER": "GA" + } + }, + "catalog.MonitorRefreshListResponse": { + "fields": { + "refreshes": { + "description": "List of refreshes.", + "launch_stage": "GA" + } + } + }, + "catalog.MonitorSnapshot": { + "description": "Snapshot analysis configuration" + }, + "catalog.MonitorTimeSeries": { + "description": "Time series analysis configuration.", + "fields": { + "granularities": { + "description": "Granularities for aggregating data into time windows based on their timestamp. Currently the following static\ngranularities are supported:\n{``\\\"5 minutes\\\"``, ``\\\"30 minutes\\\"``, ``\\\"1 hour\\\"``, ``\\\"1 day\\\"``, ``\\\"\\u003cn\\u003e week(s)\\\"``, ``\\\"1 month\\\"``, ``\\\"1 year\\\"``}.", + "launch_stage": "GA" + }, + "timestamp_col": { + "description": "Column for the timestamp.", + "launch_stage": "GA" + } + } + }, + "catalog.NamedTableConstraint": { + "fields": { + "name": { + "description": "The name of the constraint.", + "launch_stage": "GA" + } + } + }, + "catalog.NotificationDestination": { + "fields": { + "destination_id": { + "description": "The identifier for the destination. This is the email address for EMAIL destinations, the URL for URL destinations,\nor the unique Databricks notification destination ID for all other external destinations.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "destination_type": { + "description": "The type of the destination.", + "ref": "catalog.DestinationType", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "special_destination": { + "description": "This field is used to denote whether the destination is the email of the owner of the securable object.\nThe special destination cannot be assigned to a securable and only represents the default destination of the securable.\nThe securable types that support default special destinations are: \"catalog\", \"external_location\", \"connection\", \"credential\", and \"metastore\".\nThe **destination_type** of a **special_destination** is always EMAIL.", + "ref": "catalog.SpecialDestination", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.OnlineTable": { + "description": "Online Table information.", + "fields": { + "name": { + "description": "Full three-part (catalog, schema, table) name of the table.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "spec": { + "description": "Specification of the online table.", + "ref": "catalog.OnlineTableSpec", + "launch_stage": "PUBLIC_PREVIEW" + }, + "status": { + "description": "Online Table data synchronization status", + "ref": "catalog.OnlineTableStatus", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "table_serving_url": { + "description": "Data serving REST API URL for this table", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "unity_catalog_provisioning_state": { + "description": "The provisioning state of the online table entity in Unity Catalog. This is distinct from the\nstate of the data synchronization pipeline (i.e. the table may be in \"ACTIVE\" but the pipeline\nmay be in \"PROVISIONING\" as it runs asynchronously).", + "ref": "catalog.ProvisioningInfoState", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.OnlineTableSpec": { + "description": "Specification of an online table.", + "fields": { + "perform_full_copy": { + "description": "Whether to create a full-copy pipeline -- a pipeline that stops after creates a full copy of\nthe source table upon initialization and does not process any change data feeds (CDFs)\nafterwards. The pipeline can still be manually triggered afterwards, but it always perform a\nfull copy of the source table and there are no incremental updates. This mode is useful for\nsyncing views or tables without CDFs to online tables.\nNote that the full-copy pipeline only supports \"triggered\" scheduling policy.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "pipeline_id": { + "description": "ID of the associated pipeline. Generated by the server - cannot be set by the caller.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "primary_key_columns": { + "description": "Primary Key columns to be used for data insert/update in the destination.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "run_continuously": { + "description": "Pipeline runs continuously after generating the initial data.", + "ref": "catalog.OnlineTableSpecContinuousSchedulingPolicy", + "launch_stage": "PUBLIC_PREVIEW" + }, + "run_triggered": { + "description": "Pipeline stops after generating the initial data and can be triggered later (manually, through a cron job or through data triggers)", + "ref": "catalog.OnlineTableSpecTriggeredSchedulingPolicy", + "launch_stage": "PUBLIC_PREVIEW" + }, + "source_table_full_name": { + "description": "Three-part (catalog, schema, table) name of the source Delta table.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "timeseries_key": { + "description": "Time series key to deduplicate (tie-break) rows with the same primary key.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.OnlineTableSpecContinuousSchedulingPolicy": {}, + "catalog.OnlineTableSpecTriggeredSchedulingPolicy": {}, + "catalog.OnlineTableState": { + "description": "The state of an online table.", + "enum": [ + "PROVISIONING", + "PROVISIONING_PIPELINE_RESOURCES", + "PROVISIONING_INITIAL_SNAPSHOT", + "ONLINE", + "ONLINE_CONTINUOUS_UPDATE", + "ONLINE_TRIGGERED_UPDATE", + "ONLINE_NO_PENDING_UPDATE", + "OFFLINE", + "OFFLINE_FAILED", + "ONLINE_PIPELINE_FAILED", + "ONLINE_UPDATING_PIPELINE_RESOURCES" + ], + "enum_launch_stages": { + "OFFLINE": "PUBLIC_PREVIEW", + "OFFLINE_FAILED": "PUBLIC_PREVIEW", + "ONLINE": "PUBLIC_PREVIEW", + "ONLINE_CONTINUOUS_UPDATE": "PUBLIC_PREVIEW", + "ONLINE_NO_PENDING_UPDATE": "PUBLIC_PREVIEW", + "ONLINE_PIPELINE_FAILED": "PUBLIC_PREVIEW", + "ONLINE_TRIGGERED_UPDATE": "PUBLIC_PREVIEW", + "ONLINE_UPDATING_PIPELINE_RESOURCES": "PUBLIC_PREVIEW", + "PROVISIONING": "PUBLIC_PREVIEW", + "PROVISIONING_INITIAL_SNAPSHOT": "PUBLIC_PREVIEW", + "PROVISIONING_PIPELINE_RESOURCES": "PUBLIC_PREVIEW" + } + }, + "catalog.OnlineTableStatus": { + "description": "Status of an online table.", + "fields": { + "continuous_update_status": { + "ref": "catalog.ContinuousUpdateStatus", + "launch_stage": "PUBLIC_PREVIEW" + }, + "detailed_state": { + "description": "The state of the online table.", + "ref": "catalog.OnlineTableState", + "launch_stage": "PUBLIC_PREVIEW" + }, + "failed_status": { + "ref": "catalog.FailedStatus", + "launch_stage": "PUBLIC_PREVIEW" + }, + "message": { + "description": "A text description of the current state of the online table.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "provisioning_status": { + "ref": "catalog.ProvisioningStatus", + "launch_stage": "PUBLIC_PREVIEW" + }, + "triggered_update_status": { + "ref": "catalog.TriggeredUpdateStatus", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.OptionSpec": { + "description": "Spec of an allowed option on a securable kind and its attributes.\nThis is mostly used by UI to provide user friendly hints and descriptions\nin order to facilitate the securable creation process.", + "fields": { + "allowed_values": { + "description": "For drop down / radio button selections, UI will want to know the possible\ninput values, it can also be used by other option types to limit input selections.", + "launch_stage": "GA" + }, + "default_value": { + "description": "The default value of the option, for example, value '443' for 'port' option.", + "launch_stage": "GA" + }, + "description": { + "description": "A concise user facing description of what the input value of this option should look like.", + "launch_stage": "GA" + }, + "hint": { + "description": "The hint is used on the UI to suggest what the input value\ncan possibly be like, for example: example.com for 'host' option.\nUnlike default value, it will not be applied automatically without user input.", + "launch_stage": "GA" + }, + "is_copiable": { + "description": "Indicates whether an option should be displayed with copy button on the UI.", + "launch_stage": "GA" + }, + "is_creatable": { + "description": "Indicates whether an option can be provided by users in the create/update path of an entity.", + "launch_stage": "GA" + }, + "is_hidden": { + "description": "Is the option value not user settable and is thus not shown on the UI.", + "launch_stage": "GA" + }, + "is_loggable": { + "description": "Specifies whether this option is safe to log, i.e. no sensitive information.", + "launch_stage": "GA" + }, + "is_required": { + "description": "Is the option required.", + "launch_stage": "GA" + }, + "is_secret": { + "description": "Is the option value considered secret and thus redacted on the UI.", + "launch_stage": "GA" + }, + "is_updatable": { + "description": "Is the option updatable by users.", + "launch_stage": "GA" + }, + "name": { + "description": "The unique name of the option.", + "launch_stage": "GA" + }, + "oauth_stage": { + "description": "Specifies when the option value is displayed on the UI within the OAuth flow.", + "ref": "catalog.OptionSpecOauthStage", + "launch_stage": "GA" + }, + "type": { + "description": "The type of the option.", + "ref": "catalog.OptionSpecOptionType", + "launch_stage": "GA" + } + } + }, + "catalog.OptionSpecOauthStage": { + "description": "During the OAuth flow, specifies which stage the option should be displayed in the UI.\nOAUTH_STAGE_UNSPECIFIED is the default value for options unrelated to the OAuth flow.\nBEFORE_AUTHORIZATION_CODE corresponds to options necessary to initiate the OAuth process.\nBEFORE_ACCESS_TOKEN corresponds to options that are necessary to create a foreign connection,\nbut that should be displayed after the authorization code has already been received.", + "enum": [ + "BEFORE_AUTHORIZATION_CODE", + "BEFORE_ACCESS_TOKEN" + ], + "enum_launch_stages": { + "BEFORE_ACCESS_TOKEN": "GA", + "BEFORE_AUTHORIZATION_CODE": "GA" + } + }, + "catalog.OptionSpecOptionType": { + "description": "Type of the option, we purposely follow JavaScript types so that\nthe UI can map the options to JS types.\nhttps://www.w3schools.com/js/js_datatypes.asp\nEnum is a special case that it's just string with selections.", + "enum": [ + "OPTION_BOOLEAN", + "OPTION_NUMBER", + "OPTION_BIGINT", + "OPTION_STRING", + "OPTION_ENUM", + "OPTION_SERVICE_CREDENTIAL", + "OPTION_MULTILINE_STRING" + ], + "enum_launch_stages": { + "OPTION_BIGINT": "GA", + "OPTION_BOOLEAN": "GA", + "OPTION_ENUM": "GA", + "OPTION_MULTILINE_STRING": "GA", + "OPTION_NUMBER": "GA", + "OPTION_SERVICE_CREDENTIAL": "GA", + "OPTION_STRING": "GA" + } + }, + "catalog.PathOperation": { + "enum": [ + "PATH_READ", + "PATH_READ_WRITE", + "PATH_CREATE_TABLE" + ], + "enum_launch_stages": { + "PATH_CREATE_TABLE": "GA", + "PATH_READ": "GA", + "PATH_READ_WRITE": "GA" + } + }, + "catalog.PermissionsChange": { + "fields": { + "add": { + "description": "The set of privileges to add.", + "launch_stage": "GA" + }, + "principal": { + "description": "The principal whose privileges we are changing.\nOnly one of principal or principal_id should be specified, never both at the same time.", + "launch_stage": "GA" + }, + "remove": { + "description": "The set of privileges to remove.", + "launch_stage": "GA" + } + } + }, + "catalog.PipelineProgress": { + "description": "Progress information of the Online Table data synchronization pipeline.", + "fields": { + "estimated_completion_time_seconds": { + "description": "The estimated time remaining to complete this update in seconds.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "latest_version_currently_processing": { + "description": "The source table Delta version that was last processed by the pipeline. The pipeline may not\nhave completely processed this version yet.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "sync_progress_completion": { + "description": "The completion ratio of this update. This is a number between 0 and 1.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "synced_row_count": { + "description": "The number of rows that have been synced in this update.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "total_row_count": { + "description": "The total number of rows that need to be synced in this update. This number may be an estimate.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.PolicyFunctionArgument": { + "description": "A positional argument passed to a row filter or column mask function.\nDistinguishes between column references and literals.", + "fields": { + "column": { + "description": "A column reference.", + "launch_stage": "GA" + }, + "constant": { + "description": "A constant literal.", + "launch_stage": "GA" + } + } + }, + "catalog.PolicyInfo": { + "fields": { + "column_mask": { + "description": "Options for column mask policies. Valid only if `policy_type` is `POLICY_TYPE_COLUMN_MASK`.\nRequired on create and optional on update. When specified on update,\nthe new options will replace the existing options as a whole.", + "ref": "catalog.ColumnMaskOptions", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "comment": { + "description": "Optional description of the policy.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "created_at": { + "description": "Time at which the policy was created, in epoch milliseconds. Output only.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "Username of the user who created the policy. Output only.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "deny": { + "description": "Options for deny policies. Valid only if `policy_type` is `POLICY_TYPE_DENY`.\nRequired on create and optional on update. When specified on update,\nthe new options will replace the existing options as a whole.", + "ref": "catalog.DenyOptions", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "except_principals": { + "description": "Optional list of user or group names that should be excluded from the policy.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "for_securable_type": { + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "ref": "catalog.SecurableType", + "launch_stage": "GA" + }, + "governed_tags": { + "description": "Governed tag keys and values referenced by this policy's conditions and function arguments. Output only.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "grant": { + "description": "Options for grant policies. Valid only if `policy_type` is `POLICY_TYPE_GRANT`.\nRequired on create and optional on update. When specified on update,\nthe new options will replace the existing options as a whole.", + "ref": "catalog.GrantOptions", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "id": { + "description": "Unique identifier of the policy. This field is output only and is generated by the system.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "match_columns": { + "description": "Optional list of condition expressions used to match table columns.\nOnly valid when `for_securable_type` is `TABLE`.\nWhen specified, the policy only applies to tables whose columns satisfy all match conditions.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Name of the policy. Required on create and optional on update.\nTo rename the policy, set `name` to a different value on update.", + "launch_stage": "GA" + }, + "on_securable_fullname": { + "description": "Full name of the securable on which the policy is defined.\nRequired on create.", + "launch_stage": "GA" + }, + "on_securable_type": { + "description": "Type of the securable on which the policy is defined.\nOnly `CATALOG`, `SCHEMA` and `TABLE` are supported at this moment.\nRequired on create.", + "ref": "catalog.SecurableType", + "launch_stage": "GA" + }, + "policy_type": { + "description": "Type of the policy. Required on create.", + "ref": "catalog.PolicyType", + "launch_stage": "GA" + }, + "row_filter": { + "description": "Options for row filter policies. Valid only if `policy_type` is `POLICY_TYPE_ROW_FILTER`.\nRequired on create and optional on update. When specified on update,\nthe new options will replace the existing options as a whole.", + "ref": "catalog.RowFilterOptions", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "to_principals": { + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Time at which the policy was last modified, in epoch milliseconds. Output only.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_by": { + "description": "Username of the user who last modified the policy. Output only.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "when_condition": { + "description": "Optional condition when the policy should take effect.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.PolicyType": { + "enum": [ + "POLICY_TYPE_ROW_FILTER", + "POLICY_TYPE_COLUMN_MASK", + "POLICY_TYPE_DENY", + "POLICY_TYPE_GRANT" + ], + "enum_launch_stages": { + "POLICY_TYPE_COLUMN_MASK": "GA", + "POLICY_TYPE_DENY": "GA", + "POLICY_TYPE_GRANT": "GA", + "POLICY_TYPE_ROW_FILTER": "GA" + } + }, + "catalog.PrimaryKeyConstraint": { + "fields": { + "child_columns": { + "description": "Column names for this constraint.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the constraint.", + "launch_stage": "GA" + }, + "rely": { + "description": "True if the constraint is RELY, false or unset if NORELY.", + "launch_stage": "GA" + }, + "timeseries_columns": { + "description": "Column names that represent a timeseries.", + "launch_stage": "GA" + } + } + }, + "catalog.Principal": { + "fields": { + "id": { + "description": "Databricks user, group or service principal ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "principal_type": { + "ref": "catalog.PrincipalType", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.PrincipalType": { + "enum": [ + "USER_PRINCIPAL", + "GROUP_PRINCIPAL", + "SERVICE_PRINCIPAL" + ], + "enum_launch_stages": { + "GROUP_PRINCIPAL": "PUBLIC_PREVIEW", + "SERVICE_PRINCIPAL": "PUBLIC_PREVIEW", + "USER_PRINCIPAL": "PUBLIC_PREVIEW" + } + }, + "catalog.Privilege": { + "enum": [ + "SELECT", + "READ_PRIVATE_FILES", + "WRITE_PRIVATE_FILES", + "CREATE", + "USAGE", + "USE_CATALOG", + "USE_SCHEMA", + "CREATE_SCHEMA", + "CREATE_VIEW", + "CREATE_EXTERNAL_TABLE", + "CREATE_MATERIALIZED_VIEW", + "CREATE_FUNCTION", + "CREATE_MODEL", + "CREATE_CATALOG", + "CREATE_MANAGED_STORAGE", + "CREATE_EXTERNAL_LOCATION", + "CREATE_STORAGE_CREDENTIAL", + "CREATE_SERVICE_CREDENTIAL", + "ACCESS", + "CREATE_SHARE", + "CREATE_RECIPIENT", + "CREATE_PROVIDER", + "USE_SHARE", + "USE_RECIPIENT", + "USE_PROVIDER", + "USE_MARKETPLACE_ASSETS", + "SET_SHARE_PERMISSION", + "MODIFY", + "REFRESH", + "EXECUTE", + "READ_FILES", + "WRITE_FILES", + "CREATE_TABLE", + "ALL_PRIVILEGES", + "CREATE_CONNECTION", + "USE_CONNECTION", + "APPLY_TAG", + "CREATE_FOREIGN_CATALOG", + "CREATE_FOREIGN_SECURABLE", + "MANAGE_ALLOWLIST", + "CREATE_VOLUME", + "CREATE_EXTERNAL_VOLUME", + "READ_VOLUME", + "WRITE_VOLUME", + "MANAGE", + "BROWSE", + "CREATE_CLEAN_ROOM", + "MODIFY_CLEAN_ROOM", + "EXECUTE_CLEAN_ROOM_TASK", + "EXTERNAL_USE_SCHEMA", + "READ_METADATA", + "EXTERNAL_USE_LOCATION" + ], + "enum_launch_stages": { + "ACCESS": "GA", + "ALL_PRIVILEGES": "GA", + "APPLY_TAG": "GA", + "BROWSE": "GA", + "CREATE": "GA", + "CREATE_CATALOG": "GA", + "CREATE_CLEAN_ROOM": "GA", + "CREATE_CONNECTION": "GA", + "CREATE_EXTERNAL_LOCATION": "GA", + "CREATE_EXTERNAL_TABLE": "GA", + "CREATE_EXTERNAL_VOLUME": "GA", + "CREATE_FOREIGN_CATALOG": "GA", + "CREATE_FOREIGN_SECURABLE": "GA", + "CREATE_FUNCTION": "GA", + "CREATE_MANAGED_STORAGE": "GA", + "CREATE_MATERIALIZED_VIEW": "GA", + "CREATE_MODEL": "GA", + "CREATE_PROVIDER": "GA", + "CREATE_RECIPIENT": "GA", + "CREATE_SCHEMA": "GA", + "CREATE_SERVICE_CREDENTIAL": "GA", + "CREATE_SHARE": "GA", + "CREATE_STORAGE_CREDENTIAL": "GA", + "CREATE_TABLE": "GA", + "CREATE_VIEW": "GA", + "CREATE_VOLUME": "GA", + "EXECUTE": "GA", + "EXECUTE_CLEAN_ROOM_TASK": "GA", + "EXTERNAL_USE_LOCATION": "PUBLIC_PREVIEW", + "EXTERNAL_USE_SCHEMA": "GA", + "MANAGE": "GA", + "MANAGE_ALLOWLIST": "GA", + "MODIFY": "GA", + "MODIFY_CLEAN_ROOM": "GA", + "READ_FILES": "GA", + "READ_METADATA": "GA", + "READ_PRIVATE_FILES": "GA", + "READ_VOLUME": "GA", + "REFRESH": "GA", + "SELECT": "GA", + "SET_SHARE_PERMISSION": "GA", + "USAGE": "GA", + "USE_CATALOG": "GA", + "USE_CONNECTION": "GA", + "USE_MARKETPLACE_ASSETS": "GA", + "USE_PROVIDER": "GA", + "USE_RECIPIENT": "GA", + "USE_SCHEMA": "GA", + "USE_SHARE": "GA", + "WRITE_FILES": "GA", + "WRITE_PRIVATE_FILES": "GA", + "WRITE_VOLUME": "GA" + } + }, + "catalog.PrivilegeAssignment": { + "fields": { + "principal": { + "description": "The principal (user email address or group name).\nFor deleted principals, `principal` is empty while `principal_id` is populated.", + "launch_stage": "GA" + }, + "privileges": { + "description": "The privileges assigned to the principal.", + "launch_stage": "GA" + } + } + }, + "catalog.ProvisioningInfo": { + "description": "Status of an asynchronously provisioned resource.", + "fields": { + "state": { + "description": "The provisioning state of the resource.", + "ref": "catalog.ProvisioningInfoState", + "launch_stage": "GA" + } + } + }, + "catalog.ProvisioningInfoState": { + "enum": [ + "PROVISIONING", + "ACTIVE", + "FAILED", + "DELETING", + "UPDATING", + "DEGRADED" + ], + "enum_launch_stages": { + "ACTIVE": "GA", + "DEGRADED": "GA", + "DELETING": "GA", + "FAILED": "GA", + "PROVISIONING": "GA", + "UPDATING": "GA" + } + }, + "catalog.ProvisioningStatus": { + "description": "Detailed status of an online table. Shown if the online table is in the\nPROVISIONING_PIPELINE_RESOURCES or the PROVISIONING_INITIAL_SNAPSHOT state.", + "fields": { + "initial_pipeline_sync_progress": { + "description": "Details about initial data synchronization. Only populated when in the\nPROVISIONING_INITIAL_SNAPSHOT state.", + "ref": "catalog.PipelineProgress", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.QuotaInfo": { + "fields": { + "last_refreshed_at": { + "description": "The timestamp that indicates when the quota count was last updated.", + "launch_stage": "GA" + }, + "parent_full_name": { + "description": "Name of the parent resource. Returns metastore ID if the parent is a metastore.", + "launch_stage": "GA" + }, + "parent_securable_type": { + "description": "The quota parent securable type.", + "ref": "catalog.SecurableType", + "launch_stage": "GA" + }, + "quota_count": { + "description": "The current usage of the resource quota.", + "launch_stage": "GA" + }, + "quota_limit": { + "description": "The current limit of the resource quota.", + "launch_stage": "GA" + }, + "quota_name": { + "description": "The name of the quota.", + "launch_stage": "GA" + } + } + }, + "catalog.R2Credentials": { + "description": "R2 temporary credentials for API authentication.\nRead more at https://developers.cloudflare.com/r2/api/s3/tokens/.", + "fields": { + "access_key_id": { + "description": "The access key ID that identifies the temporary credentials.", + "launch_stage": "GA" + }, + "secret_access_key": { + "description": "The secret access key associated with the access key.", + "launch_stage": "GA" + }, + "session_token": { + "description": "The generated JWT that users must pass to use the temporary credentials.", + "launch_stage": "GA" + } + } + }, + "catalog.RateLimit": { + "description": "A rate limit applied to service requests. Leave `requests` or `tokens`\nunset to impose no limit on that dimension; set a value to cap that dimension\nwithin the renewal period.", + "fields": { + "key": { + "description": "Scope of the rate limit. Depending on this value, the limit applies to a\nprincipal, the service as a whole, or each user by default.", + "ref": "catalog.RateLimitRateLimitKey", + "launch_stage": "GA" + }, + "principal": { + "description": "Principal this limit applies to: user email, group name, or service\nprincipal application ID. Required when `key` applies to a user, group, or\nservice principal; otherwise it must be unset.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "renewal_period": { + "description": "Renewal period.", + "ref": "catalog.RateLimitRateLimitRenewalPeriod", + "launch_stage": "GA" + }, + "requests": { + "description": "Maximum requests allowed in one renewal period. Leave unset for no request\nlimit. Set to `0` to deny all requests.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "tokens": { + "description": "Maximum tokens allowed in one renewal period. Leave unset for no token\nlimit. Set to `0` to deny all requests.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.RateLimitRateLimitKey": { + "description": "Scope key for a rate limit.", + "enum": [ + "RATE_LIMIT_KEY_USER", + "RATE_LIMIT_KEY_USER_GROUP", + "RATE_LIMIT_KEY_SERVICE_PRINCIPAL", + "RATE_LIMIT_KEY_SERVICE", + "RATE_LIMIT_KEY_USER_DEFAULT" + ], + "enum_launch_stages": { + "RATE_LIMIT_KEY_SERVICE": "GA", + "RATE_LIMIT_KEY_SERVICE_PRINCIPAL": "GA", + "RATE_LIMIT_KEY_USER": "GA", + "RATE_LIMIT_KEY_USER_DEFAULT": "GA", + "RATE_LIMIT_KEY_USER_GROUP": "GA" + } + }, + "catalog.RateLimitRateLimitRenewalPeriod": { + "description": "Renewal period for a rate limit.", + "enum": [ + "RATE_LIMIT_RENEWAL_PERIOD_MINUTE", + "RATE_LIMIT_RENEWAL_PERIOD_HOUR" + ], + "enum_launch_stages": { + "RATE_LIMIT_RENEWAL_PERIOD_HOUR": "GA", + "RATE_LIMIT_RENEWAL_PERIOD_MINUTE": "GA" + } + }, + "catalog.ReadVolumeRequest": { + "fields": { + "include_browse": { + "description": "Whether to include volumes in the response for which the principal can only access selective metadata for", + "launch_stage": "GA" + } + } + }, + "catalog.RegenerateDashboardRequest": { + "fields": { + "warehouse_id": { + "description": "Optional argument to specify the warehouse for dashboard regeneration. If not specified, the first running\nwarehouse will be used.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "catalog.RegenerateDashboardResponse": { + "fields": { + "dashboard_id": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "parent_folder": { + "description": "Parent folder is equivalent to {assets_dir}/{tableName}", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "catalog.RegisteredModelAlias": { + "fields": { + "alias_name": { + "description": "Name of the alias, e.g. 'champion' or 'latest_stable'", + "launch_stage": "GA" + }, + "catalog_name": { + "description": "The name of the catalog containing the model version", + "launch_stage": "GA" + }, + "id": { + "description": "The unique identifier of the alias", + "launch_stage": "GA" + }, + "model_name": { + "description": "The name of the parent registered model of the model version, relative to parent schema", + "launch_stage": "GA" + }, + "schema_name": { + "description": "The name of the schema containing the model version, relative to parent catalog", + "launch_stage": "GA" + }, + "version_num": { + "description": "Integer version number of the model version to which this alias points.", + "launch_stage": "GA" + } + } + }, + "catalog.RegisteredModelInfo": { + "fields": { + "aliases": { + "description": "List of aliases associated with the registered model", + "launch_stage": "GA" + }, + "browse_only": { + "description": "Indicates whether the principal is limited to retrieving metadata for the associated object through the BROWSE privilege when include_browse is enabled in the request.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "catalog_name": { + "description": "The name of the catalog where the schema and the registered model reside", + "launch_stage": "GA" + }, + "comment": { + "description": "The comment attached to the registered model", + "launch_stage": "GA" + }, + "created_at": { + "description": "Creation timestamp of the registered model in milliseconds since the Unix epoch", + "launch_stage": "GA" + }, + "created_by": { + "description": "The identifier of the user who created the registered model", + "launch_stage": "GA" + }, + "full_name": { + "description": "The three-level (fully qualified) name of the registered model", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "The unique identifier of the metastore", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the registered model", + "launch_stage": "GA" + }, + "owner": { + "description": "The identifier of the user who owns the registered model", + "launch_stage": "GA" + }, + "schema_name": { + "description": "The name of the schema where the registered model resides", + "launch_stage": "GA" + }, + "storage_location": { + "description": "The storage location on the cloud under which model version data files are stored", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Last-update timestamp of the registered model in milliseconds since the Unix epoch", + "launch_stage": "GA" + }, + "updated_by": { + "description": "The identifier of the user who updated the registered model last time", + "launch_stage": "GA" + } + } + }, + "catalog.RowFilterOptions": { + "fields": { + "function_name": { + "description": "The fully qualified name of the row filter function.\nThe function is called on each row of the target table. It should return a boolean value\nindicating whether the row should be visible to the user.\nRequired on create and update.", + "launch_stage": "GA" + }, + "using": { + "description": "Optional list of column aliases or constant literals to be passed as arguments to the row filter function.\nThe type of each column should match the positional argument of the row filter function.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.RunRefreshRequest": {}, + "catalog.SchemaInfo": { + "fields": { + "browse_only": { + "description": "Indicates whether the principal is limited to retrieving metadata for the associated object through the BROWSE privilege when include_browse is enabled in the request.", + "launch_stage": "GA" + }, + "catalog_name": { + "description": "Name of parent catalog.", + "launch_stage": "GA" + }, + "catalog_type": { + "description": "The type of the parent catalog.", + "ref": "catalog.CatalogType", + "launch_stage": "GA" + }, + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this schema was created, in epoch milliseconds.", + "launch_stage": "GA" + }, + "created_by": { + "description": "Username of schema creator.", + "launch_stage": "GA" + }, + "custom_max_retention_hours": { + "description": "Custom maximum retention period in hours for the schema.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "effective_predictive_optimization_flag": { + "ref": "catalog.EffectivePredictiveOptimizationFlag", + "launch_stage": "GA" + }, + "enable_predictive_optimization": { + "description": "Whether predictive optimization should be enabled for this object and objects under it.", + "ref": "catalog.EnablePredictiveOptimization", + "launch_stage": "GA" + }, + "full_name": { + "description": "Full name of schema, in form of __catalog_name__.__schema_name__.", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "Unique identifier of parent metastore.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of schema, relative to parent catalog.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of current owner of schema.", + "launch_stage": "GA" + }, + "properties": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + }, + "schema_id": { + "description": "The unique identifier of the schema.", + "launch_stage": "GA" + }, + "storage_location": { + "description": "Storage location for managed tables within schema.", + "launch_stage": "GA" + }, + "storage_root": { + "description": "Storage root URL for managed tables within schema.", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Time at which this schema was created, in epoch milliseconds.", + "launch_stage": "GA" + }, + "updated_by": { + "description": "Username of user who last modified schema.", + "launch_stage": "GA" + } + } + }, + "catalog.Secret": { + "description": "A secret stored in Unity Catalog. Secrets are three-level namespace objects\n(catalog.schema.secret) that securely store sensitive credential data such as\npasswords, tokens, and keys.", + "fields": { + "catalog_name": { + "description": "The name of the catalog where the schema and the secret reside.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "comment": { + "description": "User-provided free-form text description of the secret.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "create_time": { + "description": "The time at which this secret was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "The principal that created the secret.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_owner": { + "description": "The effective owner of the secret, which may differ from the directly-set **owner** due to\ninheritance.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_value": { + "description": "The secret value. Only populated in responses when you have the **READ_SECRET**\nprivilege and **include_value** is set to true in the request. The maximum size is 60 KiB.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "expire_time": { + "description": "User-provided expiration time of the secret. This field indicates when the secret should no\nlonger be used and may be displayed as a warning in the UI. It is purely informational and\ndoes not trigger any automatic actions or affect the secret's lifecycle.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "full_name": { + "description": "The three-level (fully qualified) name of the secret, in the form of **catalog_name.schema_name.secret_name**.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "metastore_id": { + "description": "Unique identifier of the metastore hosting the secret.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "The name of the secret, relative to its parent schema.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "owner": { + "description": "The owner of the secret. Defaults to the creating principal on creation. Can be updated to\ntransfer ownership of the secret to another principal.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "schema_name": { + "description": "The name of the schema where the secret resides.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "update_time": { + "description": "The time at which this secret was last updated.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_by": { + "description": "The principal that last updated the secret.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "value": { + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + } + } + }, + "catalog.Securable": { + "description": "Generic definition of a securable, which is uniquely defined in a metastore\nby its type and full name.", + "fields": { + "full_name": { + "description": "Required. The full name of the catalog/schema/table.\nOptional if resource_name is present.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "provider_share": { + "description": "Optional. The name of the Share object that contains the securable when the securable is\ngetting shared in D2D Delta Sharing.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "type": { + "description": "Required. The type of securable (catalog/schema/table).\nOptional if resource_name is present.", + "ref": "catalog.SecurableType", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.SecurableKind": { + "enum": [ + "TABLE_STANDARD", + "TABLE_EXTERNAL", + "TABLE_DELTA", + "TABLE_DELTA_EXTERNAL", + "TABLE_VIEW", + "TABLE_METRIC_VIEW", + "TABLE_DELTASHARING", + "TABLE_DELTASHARING_MUTABLE", + "TABLE_VIEW_DELTASHARING", + "TABLE_METRIC_VIEW_DELTASHARING", + "TABLE_MATERIALIZED_VIEW_DELTASHARING", + "TABLE_STREAMING_LIVE_TABLE_DELTASHARING", + "TABLE_FOREIGN_DELTASHARING", + "TABLE_DELTA_ICEBERG_DELTASHARING", + "TABLE_DELTASHARING_OPEN_DIR_BASED", + "TABLE_FOREIGN_DELTA_DELTASHARING", + "TABLE_FEATURE_STORE", + "TABLE_FEATURE_STORE_EXTERNAL", + "TABLE_STREAMING_LIVE_TABLE", + "TABLE_SYSTEM", + "TABLE_SYSTEM_DELTASHARING", + "TABLE_MATERIALIZED_VIEW", + "TABLE_INTERNAL", + "TABLE_FOREIGN_BIGQUERY", + "TABLE_FOREIGN_MYSQL", + "TABLE_FOREIGN_ORACLE", + "TABLE_FOREIGN_POSTGRESQL", + "TABLE_FOREIGN_SQLDW", + "TABLE_FOREIGN_REDSHIFT", + "TABLE_FOREIGN_SNOWFLAKE", + "TABLE_FOREIGN_SQLSERVER", + "TABLE_FOREIGN_SALESFORCE", + "TABLE_FOREIGN_SALESFORCE_DATA_CLOUD", + "TABLE_FOREIGN_SALESFORCE_DATA_CLOUD_FILE_SHARING", + "TABLE_FOREIGN_SALESFORCE_DATA_CLOUD_FILE_SHARING_VIEW", + "TABLE_FOREIGN_TERADATA", + "TABLE_FOREIGN_NETSUITE", + "TABLE_FOREIGN_DATABRICKS", + "TABLE_FOREIGN_WORKDAY_RAAS", + "TABLE_FOREIGN_HIVE_METASTORE", + "TABLE_FOREIGN_HIVE_METASTORE_MANAGED", + "TABLE_FOREIGN_HIVE_METASTORE_DBFS_MANAGED", + "TABLE_FOREIGN_HIVE_METASTORE_EXTERNAL", + "TABLE_FOREIGN_HIVE_METASTORE_DBFS_EXTERNAL", + "TABLE_FOREIGN_HIVE_METASTORE_VIEW", + "TABLE_FOREIGN_HIVE_METASTORE_DBFS_VIEW", + "TABLE_FOREIGN_HIVE_METASTORE_SHALLOW_CLONE_MANAGED", + "TABLE_FOREIGN_HIVE_METASTORE_DBFS_SHALLOW_CLONE_MANAGED", + "TABLE_FOREIGN_HIVE_METASTORE_SHALLOW_CLONE_EXTERNAL", + "TABLE_FOREIGN_HIVE_METASTORE_DBFS_SHALLOW_CLONE_EXTERNAL", + "TABLE_FOREIGN_MONGODB", + "TABLE_DELTA_UNIFORM_HUDI_EXTERNAL", + "TABLE_DELTA_UNIFORM_ICEBERG_EXTERNAL", + "TABLE_DELTA_UNIFORM_ICEBERG_FOREIGN_HIVE_METASTORE_EXTERNAL", + "TABLE_DELTA_UNIFORM_ICEBERG_FOREIGN_HIVE_METASTORE_MANAGED", + "TABLE_DELTA_UNIFORM_ICEBERG_FOREIGN_SNOWFLAKE", + "TABLE_DELTA_UNIFORM_ICEBERG_FOREIGN_DELTASHARING", + "TABLE_DELTA_UNIFORM_ICEBERG_EXTERNAL_DELTASHARING", + "TABLE_ICEBERG_UNIFORM_MANAGED", + "TABLE_DELTA_ICEBERG_MANAGED", + "TABLE_ONLINE_VECTOR_INDEX_REPLICA", + "TABLE_ONLINE_VECTOR_INDEX_DIRECT", + "TABLE_ONLINE_VIEW", + "TABLE_DB_STORAGE", + "TABLE_MANAGED_POSTGRESQL" + ], + "enum_launch_stages": { + "TABLE_DB_STORAGE": "GA", + "TABLE_DELTA": "GA", + "TABLE_DELTASHARING": "GA", + "TABLE_DELTASHARING_MUTABLE": "GA", + "TABLE_DELTASHARING_OPEN_DIR_BASED": "GA", + "TABLE_DELTA_EXTERNAL": "GA", + "TABLE_DELTA_ICEBERG_DELTASHARING": "GA", + "TABLE_DELTA_ICEBERG_MANAGED": "GA", + "TABLE_DELTA_UNIFORM_HUDI_EXTERNAL": "GA", + "TABLE_DELTA_UNIFORM_ICEBERG_EXTERNAL": "GA", + "TABLE_DELTA_UNIFORM_ICEBERG_EXTERNAL_DELTASHARING": "GA", + "TABLE_DELTA_UNIFORM_ICEBERG_FOREIGN_DELTASHARING": "GA", + "TABLE_DELTA_UNIFORM_ICEBERG_FOREIGN_HIVE_METASTORE_EXTERNAL": "GA", + "TABLE_DELTA_UNIFORM_ICEBERG_FOREIGN_HIVE_METASTORE_MANAGED": "GA", + "TABLE_DELTA_UNIFORM_ICEBERG_FOREIGN_SNOWFLAKE": "GA", + "TABLE_EXTERNAL": "GA", + "TABLE_FEATURE_STORE": "GA", + "TABLE_FEATURE_STORE_EXTERNAL": "GA", + "TABLE_FOREIGN_BIGQUERY": "GA", + "TABLE_FOREIGN_DATABRICKS": "GA", + "TABLE_FOREIGN_DELTASHARING": "GA", + "TABLE_FOREIGN_DELTA_DELTASHARING": "GA", + "TABLE_FOREIGN_HIVE_METASTORE": "GA", + "TABLE_FOREIGN_HIVE_METASTORE_DBFS_EXTERNAL": "GA", + "TABLE_FOREIGN_HIVE_METASTORE_DBFS_MANAGED": "GA", + "TABLE_FOREIGN_HIVE_METASTORE_DBFS_SHALLOW_CLONE_EXTERNAL": "GA", + "TABLE_FOREIGN_HIVE_METASTORE_DBFS_SHALLOW_CLONE_MANAGED": "GA", + "TABLE_FOREIGN_HIVE_METASTORE_DBFS_VIEW": "GA", + "TABLE_FOREIGN_HIVE_METASTORE_EXTERNAL": "GA", + "TABLE_FOREIGN_HIVE_METASTORE_MANAGED": "GA", + "TABLE_FOREIGN_HIVE_METASTORE_SHALLOW_CLONE_EXTERNAL": "GA", + "TABLE_FOREIGN_HIVE_METASTORE_SHALLOW_CLONE_MANAGED": "GA", + "TABLE_FOREIGN_HIVE_METASTORE_VIEW": "GA", + "TABLE_FOREIGN_MONGODB": "GA", + "TABLE_FOREIGN_MYSQL": "GA", + "TABLE_FOREIGN_NETSUITE": "GA", + "TABLE_FOREIGN_ORACLE": "GA", + "TABLE_FOREIGN_POSTGRESQL": "GA", + "TABLE_FOREIGN_REDSHIFT": "GA", + "TABLE_FOREIGN_SALESFORCE": "GA", + "TABLE_FOREIGN_SALESFORCE_DATA_CLOUD": "GA", + "TABLE_FOREIGN_SALESFORCE_DATA_CLOUD_FILE_SHARING": "GA", + "TABLE_FOREIGN_SALESFORCE_DATA_CLOUD_FILE_SHARING_VIEW": "GA", + "TABLE_FOREIGN_SNOWFLAKE": "GA", + "TABLE_FOREIGN_SQLDW": "GA", + "TABLE_FOREIGN_SQLSERVER": "GA", + "TABLE_FOREIGN_TERADATA": "GA", + "TABLE_FOREIGN_WORKDAY_RAAS": "GA", + "TABLE_ICEBERG_UNIFORM_MANAGED": "GA", + "TABLE_INTERNAL": "GA", + "TABLE_MANAGED_POSTGRESQL": "GA", + "TABLE_MATERIALIZED_VIEW": "GA", + "TABLE_MATERIALIZED_VIEW_DELTASHARING": "GA", + "TABLE_METRIC_VIEW": "GA", + "TABLE_METRIC_VIEW_DELTASHARING": "GA", + "TABLE_ONLINE_VECTOR_INDEX_DIRECT": "GA", + "TABLE_ONLINE_VECTOR_INDEX_REPLICA": "GA", + "TABLE_ONLINE_VIEW": "GA", + "TABLE_STANDARD": "GA", + "TABLE_STREAMING_LIVE_TABLE": "GA", + "TABLE_STREAMING_LIVE_TABLE_DELTASHARING": "GA", + "TABLE_SYSTEM": "GA", + "TABLE_SYSTEM_DELTASHARING": "GA", + "TABLE_VIEW": "GA", + "TABLE_VIEW_DELTASHARING": "GA" + } + }, + "catalog.SecurableKindManifest": { + "description": "Manifest of a specific securable kind.", + "fields": { + "assignable_privileges": { + "description": "Privileges that can be assigned to the securable.", + "launch_stage": "GA" + }, + "capabilities": { + "description": "A list of capabilities in the securable kind.", + "launch_stage": "GA" + }, + "options": { + "description": "Detailed specs of allowed options.", + "launch_stage": "GA" + }, + "securable_kind": { + "description": "Securable kind to get manifest of.", + "ref": "catalog.SecurableKind", + "launch_stage": "GA" + }, + "securable_type": { + "description": "Securable Type of the kind.", + "ref": "catalog.SecurableType", + "launch_stage": "GA" + } + } + }, + "catalog.SecurablePermissions": { + "fields": { + "permissions": { + "description": "List of requested Unity Catalog permissions.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "securable": { + "description": "The securable for which the access request destinations are being requested.", + "ref": "catalog.Securable", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.SecurableType": { + "description": "The type of Unity Catalog securable.", + "enum": [ + "CATALOG", + "SCHEMA", + "TABLE", + "STORAGE_CREDENTIAL", + "EXTERNAL_LOCATION", + "FUNCTION", + "SHARE", + "PROVIDER", + "RECIPIENT", + "CLEAN_ROOM", + "METASTORE", + "PIPELINE", + "VOLUME", + "CONNECTION", + "CREDENTIAL", + "EXTERNAL_METADATA", + "STAGING_TABLE", + "MODEL", + "MODEL_SERVICE", + "MCP_SERVICE", + "MODEL_PROVIDER_SERVICE", + "AGENT_SERVICE", + "SKILL" + ], + "enum_launch_stages": { + "AGENT_SERVICE": "PUBLIC_BETA", + "CATALOG": "GA", + "CLEAN_ROOM": "GA", + "CONNECTION": "GA", + "CREDENTIAL": "GA", + "EXTERNAL_LOCATION": "GA", + "EXTERNAL_METADATA": "GA", + "FUNCTION": "GA", + "MCP_SERVICE": "GA", + "METASTORE": "GA", + "MODEL": "GA", + "MODEL_PROVIDER_SERVICE": "GA", + "MODEL_SERVICE": "GA", + "PIPELINE": "GA", + "PROVIDER": "GA", + "RECIPIENT": "GA", + "SCHEMA": "GA", + "SHARE": "GA", + "SKILL": "PUBLIC_BETA", + "STAGING_TABLE": "GA", + "STORAGE_CREDENTIAL": "GA", + "TABLE": "GA", + "VOLUME": "GA" + } + }, + "catalog.SetArtifactAllowlist": { + "fields": { + "artifact_matchers": { + "description": "A list of allowed artifact match patterns.", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this artifact allowlist was set, in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "Username of the user who set the artifact allowlist.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "metastore_id": { + "description": "Unique identifier of parent metastore.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.SetRegisteredModelAliasRequest": { + "fields": { + "version_num": { + "description": "The version number of the model version to which the alias points", + "launch_stage": "GA" + } + } + }, + "catalog.Skill": { + "description": "A Skill is an agentskills.io bundle registered in Unity Catalog. Clients\ntransfer bundle bytes through the Files API. FinalizeSkill reads the uploaded\nSKILL.md and projects its frontmatter onto the Skill metadata.", + "fields": { + "bundle_name": { + "description": "Name from the most recently successfully finalized SKILL.md. It may differ\nfrom the final component of the Skill resource name. Unset until\nFinalizeSkill succeeds.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "comment": { + "description": "User-provided comment for the skill. Free-text, user-editable via\nUpdateSkill (listed in its `update_mask`). DISTINCT from `description`,\nwhich is the server-parsed, OUTPUT_ONLY SKILL.md frontmatter value: `comment`\nis the customer's own annotation and is preserved across bundle re-uploads.\nWhen `comment` is in the update mask, omitting it clears the field, while\nan explicitly empty string is retained.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "create_time": { + "description": "Time the skill was created.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "Creator identity.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "Description from the most recently successfully finalized SKILL.md. Unset\nuntil FinalizeSkill succeeds.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_owner": { + "description": "Owner of the skill.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "etag": { + "description": "Optimistic concurrency token returned on every read. To make an Update or\nDelete conditional, pass the last-read value in that request's `etag`\nfield. In REST responses, this value is a base64 string; URL-encode it when\nsetting the `etag` query parameter.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "finalize_time": { + "description": "Time of the most recent successful FinalizeSkill. Unset until one succeeds.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "metastore_id": { + "description": "Metastore hosting the skill.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`skill_id`; required and immutable on Update/Get/Delete.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "update_time": { + "description": "Time of the most recent Skill metadata mutation. Uploading bundle files\nalone does not change this value.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_by": { + "description": "Identity of the last updater.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "catalog.SpecialDestination": { + "enum": [ + "SPECIAL_DESTINATION_CATALOG_OWNER", + "SPECIAL_DESTINATION_EXTERNAL_LOCATION_OWNER", + "SPECIAL_DESTINATION_CONNECTION_OWNER", + "SPECIAL_DESTINATION_CREDENTIAL_OWNER", + "SPECIAL_DESTINATION_METASTORE_OWNER", + "SPECIAL_DESTINATION_SCHEMA_OWNER", + "SPECIAL_DESTINATION_TABLE_OWNER", + "SPECIAL_DESTINATION_VOLUME_OWNER", + "SPECIAL_DESTINATION_FUNCTION_OWNER", + "SPECIAL_DESTINATION_REGISTERED_MODEL_OWNER" + ], + "enum_launch_stages": { + "SPECIAL_DESTINATION_CATALOG_OWNER": "PUBLIC_PREVIEW", + "SPECIAL_DESTINATION_CONNECTION_OWNER": "PUBLIC_PREVIEW", + "SPECIAL_DESTINATION_CREDENTIAL_OWNER": "PUBLIC_PREVIEW", + "SPECIAL_DESTINATION_EXTERNAL_LOCATION_OWNER": "PUBLIC_PREVIEW", + "SPECIAL_DESTINATION_FUNCTION_OWNER": "PUBLIC_BETA", + "SPECIAL_DESTINATION_METASTORE_OWNER": "PUBLIC_PREVIEW", + "SPECIAL_DESTINATION_REGISTERED_MODEL_OWNER": "PUBLIC_BETA", + "SPECIAL_DESTINATION_SCHEMA_OWNER": "PUBLIC_BETA", + "SPECIAL_DESTINATION_TABLE_OWNER": "PUBLIC_BETA", + "SPECIAL_DESTINATION_VOLUME_OWNER": "PUBLIC_BETA" + } + }, + "catalog.SseEncryptionDetails": { + "description": "Server-Side Encryption properties for clients communicating with AWS s3.", + "fields": { + "algorithm": { + "description": "Sets the value of the 'x-amz-server-side-encryption' header in S3 request.", + "ref": "catalog.SseEncryptionDetailsAlgorithm", + "launch_stage": "GA" + }, + "aws_kms_key_arn": { + "description": "Optional. The ARN of the SSE-KMS key used with the S3 location, when algorithm = \"SSE-KMS\".\nSets the value of the 'x-amz-server-side-encryption-aws-kms-key-id' header.", + "launch_stage": "GA" + } + } + }, + "catalog.SseEncryptionDetailsAlgorithm": { + "enum": [ + "AWS_SSE_S3", + "AWS_SSE_KMS" + ], + "enum_launch_stages": { + "AWS_SSE_KMS": "GA", + "AWS_SSE_S3": "GA" + } + }, + "catalog.StorageCredentialInfo": { + "fields": { + "aws_iam_role": { + "description": "The AWS IAM role configuration.", + "ref": "catalog.AwsIamRoleResponse", + "launch_stage": "GA" + }, + "azure_managed_identity": { + "description": "The Azure managed identity configuration.", + "ref": "catalog.AzureManagedIdentityResponse", + "launch_stage": "GA" + }, + "azure_service_principal": { + "description": "The Azure service principal configuration.", + "ref": "catalog.AzureServicePrincipal", + "launch_stage": "GA" + }, + "cloudflare_api_token": { + "description": "The Cloudflare API token configuration.", + "ref": "catalog.CloudflareApiToken", + "launch_stage": "PRIVATE_PREVIEW" + }, + "comment": { + "description": "Comment associated with the credential.", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this credential was created, in epoch milliseconds.", + "launch_stage": "GA" + }, + "created_by": { + "description": "Username of credential creator.", + "launch_stage": "GA" + }, + "databricks_gcp_service_account": { + "description": "The Databricks managed GCP service account configuration.", + "ref": "catalog.DatabricksGcpServiceAccountResponse", + "launch_stage": "GA" + }, + "full_name": { + "description": "The full name of the credential.", + "launch_stage": "GA" + }, + "id": { + "description": "The unique identifier of the credential.", + "launch_stage": "GA" + }, + "isolation_mode": { + "description": "Whether the current securable is accessible from all workspaces or a\nspecific set of workspaces.", + "ref": "catalog.IsolationMode", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "Unique identifier of the parent metastore.", + "launch_stage": "GA" + }, + "name": { + "description": "The credential name. The name must be unique among storage and service\ncredentials within the metastore.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of current owner of credential.", + "launch_stage": "GA" + }, + "read_only": { + "description": "Whether the credential is usable only for read operations. Only applicable\nwhen purpose is **STORAGE**.", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Time at which this credential was last modified, in epoch milliseconds.", + "launch_stage": "GA" + }, + "updated_by": { + "description": "Username of user who last modified the credential.", + "launch_stage": "GA" + }, + "used_for_managed_storage": { + "description": "Whether this credential is the current metastore's root storage credential.\nOnly applicable when purpose is **STORAGE**.", + "launch_stage": "GA" + } + } + }, + "catalog.SummaryRequest": {}, + "catalog.SystemSchemaInfo": { + "fields": { + "schema": { + "description": "Name of the system schema.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "state": { + "description": "The current state of enablement for the system schema. An empty string means the system schema is available and ready for opt-in.\nPossible values: AVAILABLE | ENABLE_INITIALIZED | ENABLE_COMPLETED | DISABLE_INITIALIZED | UNAVAILABLE | MANAGED", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.SystemType": { + "enum": [ + "OTHER", + "TABLEAU", + "POWER_BI", + "LOOKER", + "KAFKA", + "SAP", + "ORACLE", + "SALESFORCE", + "WORKDAY", + "MYSQL", + "POSTGRESQL", + "MICROSOFT_SQL_SERVER", + "SERVICENOW", + "AMAZON_REDSHIFT", + "AZURE_SYNAPSE", + "SNOWFLAKE", + "GOOGLE_BIGQUERY", + "MICROSOFT_FABRIC", + "MONGODB", + "TERADATA", + "CONFLUENT", + "DATABRICKS", + "STREAM_NATIVE" + ], + "enum_launch_stages": { + "AMAZON_REDSHIFT": "PUBLIC_PREVIEW", + "AZURE_SYNAPSE": "PUBLIC_PREVIEW", + "CONFLUENT": "PUBLIC_PREVIEW", + "DATABRICKS": "PUBLIC_PREVIEW", + "GOOGLE_BIGQUERY": "PUBLIC_PREVIEW", + "KAFKA": "PUBLIC_PREVIEW", + "LOOKER": "PUBLIC_PREVIEW", + "MICROSOFT_FABRIC": "PUBLIC_PREVIEW", + "MICROSOFT_SQL_SERVER": "PUBLIC_PREVIEW", + "MONGODB": "PUBLIC_PREVIEW", + "MYSQL": "PUBLIC_PREVIEW", + "ORACLE": "PUBLIC_PREVIEW", + "OTHER": "PUBLIC_PREVIEW", + "POSTGRESQL": "PUBLIC_PREVIEW", + "POWER_BI": "PUBLIC_PREVIEW", + "SALESFORCE": "PUBLIC_PREVIEW", + "SAP": "PUBLIC_PREVIEW", + "SERVICENOW": "PUBLIC_PREVIEW", + "SNOWFLAKE": "PUBLIC_PREVIEW", + "STREAM_NATIVE": "PUBLIC_PREVIEW", + "TABLEAU": "PUBLIC_PREVIEW", + "TERADATA": "PUBLIC_PREVIEW", + "WORKDAY": "PUBLIC_PREVIEW" + } + }, + "catalog.TableConstraint": { + "description": "A table constraint, as defined by *one* of the following fields being set:\n__primary_key_constraint__, __foreign_key_constraint__, __named_table_constraint__.", + "fields": { + "foreign_key_constraint": { + "ref": "catalog.ForeignKeyConstraint", + "launch_stage": "GA" + }, + "named_table_constraint": { + "ref": "catalog.NamedTableConstraint", + "launch_stage": "GA" + }, + "primary_key_constraint": { + "ref": "catalog.PrimaryKeyConstraint", + "launch_stage": "GA" + } + } + }, + "catalog.TableDependency": { + "description": "A table that is dependent on a SQL object.", + "fields": { + "table_full_name": { + "description": "Full name of the dependent table, in the form of __catalog_name__.__schema_name__.__table_name__.", + "launch_stage": "GA" + } + } + }, + "catalog.TableExistsResponse": { + "fields": { + "table_exists": { + "description": "Whether the table exists or not.", + "launch_stage": "GA" + } + } + }, + "catalog.TableInfo": { + "fields": { + "access_point": { + "description": "The AWS access point to use when accesing s3 for this external location.", + "launch_stage": "GA" + }, + "browse_only": { + "description": "Indicates whether the principal is limited to retrieving metadata for the associated object through the BROWSE privilege when include_browse is enabled in the request.", + "launch_stage": "GA" + }, + "catalog_name": { + "description": "Name of parent catalog.", + "launch_stage": "GA" + }, + "columns": { + "description": "The array of __ColumnInfo__ definitions of the table's columns.", + "launch_stage": "GA" + }, + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this table was created, in epoch milliseconds.", + "launch_stage": "GA" + }, + "created_by": { + "description": "Username of table creator.", + "launch_stage": "GA" + }, + "data_access_configuration_id": { + "description": "Unique ID of the Data Access Configuration to use with the table data.", + "deprecated": true, + "launch_stage": "GA" + }, + "data_source_format": { + "ref": "catalog.DataSourceFormat", + "launch_stage": "GA" + }, + "deleted_at": { + "description": "Time at which this table was deleted, in epoch milliseconds. Field is omitted if table is not deleted.", + "launch_stage": "GA" + }, + "delta_runtime_properties_kvpairs": { + "description": "Information pertaining to current state of the delta table.", + "ref": "catalog.DeltaRuntimePropertiesKvPairs", + "launch_stage": "GA" + }, + "effective_predictive_optimization_flag": { + "ref": "catalog.EffectivePredictiveOptimizationFlag", + "launch_stage": "GA" + }, + "enable_predictive_optimization": { + "ref": "catalog.EnablePredictiveOptimization", + "launch_stage": "GA" + }, + "encryption_details": { + "ref": "catalog.EncryptionDetails", + "launch_stage": "PRIVATE_PREVIEW" + }, + "full_name": { + "description": "Full name of table, in form of __catalog_name__.__schema_name__.__table_name__", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "Unique identifier of parent metastore.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of table, relative to parent schema.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of current owner of table.", + "launch_stage": "GA" + }, + "pipeline_id": { + "description": "The pipeline ID of the table. Applicable for tables created by pipelines (Materialized View, Streaming Table, etc.).", + "launch_stage": "GA" + }, + "properties": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + }, + "row_filter": { + "ref": "catalog.TableRowFilter", + "launch_stage": "GA" + }, + "schema_name": { + "description": "Name of parent schema relative to its parent catalog.", + "launch_stage": "GA" + }, + "securable_kind_manifest": { + "description": "SecurableKindManifest of table, including capabilities the table has.", + "ref": "catalog.SecurableKindManifest", + "launch_stage": "GA" + }, + "sql_path": { + "description": "List of schemes whose objects can be referenced without qualification.", + "launch_stage": "GA" + }, + "storage_credential_name": { + "description": "Name of the storage credential, when a storage credential is configured for use with this table.", + "launch_stage": "GA" + }, + "storage_location": { + "description": "Storage root URL for table (for **MANAGED**, **EXTERNAL** tables).", + "launch_stage": "GA" + }, + "table_constraints": { + "description": "List of table constraints. Note: this field is not set in the output of the __listTables__ API.", + "launch_stage": "GA" + }, + "table_id": { + "description": "The unique identifier of the table.", + "launch_stage": "GA" + }, + "table_type": { + "ref": "catalog.TableType", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Time at which this table was last modified, in epoch milliseconds.", + "launch_stage": "GA" + }, + "updated_by": { + "description": "Username of user who last modified the table.", + "launch_stage": "GA" + }, + "view_definition": { + "description": "View definition SQL (when __table_type__ is **VIEW**, **MATERIALIZED_VIEW**, or **STREAMING_TABLE**)", + "launch_stage": "GA" + }, + "view_dependencies": { + "description": "View dependencies (when table_type == **VIEW** or **MATERIALIZED_VIEW**, **STREAMING_TABLE**)\n- when DependencyList is None, the dependency is not provided;\n- when DependencyList is an empty list, the dependency is provided but is empty;\n- when DependencyList is not an empty list, dependencies are provided and recorded.\nNote: this field is not set in the output of the __listTables__ API.", + "ref": "catalog.DependencyList", + "launch_stage": "GA" + } + } + }, + "catalog.TableOperation": { + "enum": [ + "READ", + "READ_WRITE" + ], + "enum_launch_stages": { + "READ": "GA", + "READ_WRITE": "GA" + } + }, + "catalog.TableRowFilter": { + "fields": { + "function_name": { + "description": "The full name of the row filter SQL UDF.", + "launch_stage": "GA" + }, + "input_arguments": { + "description": "The list of table columns or literals to be passed as additional arguments to a row filter\nfunction, carrying the type (column reference vs constant literal) of each argument.\nDeprecated: use input_column_names instead.", + "deprecated": true, + "launch_stage": "GA" + }, + "input_column_names": { + "description": "The list of table columns to be passed as input to the row filter function. The column types\nshould match the types of the filter function arguments.", + "launch_stage": "GA" + } + } + }, + "catalog.TableSummary": { + "fields": { + "full_name": { + "description": "The full name of the table.", + "launch_stage": "GA" + }, + "securable_kind_manifest": { + "description": "SecurableKindManifest of table, including capabilities the table has.", + "ref": "catalog.SecurableKindManifest", + "launch_stage": "GA" + }, + "table_type": { + "ref": "catalog.TableType", + "launch_stage": "GA" + } + } + }, + "catalog.TableType": { + "enum": [ + "MANAGED", + "EXTERNAL", + "VIEW", + "MATERIALIZED_VIEW", + "STREAMING_TABLE", + "MANAGED_SHALLOW_CLONE", + "FOREIGN", + "EXTERNAL_SHALLOW_CLONE", + "METRIC_VIEW" + ], + "enum_launch_stages": { + "EXTERNAL": "GA", + "EXTERNAL_SHALLOW_CLONE": "GA", + "FOREIGN": "GA", + "MANAGED": "GA", + "MANAGED_SHALLOW_CLONE": "GA", + "MATERIALIZED_VIEW": "GA", + "METRIC_VIEW": "GA", + "STREAMING_TABLE": "GA", + "VIEW": "GA" + } + }, + "catalog.TagAssignmentSourceType": { + "description": "Enum representing the source type of a tag assignment", + "enum": [ + "TAG_ASSIGNMENT_SOURCE_TYPE_SYSTEM_DATA_CLASSIFICATION" + ], + "enum_launch_stages": { + "TAG_ASSIGNMENT_SOURCE_TYPE_SYSTEM_DATA_CLASSIFICATION": "GA" + } + }, + "catalog.TagIntrospectionExpression": { + "description": "An expression that introspects tags at query time.", + "fields": { + "column_tag_value": { + "description": "Extracts the value of a column-level tag.", + "ref": "catalog.ColumnTagValueExtraction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "tag_value": { + "description": "Extracts the value of a securable-level tag.", + "ref": "catalog.TagValueExtraction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.TagKeyValue": { + "fields": { + "key": { + "description": "name of the tag", + "launch_stage": "GA" + }, + "value": { + "description": "value of the tag associated with the key, could be optional", + "launch_stage": "GA" + } + } + }, + "catalog.TagValueExtraction": { + "description": "Extracts the value of a securable-level tag: get_tag_value(\"tagKey\").", + "fields": { + "tag_key": { + "description": "1024 matches the max_length on FunctionArgument.constant above.", + "launch_stage": "GA" + } + } + }, + "catalog.TemporaryCredentials": { + "fields": { + "aws_temp_credentials": { + "ref": "catalog.AwsCredentials", + "launch_stage": "GA" + }, + "azure_aad": { + "ref": "catalog.AzureActiveDirectoryToken", + "launch_stage": "GA" + }, + "expiration_time": { + "description": "Server time when the credential will expire, in epoch milliseconds.\nThe API client is advised to cache the credential given this expiration time.", + "launch_stage": "GA" + }, + "gcp_oauth_token": { + "ref": "catalog.GcpOauthToken", + "launch_stage": "GA" + }, + "r2_temp_credentials": { + "ref": "catalog.R2Credentials", + "launch_stage": "GA" + } + } + }, + "catalog.TriggeredUpdateStatus": { + "description": "Detailed status of an online table. Shown if the online table is in the ONLINE_TRIGGERED_UPDATE\nor the ONLINE_NO_PENDING_UPDATE state.", + "fields": { + "last_processed_commit_version": { + "description": "The last source table Delta version that was synced to the online table. Note that this Delta\nversion may not be completely synced to the online table yet.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "timestamp": { + "description": "The timestamp of the last time any data was synchronized from the source table to the online\ntable.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "triggered_update_progress": { + "description": "Progress of the active data synchronization pipeline.", + "ref": "catalog.PipelineProgress", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.UnassignRequest": { + "fields": { + "metastore_id": { + "description": "Query for the ID of the metastore to delete.", + "launch_stage": "GA" + } + } + }, + "catalog.UnassignResponse": {}, + "catalog.UpdateAccessRequestDestinationsRequest": { + "fields": { + "access_request_destinations": { + "description": "The access request destinations to assign to the securable.\nFor each destination, a **destination_id** and **destination_type** must be defined.", + "ref": "catalog.AccessRequestDestinations", + "launch_stage": "PUBLIC_PREVIEW" + }, + "update_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.UpdateAccountsMetastore": { + "fields": { + "delta_sharing_organization_name": { + "description": "The organization name of a Delta Sharing entity, to be used in Databricks-to-Databricks Delta Sharing as the official name.", + "launch_stage": "GA" + }, + "delta_sharing_recipient_token_lifetime_in_seconds": { + "description": "The lifetime of delta sharing recipient token in seconds.", + "launch_stage": "GA" + }, + "delta_sharing_scope": { + "description": "The scope of Delta Sharing enabled for the metastore.", + "ref": "catalog.DeltaSharingScopeEnum", + "launch_stage": "GA" + }, + "external_access_enabled": { + "description": "Whether to allow non-DBR clients to directly access entities under the metastore.", + "launch_stage": "GA" + }, + "owner": { + "description": "The owner of the metastore.", + "launch_stage": "GA" + }, + "privilege_model_version": { + "description": "Privilege model version of the metastore, of the form `major.minor` (e.g., `1.0`).", + "launch_stage": "GA" + }, + "storage_root_credential_id": { + "description": "UUID of storage credential to access the metastore storage_root.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateAccountsStorageCredential": { + "fields": { + "aws_iam_role": { + "description": "The AWS IAM role configuration.", + "ref": "catalog.AwsIamRoleRequest", + "launch_stage": "GA" + }, + "azure_managed_identity": { + "description": "The Azure managed identity configuration.", + "ref": "catalog.AzureManagedIdentityResponse", + "launch_stage": "GA" + }, + "azure_service_principal": { + "description": "The Azure service principal configuration.", + "ref": "catalog.AzureServicePrincipal", + "launch_stage": "GA" + }, + "cloudflare_api_token": { + "description": "The Cloudflare API token configuration.", + "ref": "catalog.CloudflareApiToken", + "launch_stage": "PRIVATE_PREVIEW" + }, + "comment": { + "description": "Comment associated with the credential.", + "launch_stage": "GA" + }, + "databricks_gcp_service_account": { + "description": "The Databricks managed GCP service account configuration.", + "ref": "catalog.DatabricksGcpServiceAccountRequest", + "launch_stage": "GA" + }, + "isolation_mode": { + "description": "Whether the current securable is accessible from all workspaces or a\nspecific set of workspaces.", + "ref": "catalog.IsolationMode", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of current owner of credential.", + "launch_stage": "GA" + }, + "read_only": { + "description": "Whether the credential is usable only for read operations. Only applicable\nwhen purpose is **STORAGE**.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateAssignmentResponse": {}, + "catalog.UpdateCatalog": { + "fields": { + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "custom_max_retention_hours": { + "description": "Custom maximum retention period in hours for the catalog", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "enable_predictive_optimization": { + "description": "Whether predictive optimization should be enabled for this object and objects under it.", + "ref": "catalog.EnablePredictiveOptimization", + "launch_stage": "GA" + }, + "isolation_mode": { + "description": "Whether the current securable is accessible from all workspaces or a specific set of workspaces.", + "ref": "catalog.CatalogIsolationMode", + "launch_stage": "GA" + }, + "managed_encryption_settings": { + "description": "Control CMK encryption for managed catalog data", + "ref": "catalog.EncryptionSettings", + "launch_stage": "GA" + }, + "new_name": { + "description": "New name for the catalog.", + "launch_stage": "GA" + }, + "options": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of current owner of catalog.", + "launch_stage": "GA" + }, + "properties": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateCatalogWorkspaceBindingsResponse": { + "fields": { + "workspaces": { + "description": "A list of workspace IDs", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateConnection": { + "fields": { + "environment_settings": { + "description": "[Create,Update:OPT] Connection environment settings as EnvironmentSettings object.", + "ref": "catalog.EnvironmentSettings", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "new_name": { + "description": "New name for the connection.", + "launch_stage": "GA" + }, + "options": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of current owner of the connection.", + "launch_stage": "GA" + }, + "secrets": { + "description": "A map of option names to UC Secret references. Keys are connection option names\n(same as in OptionsKVPairs) and values are UC Secret fully qualified names.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.UpdateCredentialRequest": { + "fields": { + "aws_iam_role": { + "description": "The AWS IAM role configuration.", + "ref": "catalog.AwsIamRole", + "launch_stage": "GA" + }, + "azure_managed_identity": { + "description": "The Azure managed identity configuration.", + "ref": "catalog.AzureManagedIdentity", + "launch_stage": "GA" + }, + "azure_service_principal": { + "description": "The Azure service principal configuration.", + "ref": "catalog.AzureServicePrincipal", + "launch_stage": "GA" + }, + "comment": { + "description": "Comment associated with the credential.", + "launch_stage": "GA" + }, + "databricks_gcp_service_account": { + "description": "The Databricks managed GCP service account configuration.", + "ref": "catalog.DatabricksGcpServiceAccount", + "launch_stage": "GA" + }, + "force": { + "description": "Force an update even if there are dependent services (when purpose is\n**SERVICE**) or dependent external locations and external tables (when\npurpose is **STORAGE**).", + "launch_stage": "GA" + }, + "isolation_mode": { + "description": "Whether the current securable is accessible from all workspaces or a\nspecific set of workspaces.", + "ref": "catalog.IsolationMode", + "launch_stage": "GA" + }, + "new_name": { + "description": "New name of credential.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of current owner of credential.", + "launch_stage": "GA" + }, + "read_only": { + "description": "Whether the credential is usable only for read operations. Only applicable\nwhen purpose is **STORAGE**.", + "launch_stage": "GA" + }, + "skip_validation": { + "description": "Supply true to this argument to skip validation of the updated credential.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateEntityTagAssignmentRequest": { + "fields": { + "tag_assignment": { + "ref": "catalog.EntityTagAssignment", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateExternalLineageRelationshipRequest": { + "fields": { + "external_lineage_relationship": { + "ref": "catalog.UpdateRequestExternalLineage", + "launch_stage": "PUBLIC_PREVIEW" + }, + "update_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.UpdateExternalLocation": { + "fields": { + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "credential_name": { + "description": "Name of the storage credential used with this location.", + "launch_stage": "GA" + }, + "effective_enable_file_events": { + "description": "The effective value of `enable_file_events` after applying server-side defaults.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_file_event_queue": { + "description": "The effective file event queue configuration after applying server-side defaults.\nAlways populated when a queue is provisioned, regardless of whether the user explicitly\nset `enable_file_events`. Use this field instead of `file_event_queue` for reading\nthe actual queue state.", + "ref": "catalog.FileEventQueue", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "enable_file_events": { + "description": "Whether to enable file events on this external location. Default to `true`. Set to `false` to disable file events.\nThe actual applied value may differ due to server-side defaults; check `effective_enable_file_events` for the effective state.", + "launch_stage": "GA" + }, + "encryption_details": { + "ref": "catalog.EncryptionDetails", + "launch_stage": "GA" + }, + "fallback": { + "description": "Indicates whether fallback mode is enabled for this external location. When fallback mode is enabled, the access to the location falls back to cluster credentials if UC credentials are not sufficient.", + "launch_stage": "GA" + }, + "file_event_queue": { + "description": "File event queue settings. If `enable_file_events` is not `false`, must be defined and have exactly one of the documented properties.", + "ref": "catalog.FileEventQueue", + "launch_stage": "GA" + }, + "force": { + "description": "Force update even if changing url invalidates dependent external tables or mounts.", + "launch_stage": "GA" + }, + "isolation_mode": { + "ref": "catalog.IsolationMode", + "launch_stage": "GA" + }, + "new_name": { + "description": "New name for the external location.", + "launch_stage": "GA" + }, + "owner": { + "description": "The owner of the external location.", + "launch_stage": "GA" + }, + "read_only": { + "description": "Indicates whether the external location is read-only.", + "launch_stage": "GA" + }, + "skip_validation": { + "description": "Skips validation of the storage credential associated with the external location.", + "launch_stage": "GA" + }, + "url": { + "description": "Path URL of the external location.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateExternalMetadataRequest": { + "fields": { + "external_metadata": { + "ref": "catalog.ExternalMetadata", + "launch_stage": "PUBLIC_PREVIEW" + }, + "update_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.UpdateFunction": { + "fields": { + "owner": { + "description": "Username of current owner of the function.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateMcpServiceRequest": { + "fields": { + "etag": { + "description": "Optimistic concurrency token from the most recent read. When set, the\nupdate succeeds only if the resource has not changed. Leave unset for an\nunconditional update. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "mcp_service": { + "description": "The MCP service with the updated field values. `name` identifies the\nresource (`mcp-services/{catalog}.{schema}.{mcp_service}`); only fields\nlisted in `update_mask` are applied.", + "ref": "catalog.McpService", + "launch_stage": "GA" + }, + "update_mask": { + "description": "Fields to update. Use `config` to replace the entire configuration. The\nreplacement must include every required field; any optional field you omit\nis cleared. To preserve sibling fields, use one or more granular paths:\n`comment`, `config.source_connection.name`, `config.include_tool_selectors`, or\n`config.rate_limits`.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateMetastore": { + "fields": { + "delta_sharing_organization_name": { + "description": "The organization name of a Delta Sharing entity, to be used in Databricks-to-Databricks Delta Sharing as the official name.", + "launch_stage": "GA" + }, + "delta_sharing_recipient_token_lifetime_in_seconds": { + "description": "The lifetime of delta sharing recipient token in seconds.", + "launch_stage": "GA" + }, + "delta_sharing_scope": { + "description": "The scope of Delta Sharing enabled for the metastore.", + "ref": "catalog.DeltaSharingScopeEnum", + "launch_stage": "GA" + }, + "external_access_enabled": { + "description": "Whether to allow non-DBR clients to directly access entities under the metastore.", + "launch_stage": "GA" + }, + "new_name": { + "description": "New name for the metastore.", + "launch_stage": "GA" + }, + "owner": { + "description": "The owner of the metastore.", + "launch_stage": "GA" + }, + "privilege_model_version": { + "description": "Privilege model version of the metastore, of the form `major.minor` (e.g., `1.0`).", + "launch_stage": "GA" + }, + "storage_root_credential_id": { + "description": "UUID of storage credential to access the metastore storage_root.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateMetastoreAssignment": { + "fields": { + "default_catalog_name": { + "description": "The name of the default catalog in the metastore.\nThis field is deprecated. Please use \"Default Namespace API\" to\nconfigure the default catalog for a Databricks workspace.", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "The unique ID of the metastore.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateModelProviderServiceRequest": { + "fields": { + "etag": { + "description": "Optimistic concurrency token from the most recent read. When set, the\nupdate succeeds only if the resource has not changed. Leave unset for an\nunconditional update. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "model_provider_service": { + "description": "The model provider service with the updated field values. `name`\nidentifies the resource\n(`model-provider-services/{catalog}.{schema}.{model_provider_service}`);\nonly fields listed in `update_mask` are applied.", + "ref": "catalog.ModelProviderService", + "launch_stage": "GA" + }, + "update_mask": { + "description": "Fields to update. Use `config` to replace the entire configuration. The\nreplacement must include every required field; any optional field you omit\nis cleared. To preserve sibling fields, use one or more granular paths:\n`comment`; `config.provider` to replace the active provider-specific value\n(for example, `config.openai`; the mask path remains `config.provider`);\n`config.allow_all_targets`, `config.targets`, `config.forward_headers`,\n`config.forward_query_parameters`, `config.forward_unmanaged_paths`,\n`config.rate_limits`, `config.pricing.default_discount_basis_points`, or\n`config.inference_table`. For a pricing update, an explicitly empty `pricing`\nobject clears the discount but retains the object; omitting `pricing` clears\nit. `config.pricing` is not a supported mask path. The provider type is\nimmutable. A `config` or `config.provider` replacement that carries no\nauthentication material preserves the existing authentication binding;\ninput-only plaintext does not need to be read back and re-sent.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateModelServiceRequest": { + "fields": { + "etag": { + "description": "Optimistic concurrency token from the most recent read. When set, the\nupdate succeeds only if the resource has not changed. Leave unset for an\nunconditional update. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "model_service": { + "description": "The model service with the updated field values. `name` identifies the\nresource (`model-services/{catalog}.{schema}.{model_service}`); only\nfields listed in `update_mask` are applied.", + "ref": "catalog.ModelService", + "launch_stage": "GA" + }, + "update_mask": { + "description": "Fields to update. Use `config` to replace the entire configuration. The\nreplacement must include every required field; any optional field you omit\nis cleared. To preserve sibling fields, use one or more granular paths:\n`comment`, `config.routing.destinations`,\n`config.routing.fallback.destinations`,\n`config.rate_limits`, or `config.inference_table`. Intermediate paths such\nas `config.routing` and `config.routing.fallback` are not supported.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateModelVersionRequest": { + "fields": { + "aliases": { + "description": "List of aliases associated with the model version", + "launch_stage": "GA" + }, + "catalog_name": { + "description": "The name of the catalog containing the model version", + "launch_stage": "GA" + }, + "comment": { + "description": "The comment attached to the model version", + "launch_stage": "GA" + }, + "created_at": { + "launch_stage": "GA" + }, + "created_by": { + "description": "The identifier of the user who created the model version", + "launch_stage": "GA" + }, + "id": { + "description": "The unique identifier of the model version", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "The unique identifier of the metastore containing the model version", + "launch_stage": "GA" + }, + "model_name": { + "description": "The name of the parent registered model of the model version, relative to parent schema", + "launch_stage": "GA" + }, + "model_version_dependencies": { + "description": "Model version dependencies, for feature-store packaged models", + "ref": "catalog.DependencyList", + "launch_stage": "GA" + }, + "run_id": { + "description": "MLflow run ID used when creating the model version, if ``source`` was generated by an\nexperiment run stored in an MLflow tracking server", + "launch_stage": "GA" + }, + "run_workspace_id": { + "description": "ID of the Databricks workspace containing the MLflow run that generated this model\nversion, if applicable", + "launch_stage": "GA" + }, + "schema_name": { + "description": "The name of the schema containing the model version, relative to parent catalog", + "launch_stage": "GA" + }, + "source": { + "description": "URI indicating the location of the source artifacts (files) for the model version", + "launch_stage": "GA" + }, + "status": { + "description": "Current status of the model version. Newly created model versions start in\nPENDING_REGISTRATION status, then move to READY status once the model version files are uploaded and\nthe model version is finalized. Only model versions in READY status can be loaded for inference or\nserved.", + "ref": "catalog.ModelVersionInfoStatus", + "launch_stage": "GA" + }, + "storage_location": { + "description": "The storage location on the cloud under which model version data files are stored", + "launch_stage": "GA" + }, + "updated_at": { + "launch_stage": "GA" + }, + "updated_by": { + "description": "The identifier of the user who updated the model version last time", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateMonitor": { + "fields": { + "baseline_table_name": { + "description": "[Create:OPT Update:OPT] Baseline table name.\nBaseline data is used to compute drift from the data in the monitored `table_name`.\nThe baseline table and the monitored table shall have the same schema.", + "launch_stage": "GA" + }, + "custom_metrics": { + "description": "[Create:OPT Update:OPT] Custom metrics.", + "launch_stage": "GA" + }, + "dashboard_id": { + "description": "[Create:ERR Update:OPT] Id of dashboard that visualizes the computed metrics.\nThis can be empty if the monitor is in PENDING state.", + "launch_stage": "GA" + }, + "data_classification_config": { + "description": "[Create:OPT Update:OPT] Data classification related config.", + "ref": "catalog.MonitorDataClassificationConfig", + "launch_stage": "PRIVATE_PREVIEW" + }, + "inference_log": { + "ref": "catalog.MonitorInferenceLog", + "launch_stage": "GA" + }, + "latest_monitor_failure_msg": { + "description": "[Create:ERR Update:IGN] The latest error message for a monitor failure.", + "launch_stage": "GA" + }, + "notifications": { + "description": "[Create:OPT Update:OPT] Field for specifying notification settings.", + "ref": "catalog.MonitorNotifications", + "launch_stage": "GA" + }, + "output_schema_name": { + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "launch_stage": "GA" + }, + "schedule": { + "description": "[Create:OPT Update:OPT] The monitor schedule.", + "ref": "catalog.MonitorCronSchedule", + "launch_stage": "GA" + }, + "slicing_exprs": { + "description": "[Create:OPT Update:OPT] List of column expressions to slice data with for targeted analysis. The data is grouped by\neach expression independently, resulting in a separate slice for each predicate and its\ncomplements. For example `slicing_exprs=[“col_1”, “col_2 \u003e 10”]` will generate the following\nslices: two slices for `col_2 \u003e 10` (True and False), and one slice per unique value in\n`col1`. For high-cardinality columns, only the top 100 unique values by frequency will\ngenerate slices.", + "launch_stage": "GA" + }, + "snapshot": { + "description": "Configuration for monitoring snapshot tables.", + "ref": "catalog.MonitorSnapshot", + "launch_stage": "GA" + }, + "time_series": { + "description": "Configuration for monitoring time series tables.", + "ref": "catalog.MonitorTimeSeries", + "launch_stage": "GA" + } + } + }, + "catalog.UpdatePermissions": { + "fields": { + "changes": { + "description": "Array of permissions change objects.", + "launch_stage": "GA" + }, + "omit_permissions_in_response": { + "description": "Optional, default false. Specifies whether all the permissions should be returned in the response.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.UpdatePermissionsResponse": { + "fields": { + "privilege_assignments": { + "description": "The privileges assigned to each principal", + "launch_stage": "GA" + } + } + }, + "catalog.UpdatePolicyRequest": { + "fields": { + "policy_info": { + "description": "Optional fields to update. This is the request body for updating a policy.\nUse `update_mask` field to specify which fields in the request is to be updated.\n- If `update_mask` is empty or \"*\", all specified fields will be updated.\n- If `update_mask` is specified, only the fields specified in the `update_mask` will be updated.\nIf a field is specified in `update_mask` and not set in the request, the field will be cleared.\nUsers can use the update mask to explicitly unset optional fields such as\n`exception_principals` and `when_condition`.", + "ref": "catalog.PolicyInfo", + "launch_stage": "GA" + }, + "update_mask": { + "description": "Optional. The update mask field for specifying user intentions on which\nfields to update in the request.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "catalog.UpdateRegisteredModelRequest": { + "fields": { + "aliases": { + "description": "List of aliases associated with the registered model", + "launch_stage": "GA" + }, + "browse_only": { + "description": "Indicates whether the principal is limited to retrieving metadata for the associated object through the BROWSE privilege when include_browse is enabled in the request.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "catalog_name": { + "description": "The name of the catalog where the schema and the registered model reside", + "launch_stage": "GA" + }, + "comment": { + "description": "The comment attached to the registered model", + "launch_stage": "GA" + }, + "created_at": { + "description": "Creation timestamp of the registered model in milliseconds since the Unix epoch", + "launch_stage": "GA" + }, + "created_by": { + "description": "The identifier of the user who created the registered model", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "The unique identifier of the metastore", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the registered model", + "launch_stage": "GA" + }, + "new_name": { + "description": "New name for the registered model.", + "launch_stage": "GA" + }, + "owner": { + "description": "The identifier of the user who owns the registered model", + "launch_stage": "GA" + }, + "schema_name": { + "description": "The name of the schema where the registered model resides", + "launch_stage": "GA" + }, + "storage_location": { + "description": "The storage location on the cloud under which model version data files are stored", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Last-update timestamp of the registered model in milliseconds since the Unix epoch", + "launch_stage": "GA" + }, + "updated_by": { + "description": "The identifier of the user who updated the registered model last time", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateRequestExternalLineage": { + "fields": { + "columns": { + "description": "List of column relationships between source and target objects.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "id": { + "description": "Unique identifier of the external lineage relationship.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "properties": { + "description": "Key-value properties associated with the external lineage relationship.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "source": { + "description": "Source object of the external lineage relationship.", + "ref": "catalog.ExternalLineageObject", + "launch_stage": "PUBLIC_PREVIEW" + }, + "target": { + "description": "Target object of the external lineage relationship.", + "ref": "catalog.ExternalLineageObject", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "catalog.UpdateResponse": {}, + "catalog.UpdateSchema": { + "fields": { + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "custom_max_retention_hours": { + "description": "Custom maximum retention period in hours for the schema.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "enable_predictive_optimization": { + "description": "Whether predictive optimization should be enabled for this object and objects under it.", + "ref": "catalog.EnablePredictiveOptimization", + "launch_stage": "GA" + }, + "new_name": { + "description": "New name for the schema.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of current owner of schema.", + "launch_stage": "GA" + }, + "properties": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateSecretRequest": { + "fields": { + "secret": { + "description": "The secret object containing the fields to update. Only fields specified in **update_mask**\nwill be updated.", + "ref": "catalog.Secret", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The field mask specifying which fields of the secret to update.\n- If **update_mask** is **\"*\"**, all fields specified in **secret** are updated.\n- If **update_mask** specifies one or more fields, only those fields are updated.\nEach specified field must be set in **secret**.\nSupported fields: **value**, **comment**, **owner**, **expire_time**. To change the secret\nname, delete and recreate the secret.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateSkillRequest": { + "fields": { + "etag": { + "description": "Optimistic concurrency token from the most recent read. When set, the\nupdate succeeds only if the resource has not changed. Leave unset for an\nunconditional update. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "skill": { + "description": "The skill with the updated field values. `name` identifies the resource\n(`skills/{catalog}.{schema}.{skill}`); only fields listed in `update_mask`\nare applied.", + "ref": "catalog.Skill", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Fields to update; validated against `skill`. REQUIRED, matching the sibling\nUpdate RPCs. `comment` is the only mutable field.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "catalog.UpdateStorageCredential": { + "fields": { + "aws_iam_role": { + "description": "The AWS IAM role configuration.", + "ref": "catalog.AwsIamRoleRequest", + "launch_stage": "GA" + }, + "azure_managed_identity": { + "description": "The Azure managed identity configuration.", + "ref": "catalog.AzureManagedIdentityResponse", + "launch_stage": "GA" + }, + "azure_service_principal": { + "description": "The Azure service principal configuration.", + "ref": "catalog.AzureServicePrincipal", + "launch_stage": "GA" + }, + "cloudflare_api_token": { + "description": "The Cloudflare API token configuration.", + "ref": "catalog.CloudflareApiToken", + "launch_stage": "PRIVATE_PREVIEW" + }, + "comment": { + "description": "Comment associated with the credential.", + "launch_stage": "GA" + }, + "databricks_gcp_service_account": { + "description": "The Databricks managed GCP service account configuration.", + "ref": "catalog.DatabricksGcpServiceAccountRequest", + "launch_stage": "GA" + }, + "force": { + "description": "Force update even if there are dependent external locations or external\ntables.", + "launch_stage": "GA" + }, + "isolation_mode": { + "description": "Whether the current securable is accessible from all workspaces or a\nspecific set of workspaces.", + "ref": "catalog.IsolationMode", + "launch_stage": "GA" + }, + "new_name": { + "description": "New name for the storage credential.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of current owner of credential.", + "launch_stage": "GA" + }, + "read_only": { + "description": "Whether the credential is usable only for read operations. Only applicable\nwhen purpose is **STORAGE**.", + "launch_stage": "GA" + }, + "skip_validation": { + "description": "Supplying true to this argument skips validation of the updated credential.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateTableRequest": { + "fields": { + "owner": { + "description": "Username of current owner of table.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "catalog.UpdateVolumeRequestContent": { + "fields": { + "comment": { + "description": "The comment attached to the volume", + "launch_stage": "GA" + }, + "new_name": { + "description": "New name for the volume.", + "launch_stage": "GA" + }, + "owner": { + "description": "The identifier of the user who owns the volume", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateWorkspaceBindings": { + "fields": { + "assign_workspaces": { + "description": "A list of workspace IDs.", + "launch_stage": "GA" + }, + "unassign_workspaces": { + "description": "A list of workspace IDs.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateWorkspaceBindingsParameters": { + "fields": { + "add": { + "description": "List of workspace bindings to add. If a binding for the workspace already exists with a\ndifferent binding_type, adding it again with a new binding_type will update the existing\nbinding (e.g., from READ_WRITE to READ_ONLY).", + "launch_stage": "GA" + }, + "remove": { + "description": "List of workspace bindings to remove.", + "launch_stage": "GA" + } + } + }, + "catalog.UpdateWorkspaceBindingsResponse": { + "description": "A list of workspace IDs that are bound to the securable", + "fields": { + "bindings": { + "description": "List of workspace bindings.", + "launch_stage": "GA" + } + } + }, + "catalog.ValidateCredentialRequest": { + "fields": { + "aws_iam_role": { + "ref": "catalog.AwsIamRole", + "launch_stage": "GA" + }, + "azure_managed_identity": { + "ref": "catalog.AzureManagedIdentity", + "launch_stage": "GA" + }, + "credential_name": { + "description": "Required. The name of an existing credential or long-lived cloud\ncredential to validate.", + "launch_stage": "GA" + }, + "databricks_gcp_service_account": { + "ref": "catalog.DatabricksGcpServiceAccount", + "launch_stage": "GA" + }, + "external_location_name": { + "description": "The name of an existing external location to validate. Only applicable for\nstorage credentials (purpose is\n**STORAGE**.)", + "launch_stage": "GA" + }, + "purpose": { + "description": "The purpose of the credential. This should only be used when the credential\nis specified.", + "ref": "catalog.CredentialPurpose", + "launch_stage": "GA" + }, + "read_only": { + "description": "Whether the credential is only usable for read operations. Only applicable\nfor storage credentials (purpose is\n**STORAGE**.)", + "launch_stage": "GA" + }, + "url": { + "description": "The external location url to validate. Only applicable when purpose is\n**STORAGE**.", + "launch_stage": "GA" + } + } + }, + "catalog.ValidateCredentialResponse": { + "fields": { + "isDir": { + "description": "Whether the tested location is a directory in cloud storage. Only\napplicable for when purpose is **STORAGE**.", + "launch_stage": "GA" + }, + "results": { + "description": "The results of the validation check.", + "launch_stage": "GA" + } + } + }, + "catalog.ValidateCredentialResult": { + "description": "A enum represents the result of the file operation", + "enum": [ + "PASS", + "FAIL", + "SKIP" + ], + "enum_launch_stages": { + "FAIL": "GA", + "PASS": "GA", + "SKIP": "GA" + } + }, + "catalog.ValidateStorageCredential": { + "fields": { + "aws_iam_role": { + "description": "The AWS IAM role configuration.", + "ref": "catalog.AwsIamRoleRequest", + "launch_stage": "GA" + }, + "azure_managed_identity": { + "description": "The Azure managed identity configuration.", + "ref": "catalog.AzureManagedIdentityRequest", + "launch_stage": "GA" + }, + "azure_service_principal": { + "description": "The Azure service principal configuration.", + "ref": "catalog.AzureServicePrincipal", + "launch_stage": "GA" + }, + "cloudflare_api_token": { + "description": "The Cloudflare API token configuration.", + "ref": "catalog.CloudflareApiToken", + "launch_stage": "PRIVATE_PREVIEW" + }, + "databricks_gcp_service_account": { + "description": "The Databricks created GCP service account configuration.", + "ref": "catalog.DatabricksGcpServiceAccountRequest", + "launch_stage": "GA" + }, + "external_location_name": { + "description": "The name of an existing external location to validate.", + "launch_stage": "GA" + }, + "read_only": { + "description": "Whether the storage credential is only usable for read operations.", + "launch_stage": "GA" + }, + "storage_credential_name": { + "description": "Required. The name of an existing credential or long-lived cloud\ncredential to validate.", + "launch_stage": "GA" + }, + "url": { + "description": "The external location url to validate.", + "launch_stage": "GA" + } + } + }, + "catalog.ValidateStorageCredentialResponse": { + "fields": { + "isDir": { + "description": "Whether the tested location is a directory in cloud storage.", + "launch_stage": "GA" + }, + "results": { + "description": "The results of the validation check.", + "launch_stage": "GA" + } + } + }, + "catalog.ValidationResult": { + "fields": { + "message": { + "description": "Error message would exist when the result does not equal to **PASS**.", + "launch_stage": "GA" + }, + "operation": { + "description": "The operation tested.", + "ref": "catalog.ValidationResultOperation", + "launch_stage": "GA" + }, + "result": { + "description": "The results of the tested operation.", + "ref": "catalog.ValidationResultResult", + "launch_stage": "GA" + } + } + }, + "catalog.ValidationResultOperation": { + "description": "A enum represents the file operation performed on the external location\nwith the storage credential", + "enum": [ + "LIST", + "READ", + "WRITE", + "DELETE", + "PATH_EXISTS" + ], + "enum_launch_stages": { + "DELETE": "GA", + "LIST": "GA", + "PATH_EXISTS": "GA", + "READ": "GA", + "WRITE": "GA" + } + }, + "catalog.ValidationResultResult": { + "description": "A enum represents the result of the file operation", + "enum": [ + "PASS", + "FAIL", + "SKIP" + ], + "enum_launch_stages": { + "FAIL": "GA", + "PASS": "GA", + "SKIP": "GA" + } + }, + "catalog.VolumeInfo": { + "fields": { + "access_point": { + "description": "The AWS access point to use when accesing s3 for this external location.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "browse_only": { + "description": "Indicates whether the principal is limited to retrieving metadata for the associated object through the BROWSE privilege when include_browse is enabled in the request.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "catalog_name": { + "description": "The name of the catalog where the schema and the volume are", + "launch_stage": "GA" + }, + "comment": { + "description": "The comment attached to the volume", + "launch_stage": "GA" + }, + "created_at": { + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "The identifier of the user who created the volume", + "launch_stage": "GA" + }, + "encryption_details": { + "ref": "catalog.EncryptionDetails", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "full_name": { + "description": "The three-level (fully qualified) name of the volume", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "metastore_id": { + "description": "The unique identifier of the metastore", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "The name of the volume", + "launch_stage": "GA" + }, + "owner": { + "description": "The identifier of the user who owns the volume", + "launch_stage": "GA" + }, + "schema_name": { + "description": "The name of the schema where the volume is", + "launch_stage": "GA" + }, + "storage_location": { + "description": "The storage location on the cloud", + "launch_stage": "GA" + }, + "updated_at": { + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_by": { + "description": "The identifier of the user who updated the volume last time", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "volume_id": { + "description": "The unique identifier of the volume", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "volume_type": { + "description": "The type of the volume. An external volume is located in the specified external location.\nA managed volume is located in the default location which is specified by the parent schema, or the parent catalog, or the Metastore.\n[Learn more](https://docs.databricks.com/aws/en/volumes/managed-vs-external)", + "ref": "catalog.VolumeType", + "launch_stage": "GA" + } + } + }, + "catalog.VolumeOperation": { + "enum": [ + "READ_VOLUME", + "WRITE_VOLUME" + ], + "enum_launch_stages": { + "READ_VOLUME": "PUBLIC_PREVIEW", + "WRITE_VOLUME": "PUBLIC_PREVIEW" + } + }, + "catalog.VolumeType": { + "enum": [ + "MANAGED", + "EXTERNAL" + ], + "enum_launch_stages": { + "EXTERNAL": "GA", + "MANAGED": "GA" + } + }, + "catalog.WorkspaceBinding": { + "fields": { + "binding_type": { + "description": "One of READ_WRITE/READ_ONLY. Default is READ_WRITE.", + "ref": "catalog.WorkspaceBindingBindingType", + "launch_stage": "GA" + }, + "workspace_id": { + "description": "Required", + "launch_stage": "GA" + } + } + }, + "catalog.WorkspaceBindingBindingType": { + "description": "Using `BINDING_TYPE_` prefix here to avoid conflict with `TableOperation` enum in `credentials_common.proto`.", + "enum": [ + "BINDING_TYPE_READ_WRITE", + "BINDING_TYPE_READ_ONLY" + ], + "enum_launch_stages": { + "BINDING_TYPE_READ_ONLY": "GA", + "BINDING_TYPE_READ_WRITE": "GA" + } + }, + "cleanrooms.CleanRoom": { + "fields": { + "access_restricted": { + "description": "Whether clean room access is restricted due to [CSP](https://docs.databricks.com/en/security/privacy/security-profile.html)", + "ref": "cleanrooms.CleanRoomAccessRestricted", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "comment": { + "launch_stage": "GA" + }, + "created_at": { + "description": "When the clean room was created, in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "enable_shared_output": { + "description": "Whether allow task to write to shared output schema.\nWhen enabled, clean room task runs triggered by the current collaborator\ncan write to the run-scoped shared output schema which is accessible by all collaborators.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "local_collaborator_alias": { + "description": "The alias of the collaborator tied to the local clean room.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "The name of the clean room.\nIt should follow [UC securable naming requirements](https://docs.databricks.com/en/data-governance/unity-catalog/index.html#securable-object-naming-requirements).", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "output_catalog": { + "description": "Output catalog of the clean room. It is an output only field. Output catalog is manipulated\nusing the separate CreateCleanRoomOutputCatalog API.", + "ref": "cleanrooms.CleanRoomOutputCatalog", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "owner": { + "description": "This is the Databricks username of the owner of the local clean room securable for permission management.", + "launch_stage": "GA" + }, + "remote_detailed_info": { + "description": "Central clean room details. During creation, users need to specify\ncloud_vendor, region, and collaborators.global_metastore_id.\nThis field will not be filled in the ListCleanRooms call.", + "ref": "cleanrooms.CleanRoomRemoteDetail", + "launch_stage": "GA" + }, + "status": { + "description": "Clean room status.", + "ref": "cleanrooms.CleanRoomStatusEnum", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_at": { + "description": "When the clean room was last updated, in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "cleanrooms.CleanRoomAccessRestricted": { + "enum": [ + "NO_RESTRICTION", + "CSP_MISMATCH" + ], + "enum_launch_stages": { + "CSP_MISMATCH": "GA", + "NO_RESTRICTION": "GA" + } + }, + "cleanrooms.CleanRoomAsset": { + "description": "Metadata of the clean room asset", + "fields": { + "added_at": { + "description": "When the asset is added to the clean room, in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "asset_type": { + "description": "The type of the asset.", + "ref": "cleanrooms.CleanRoomAssetAssetType", + "launch_stage": "GA" + }, + "clean_room_name": { + "description": "The name of the clean room this asset belongs to.\nThis field is required for create operations and populated by the server for responses.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "foreign_table": { + "description": "Foreign table details available to all collaborators of the clean room.\nPresent if and only if **asset_type** is **FOREIGN_TABLE**", + "ref": "cleanrooms.CleanRoomAssetForeignTable", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "foreign_table_local_details": { + "description": "Local details for a foreign that are only available to its owner.\nPresent if and only if **asset_type** is **FOREIGN_TABLE**", + "ref": "cleanrooms.CleanRoomAssetForeignTableLocalDetails", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "jar_analysis": { + "description": "Jar analysis details available to all collaborators of the clean room.\nPresent if and only if **asset_type** is **JAR_ANALYSIS**", + "ref": "cleanrooms.CleanRoomAssetJarAnalysis", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "launch_stage": "GA" + }, + "notebook": { + "description": "Notebook details available to all collaborators of the clean room.\nPresent if and only if **asset_type** is **NOTEBOOK_FILE**", + "ref": "cleanrooms.CleanRoomAssetNotebook", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "owner_collaborator_alias": { + "description": "The alias of the collaborator who owns this asset", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "status": { + "description": "Status of the asset", + "ref": "cleanrooms.CleanRoomAssetStatusEnum", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "table": { + "description": "Table details available to all collaborators of the clean room.\nPresent if and only if **asset_type** is **TABLE** or **STREAMING_TABLE**", + "ref": "cleanrooms.CleanRoomAssetTable", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "table_local_details": { + "description": "Local details for a table that are only available to its owner.\nPresent if and only if **asset_type** is **TABLE** or **STREAMING_TABLE**", + "ref": "cleanrooms.CleanRoomAssetTableLocalDetails", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "view": { + "description": "View details available to all collaborators of the clean room.\nPresent if and only if **asset_type** is **VIEW** or **METRIC_VIEW**", + "ref": "cleanrooms.CleanRoomAssetView", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "view_local_details": { + "description": "Local details for a view that are only available to its owner.\nPresent if and only if **asset_type** is **VIEW** or **METRIC_VIEW**", + "ref": "cleanrooms.CleanRoomAssetViewLocalDetails", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "volume_local_details": { + "description": "Local details for a volume that are only available to its owner.\nPresent if and only if **asset_type** is **VOLUME**", + "ref": "cleanrooms.CleanRoomAssetVolumeLocalDetails", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "cleanrooms.CleanRoomAssetAssetType": { + "enum": [ + "TABLE", + "NOTEBOOK_FILE", + "VOLUME", + "VIEW", + "FOREIGN_TABLE", + "JAR_ANALYSIS" + ], + "enum_launch_stages": { + "FOREIGN_TABLE": "GA", + "JAR_ANALYSIS": "PUBLIC_PREVIEW", + "NOTEBOOK_FILE": "GA", + "TABLE": "GA", + "VIEW": "GA", + "VOLUME": "GA" + } + }, + "cleanrooms.CleanRoomAssetForeignTable": { + "fields": { + "columns": { + "description": "The metadata information of the columns in the foreign table", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "cleanrooms.CleanRoomAssetForeignTableLocalDetails": { + "fields": { + "local_name": { + "description": "The fully qualified name of the foreign table in its owner's local metastore,\nin the format of *catalog*.*schema*.*foreign_table_name*", + "launch_stage": "GA" + } + } + }, + "cleanrooms.CleanRoomAssetJarAnalysis": { + "fields": { + "central_jar_file_paths": { + "description": "The full paths in central to the jar files that are added to the library during execution (e.g. /Volumes/creator/schema/volume/folder/my_jar_file.jar)\nOnly returned for the owner collaborator.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "description": { + "description": "Optional description of the jar analysis shown to all collaborators.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "environment_version": { + "description": "The serverless environment version used to execute the JAR analysis (e.g. \"4\").\nIf not specified, uses the service-configured JAR analysis default.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "etag": { + "description": "Server generated etag that represents the jar analysis version.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "main_class_name": { + "description": "The full name of the class containing the main method to be executed. This class must be contained in a JAR provided as a library\nThe code must use `SparkContext.getOrCreate` to obtain a Spark context; otherwise, runs of the job fail", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "review_state": { + "description": "Top-level status derived from all reviews.", + "ref": "cleanrooms.CleanRoomJarAnalysisReviewJarAnalysisReviewState", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "reviews": { + "description": "All existing approvals or rejections.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "runner_collaborator_aliases": { + "description": "Collaborators that can run the jar.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "cleanrooms.CleanRoomAssetNotebook": { + "fields": { + "description": { + "description": "Optional description of the notebook shown to all collaborators.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "environment_version": { + "description": "The serverless environment version used to execute the notebook (e.g. \"4\").\nDefaults to \"2\" if not specified.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "etag": { + "description": "Server generated etag that represents the notebook version.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "notebook_content": { + "description": "Base 64 representation of the notebook contents.\nThis is the same format as returned by [workspace/export](https://docs.databricks.com/api/workspace/workspace/export) with the format of **HTML**.", + "launch_stage": "GA" + }, + "review_state": { + "description": "Top-level status derived from all reviews", + "ref": "cleanrooms.CleanRoomNotebookReviewNotebookReviewState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "reviews": { + "description": "All existing approvals or rejections", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "runner_collaborator_aliases": { + "description": "Aliases of collaborators that can run the notebook.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "cleanrooms.CleanRoomAssetStatusEnum": { + "enum": [ + "ACTIVE", + "PERMISSION_DENIED", + "PENDING" + ], + "enum_launch_stages": { + "ACTIVE": "GA", + "PENDING": "GA", + "PERMISSION_DENIED": "GA" + } + }, + "cleanrooms.CleanRoomAssetTable": { + "fields": { + "columns": { + "description": "The metadata information of the columns in the table", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "cleanrooms.CleanRoomAssetTableLocalDetails": { + "fields": { + "local_name": { + "description": "The fully qualified name of the table in its owner's local metastore,\nin the format of *catalog*.*schema*.*table_name*", + "launch_stage": "GA" + }, + "partitions": { + "description": "Partition filtering specification for a shared table.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "cleanrooms.CleanRoomAssetView": { + "fields": { + "columns": { + "description": "The metadata information of the columns in the view", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "cleanrooms.CleanRoomAssetViewLocalDetails": { + "fields": { + "local_name": { + "description": "The fully qualified name of the view in its owner's local metastore,\nin the format of *catalog*.*schema*.*view_name*", + "launch_stage": "GA" + } + } + }, + "cleanrooms.CleanRoomAssetVolumeLocalDetails": { + "fields": { + "local_name": { + "description": "The fully qualified name of the volume in its owner's local metastore,\nin the format of *catalog*.*schema*.*volume_name*", + "launch_stage": "GA" + } + } + }, + "cleanrooms.CleanRoomAutoApprovalRule": { + "fields": { + "author_collaborator_alias": { + "description": "Collaborator alias of the author covered by the rule.\nOnly one of `author_collaborator_alias` and `author_scope` can be set.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "author_scope": { + "description": "Scope of authors covered by the rule.\nOnly one of `author_collaborator_alias` and `author_scope` can be set.", + "ref": "cleanrooms.CleanRoomAutoApprovalRuleAuthorScope", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "clean_room_name": { + "description": "The name of the clean room this auto-approval rule belongs to.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "created_at": { + "description": "Timestamp of when the rule was created, in epoch milliseconds.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "rule_id": { + "description": "A generated UUID identifying the rule.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "rule_owner_collaborator_alias": { + "description": "The owner of the rule to whom the rule applies.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "runner_collaborator_alias": { + "description": "Collaborator alias of the runner covered by the rule.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "cleanrooms.CleanRoomAutoApprovalRuleAuthorScope": { + "enum": [ + "ANY_AUTHOR" + ], + "enum_launch_stages": { + "ANY_AUTHOR": "PUBLIC_BETA" + } + }, + "cleanrooms.CleanRoomCollaborator": { + "description": "Publicly visible clean room collaborator.", + "fields": { + "collaborator_alias": { + "description": "Collaborator alias specified by the clean room creator. It is unique across all collaborators of this clean room, and used to derive\nmultiple values internally such as catalog alias and clean room name for single metastore clean rooms.\nIt should follow [UC securable naming requirements](https://docs.databricks.com/en/data-governance/unity-catalog/index.html#securable-object-naming-requirements).", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "display_name": { + "description": "Generated display name for the collaborator. In the case of a single metastore clean room, it is the clean\nroom name. For x-metastore clean rooms, it is the organization name of the metastore. It is not restricted to\nthese values and could change in the future", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "global_metastore_id": { + "description": "The global Unity Catalog metastore ID of the collaborator. The identifier is of format cloud:region:metastore-uuid.", + "launch_stage": "GA" + }, + "invite_recipient_email": { + "description": "Email of the user who is receiving the clean room \"invitation\". It should be empty\nfor the creator of the clean room, and non-empty for the invitees of the clean room.\nIt is only returned in the output when clean room creator calls GET", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "invite_recipient_workspace_id": { + "description": "Workspace ID of the user who is receiving the clean room \"invitation\". Must be specified if\ninvite_recipient_email is specified.\nIt should be empty when the collaborator is the creator of the clean room.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "organization_name": { + "description": "[Organization name](:method:metastores/list#metastores-delta_sharing_organization_name)\nconfigured in the metastore", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "cleanrooms.CleanRoomJarAnalysisReview": { + "description": "This only applies to a JAR Analysis as a first-class asset in the Clean Room, and not to Volumes", + "fields": { + "comment": { + "description": "review comment", + "launch_stage": "PUBLIC_PREVIEW" + }, + "created_at_millis": { + "description": "timestamp of when the review was submitted", + "launch_stage": "PUBLIC_PREVIEW" + }, + "review_state": { + "description": "review outcome", + "ref": "cleanrooms.CleanRoomJarAnalysisReviewJarAnalysisReviewState", + "launch_stage": "PUBLIC_PREVIEW" + }, + "review_sub_reason": { + "description": "specified when the review was not explicitly made by a user", + "ref": "cleanrooms.CleanRoomJarAnalysisReviewJarAnalysisReviewSubReason", + "launch_stage": "PUBLIC_PREVIEW" + }, + "reviewer_collaborator_alias": { + "description": "collaborator alias of the reviewer", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "cleanrooms.CleanRoomJarAnalysisReviewJarAnalysisReviewState": { + "enum": [ + "APPROVED", + "REJECTED", + "PENDING" + ], + "enum_launch_stages": { + "APPROVED": "PUBLIC_PREVIEW", + "PENDING": "PUBLIC_PREVIEW", + "REJECTED": "PUBLIC_PREVIEW" + } + }, + "cleanrooms.CleanRoomJarAnalysisReviewJarAnalysisReviewSubReason": { + "enum": [ + "AUTO_APPROVED" + ], + "enum_launch_stages": { + "AUTO_APPROVED": "PUBLIC_PREVIEW" + } + }, + "cleanrooms.CleanRoomNotebookReview": { + "fields": { + "comment": { + "description": "Review comment", + "launch_stage": "GA" + }, + "created_at_millis": { + "description": "When the review was submitted, in epoch milliseconds", + "launch_stage": "GA" + }, + "review_state": { + "description": "Review outcome", + "ref": "cleanrooms.CleanRoomNotebookReviewNotebookReviewState", + "launch_stage": "GA" + }, + "review_sub_reason": { + "description": "Specified when the review was not explicitly made by a user", + "ref": "cleanrooms.CleanRoomNotebookReviewNotebookReviewSubReason", + "launch_stage": "GA" + }, + "reviewer_collaborator_alias": { + "description": "Collaborator alias of the reviewer", + "launch_stage": "GA" + } + } + }, + "cleanrooms.CleanRoomNotebookReviewNotebookReviewState": { + "enum": [ + "APPROVED", + "REJECTED", + "PENDING" + ], + "enum_launch_stages": { + "APPROVED": "GA", + "PENDING": "GA", + "REJECTED": "GA" + } + }, + "cleanrooms.CleanRoomNotebookReviewNotebookReviewSubReason": { + "enum": [ + "BACKFILLED", + "AUTO_APPROVED" + ], + "enum_launch_stages": { + "AUTO_APPROVED": "GA", + "BACKFILLED": "GA" + } + }, + "cleanrooms.CleanRoomNotebookTaskRun": { + "description": "Stores information about a single task run.", + "fields": { + "collaborator_job_run_info": { + "description": "Job run info of the task in the runner's local workspace.\nThis field is only included in the LIST API.\nif the task was run within the same workspace the API is being called.\nIf the task run was in a different workspace under the same metastore, only the workspace_id is included.", + "ref": "cleanrooms.CollaboratorJobRunInfo", + "launch_stage": "GA" + }, + "notebook_etag": { + "description": "Etag of the notebook executed in this task run, used to identify the notebook version.", + "launch_stage": "GA" + }, + "notebook_job_run_state": { + "description": "State of the task run.", + "ref": "jobs.CleanRoomTaskRunState", + "launch_stage": "GA" + }, + "notebook_name": { + "description": "Asset name of the notebook executed in this task run.", + "launch_stage": "GA" + }, + "notebook_updated_at": { + "description": "The timestamp of when the notebook was last updated.", + "launch_stage": "GA" + }, + "output_schema_expiration_time": { + "description": "Expiration time of the output schema of the task run (if any), in epoch milliseconds.", + "launch_stage": "GA" + }, + "output_schema_name": { + "description": "Name of the output schema associated with the clean rooms notebook task run.", + "launch_stage": "GA" + }, + "run_duration": { + "description": "Duration of the task run, in milliseconds.", + "launch_stage": "GA" + }, + "shared_output_schema_expiration_time": { + "description": "Expiration time of the shared output schema of the task run (if any), in epoch milliseconds.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "shared_output_schema_name": { + "description": "Name of the shared output schema associated with the clean rooms notebook task run.\nThis schema is accessible by all collaborators when enable_shared_output is true.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "start_time": { + "description": "When the task run started, in epoch milliseconds.", + "launch_stage": "GA" + } + } + }, + "cleanrooms.CleanRoomOutputCatalog": { + "fields": { + "catalog_name": { + "description": "The name of the output catalog in UC.\nIt should follow [UC securable naming requirements](https://docs.databricks.com/en/data-governance/unity-catalog/index.html#securable-object-naming-requirements).\nThe field will always exist if status is CREATED.", + "launch_stage": "GA" + }, + "status": { + "ref": "cleanrooms.CleanRoomOutputCatalogOutputCatalogStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "cleanrooms.CleanRoomOutputCatalogOutputCatalogStatus": { + "enum": [ + "NOT_ELIGIBLE", + "NOT_CREATED", + "CREATED" + ], + "enum_launch_stages": { + "CREATED": "GA", + "NOT_CREATED": "GA", + "NOT_ELIGIBLE": "GA" + } + }, + "cleanrooms.CleanRoomRemoteDetail": { + "description": "Publicly visible central clean room details.", + "fields": { + "central_clean_room_id": { + "description": "Central clean room ID.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "cloud_vendor": { + "description": "Cloud vendor (aws,azure,gcp) of the central clean room.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "collaborators": { + "description": "Collaborators in the central clean room. There should one and only one collaborator\nin the list that satisfies the owner condition:\n\n1. It has the creator's global_metastore_id (determined by caller of CreateCleanRoom).\n\n2. Its invite_recipient_email is empty.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "compliance_security_profile": { + "ref": "cleanrooms.ComplianceSecurityProfile", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "creator": { + "description": "Collaborator who creates the clean room.", + "ref": "cleanrooms.CleanRoomCollaborator", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "egress_network_policy": { + "description": "Egress network policy to apply to the central clean room workspace.", + "ref": "settings.EgressNetworkPolicy", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "enable_shared_output": { + "description": "Whether to enable shared output for the central clean room.\nWhen enabled, clean room task runs can write to the run-scoped shared output schema\nwhich is accessible by all collaborators.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "package_provider_collaborator_alias": { + "description": "Alias of the provider collaborator. If set, packaged clean rooms mode is enabled.\nThe consumer's experience is restricted: they can view notebook names and READMEs,\nadd their own data assets, and trigger runs, but cannot view notebook code,\nprovider data assets, or notebook run output.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "region": { + "description": "Region of the central clean room.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + } + } + }, + "cleanrooms.CleanRoomStatusEnum": { + "enum": [ + "ACTIVE", + "PROVISIONING", + "DELETED", + "FAILED" + ], + "enum_launch_stages": { + "ACTIVE": "GA", + "DELETED": "GA", + "FAILED": "GA", + "PROVISIONING": "GA" + } + }, + "cleanrooms.CleanRoomTaskRun": { + "description": "Stores information about a single task run.", + "fields": { + "analysis_details": { + "description": "Information about the analysis run (etag, updated at)", + "ref": "cleanrooms.CleanRoomTaskRunCleanRoomTaskAnalysisDetails", + "launch_stage": "GA" + }, + "collaborator_job_run_info": { + "description": "Job run info of the task in the runner's local workspace.\nThis field is only included in the LIST API if the task was run within the same workspace the API is being called.\nIf the task run was in a different workspace under the same metastore, only the workspace_id is included.", + "ref": "cleanrooms.CollaboratorJobRunInfo", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the executable.", + "launch_stage": "GA" + }, + "output_info": { + "description": "Information about run output", + "ref": "cleanrooms.CleanRoomTaskRunOutputInfo", + "launch_stage": "GA" + }, + "run_duration": { + "description": "Duration of the task run, in milliseconds.", + "launch_stage": "GA" + }, + "shared_output_info": { + "description": "Information about shared output accessible by all collaborators.\nThis field is only populated when enable_shared_output is true.", + "ref": "cleanrooms.CleanRoomTaskRunOutputInfo", + "launch_stage": "PUBLIC_PREVIEW" + }, + "start_time": { + "description": "When the task run started, in epoch milliseconds.", + "launch_stage": "GA" + }, + "task_run_state": { + "description": "State of the task run.", + "ref": "jobs.CleanRoomTaskRunState", + "launch_stage": "GA" + }, + "task_type": { + "description": "The type of Clean Room task.", + "ref": "cleanrooms.CleanRoomTaskType", + "launch_stage": "GA" + } + } + }, + "cleanrooms.CleanRoomTaskRunCleanRoomTaskAnalysisDetails": { + "fields": { + "etag": { + "description": "Etag of the asset executed in this task run, used to identify the asset version.", + "launch_stage": "GA" + }, + "updated_at": { + "description": "The timestamp of when the asset was last updated.", + "launch_stage": "GA" + } + } + }, + "cleanrooms.CleanRoomTaskRunOutputInfo": { + "fields": { + "output_schema_expiration_time": { + "description": "Expiration time of the output schema of the task run (if any), in epoch milliseconds.", + "launch_stage": "GA" + }, + "output_schema_name": { + "description": "Name of the output schema associated with the clean room task run.", + "launch_stage": "GA" + } + } + }, + "cleanrooms.CleanRoomTaskType": { + "enum": [ + "NOTEBOOK", + "JAR" + ], + "enum_launch_stages": { + "JAR": "GA", + "NOTEBOOK": "GA" + } + }, + "cleanrooms.CollaboratorJobRunInfo": { + "fields": { + "collaborator_alias": { + "description": "Alias of the collaborator that triggered the task run.", + "launch_stage": "GA" + }, + "collaborator_job_id": { + "description": "Job ID of the task run in the collaborator's workspace.", + "launch_stage": "GA" + }, + "collaborator_job_run_id": { + "description": "Job run ID of the task run in the collaborator's workspace.", + "launch_stage": "GA" + }, + "collaborator_task_run_id": { + "description": "Task run ID of the task run in the collaborator's workspace.", + "launch_stage": "GA" + }, + "collaborator_workspace_id": { + "description": "ID of the collaborator's workspace that triggered the task run.", + "launch_stage": "GA" + } + } + }, + "cleanrooms.ComplianceSecurityProfile": { + "description": "The compliance security profile used to process regulated data following compliance standards.", + "fields": { + "compliance_standards": { + "description": "The list of compliance standards that the compliance security profile is configured to enforce.", + "launch_stage": "GA" + }, + "is_enabled": { + "description": "Whether the compliance security profile is enabled.", + "launch_stage": "GA" + } + } + }, + "cleanrooms.CreateCleanRoomAssetRequest": { + "fields": { + "asset": { + "ref": "cleanrooms.CleanRoomAsset", + "launch_stage": "GA" + } + } + }, + "cleanrooms.CreateCleanRoomAssetReviewRequest": { + "fields": { + "jar_analysis_review": { + "ref": "cleanrooms.JarAnalysisVersionReview", + "launch_stage": "PUBLIC_BETA" + }, + "notebook_review": { + "ref": "cleanrooms.NotebookVersionReview", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "cleanrooms.CreateCleanRoomAssetReviewResponse": { + "fields": { + "jar_analysis_review_state": { + "description": "top-level status derived from all reviews", + "ref": "cleanrooms.CleanRoomJarAnalysisReviewJarAnalysisReviewState", + "launch_stage": "PUBLIC_BETA" + }, + "jar_analysis_reviews": { + "description": "All existing jar analysis approvals or rejections", + "launch_stage": "PUBLIC_BETA" + }, + "notebook_review_state": { + "description": "Top-level status derived from all reviews", + "ref": "cleanrooms.CleanRoomNotebookReviewNotebookReviewState", + "launch_stage": "PUBLIC_BETA" + }, + "notebook_reviews": { + "description": "All existing notebook approvals or rejections", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "cleanrooms.CreateCleanRoomAutoApprovalRuleRequest": { + "fields": { + "auto_approval_rule": { + "ref": "cleanrooms.CleanRoomAutoApprovalRule", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "cleanrooms.CreateCleanRoomOutputCatalogRequest": { + "fields": { + "output_catalog": { + "ref": "cleanrooms.CleanRoomOutputCatalog", + "launch_stage": "GA" + } + } + }, + "cleanrooms.CreateCleanRoomOutputCatalogResponse": { + "fields": { + "output_catalog": { + "ref": "cleanrooms.CleanRoomOutputCatalog", + "launch_stage": "GA" + } + } + }, + "cleanrooms.CreateCleanRoomRequest": { + "fields": { + "clean_room": { + "ref": "cleanrooms.CleanRoom", + "launch_stage": "GA" + } + } + }, + "cleanrooms.DeleteCleanRoomAssetRequest": {}, + "cleanrooms.DeleteCleanRoomAssetResponse": { + "description": "Response for delete clean room request. Using an empty message since the generic Empty proto does not externd\nUnshadedMessageMarker." + }, + "cleanrooms.DeleteCleanRoomAutoApprovalRuleRequest": {}, + "cleanrooms.DeleteCleanRoomRequest": {}, + "cleanrooms.GetCleanRoomAssetRequest": {}, + "cleanrooms.GetCleanRoomAssetRevisionRequest": {}, + "cleanrooms.GetCleanRoomAutoApprovalRuleRequest": {}, + "cleanrooms.GetCleanRoomRequest": {}, + "cleanrooms.JarAnalysisVersionReview": { + "fields": { + "comment": { + "description": "Review comment", + "launch_stage": "PUBLIC_BETA" + }, + "etag": { + "description": "Etag identifying the jar analysis version, with its value being a hash of an internally-generated UUID", + "launch_stage": "PUBLIC_BETA" + }, + "review_state": { + "description": "Review outcome", + "ref": "cleanrooms.CleanRoomJarAnalysisReviewJarAnalysisReviewState", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "cleanrooms.ListCleanRoomAssetRevisionsRequest": { + "fields": { + "page_size": { + "description": "Maximum number of asset revisions to return. Defaults to 10.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on the previous query.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "cleanrooms.ListCleanRoomAssetRevisionsResponse": { + "fields": { + "next_page_token": { + "launch_stage": "PUBLIC_BETA" + }, + "revisions": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "cleanrooms.ListCleanRoomAssetsRequest": { + "fields": { + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "cleanrooms.ListCleanRoomAssetsResponse": { + "fields": { + "assets": { + "description": "Assets in the clean room.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\npage_token should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + } + } + }, + "cleanrooms.ListCleanRoomAutoApprovalRulesRequest": { + "fields": { + "page_size": { + "description": "Maximum number of auto-approval rules to return. Defaults to 100.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "cleanrooms.ListCleanRoomAutoApprovalRulesResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\npage_token should be set to this value for the next request (for the next page of results).", + "launch_stage": "PUBLIC_BETA" + }, + "rules": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "cleanrooms.ListCleanRoomNotebookTaskRunsRequest": { + "fields": { + "notebook_name": { + "description": "Notebook name", + "launch_stage": "GA" + }, + "page_size": { + "description": "The maximum number of task runs to return. Currently ignored - all runs will be returned.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "cleanrooms.ListCleanRoomNotebookTaskRunsResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\npage_token should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + }, + "runs": { + "description": "Name of the clean room.", + "launch_stage": "GA" + } + } + }, + "cleanrooms.ListCleanRoomTaskRunsRequest": { + "fields": { + "name": { + "description": "Executable name.", + "launch_stage": "GA" + }, + "page_size": { + "description": "The maximum number of task runs to return. Maximum value of 100.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + }, + "task_type": { + "description": "Filter by the type of Clean Room task.", + "ref": "cleanrooms.CleanRoomTaskType", + "launch_stage": "GA" + } + } + }, + "cleanrooms.ListCleanRoomTaskRunsResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\npage_token should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + }, + "runs": { + "description": "Task runs in the clean room.", + "launch_stage": "GA" + } + } + }, + "cleanrooms.ListCleanRoomsRequest": { + "fields": { + "page_size": { + "description": "Maximum number of clean rooms to return (i.e., the page length). Defaults to 100.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "cleanrooms.ListCleanRoomsResponse": { + "fields": { + "clean_rooms": { + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\npage_token should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + } + } + }, + "cleanrooms.NotebookVersionReview": { + "fields": { + "comment": { + "description": "Review comment", + "launch_stage": "PUBLIC_BETA" + }, + "etag": { + "description": "Etag identifying the notebook version", + "launch_stage": "PUBLIC_BETA" + }, + "review_state": { + "description": "Review outcome", + "ref": "cleanrooms.CleanRoomNotebookReviewNotebookReviewState", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "cleanrooms.UpdateCleanRoomAssetRequest": { + "fields": { + "asset": { + "description": "The asset to update.\nThe asset's `name` and `asset_type` fields are used to identify the asset to update.", + "ref": "cleanrooms.CleanRoomAsset", + "launch_stage": "GA" + } + } + }, + "cleanrooms.UpdateCleanRoomAutoApprovalRuleRequest": { + "fields": { + "auto_approval_rule": { + "description": "The auto-approval rule to update. The rule_id field is used to identify the rule to update.", + "ref": "cleanrooms.CleanRoomAutoApprovalRule", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "cleanrooms.UpdateCleanRoomRequest": { + "fields": { + "clean_room": { + "ref": "cleanrooms.CleanRoom", + "launch_stage": "GA" + } + } + }, + "compute.AddInstanceProfile": { + "fields": { + "iam_role_arn": { + "description": "The AWS IAM role ARN of the role associated with the instance profile.\nThis field is required if your role name and instance profile name do\nnot match and you want to use the instance profile with\n[Databricks SQL Serverless](https://docs.databricks.com/sql/admin/serverless.html).\n\nOtherwise, this field is optional.", + "launch_stage": "GA" + }, + "instance_profile_arn": { + "description": "The AWS ARN of the instance profile to register with Databricks. This field is required.", + "launch_stage": "GA" + }, + "is_meta_instance_profile": { + "description": "Boolean flag indicating whether the instance profile should only be used in credential\npassthrough scenarios. If true, it means the instance profile contains an meta IAM role\nwhich could assume a wide range of roles. Therefore it should always be used with\nauthorization.\nThis field is optional, the default value is `false`.", + "launch_stage": "GA" + }, + "skip_validation": { + "description": "By default, Databricks validates that it has sufficient permissions to launch\ninstances with the instance profile. This validation uses AWS dry-run mode for\nthe RunInstances API. If validation fails with an error message that does not\nindicate an IAM related permission issue,\n(e.g. “Your requested instance type is not supported in your requested availability zone”),\nyou can pass this flag to skip the validation and forcibly add the instance profile.", + "launch_stage": "GA" + } + } + }, + "compute.AddResponse": {}, + "compute.Adlsgen2Info": { + "description": "A storage location in Adls Gen2", + "fields": { + "destination": { + "description": "abfss destination, e.g. `abfss://\u003ccontainer-name\u003e@\u003cstorage-account-name\u003e.dfs.core.windows.net/\u003cdirectory-name\u003e`.", + "launch_stage": "GA" + } + } + }, + "compute.AutoScale": { + "fields": { + "max_workers": { + "description": "The maximum number of workers to which the cluster can scale up when overloaded.\nNote that `max_workers` must be strictly greater than `min_workers`.", + "launch_stage": "GA" + }, + "min_workers": { + "description": "The minimum number of workers to which the cluster can scale down when underutilized.\nIt is also the initial number of workers the cluster will have after creation.", + "launch_stage": "GA" + } + } + }, + "compute.AwsAttributes": { + "description": "Attributes set during cluster creation which are related to Amazon Web Services.", + "fields": { + "availability": { + "ref": "compute.AwsAvailability", + "launch_stage": "GA" + }, + "ebs_volume_count": { + "description": "The number of volumes launched for each instance. Users can choose up to 10 volumes.\nThis feature is only enabled for supported node types. Legacy node types cannot specify\ncustom EBS volumes.\nFor node types with no instance store, at least one EBS volume needs to be specified;\notherwise, cluster creation will fail.\n\nThese EBS volumes will be mounted at `/ebs0`, `/ebs1`, and etc.\nInstance store volumes will be mounted at `/local_disk0`, `/local_disk1`, and etc.\n\nIf EBS volumes are attached, Databricks will configure Spark to use only the EBS volumes for\nscratch storage because heterogenously sized scratch devices can lead to inefficient disk\nutilization. If no EBS volumes are attached, Databricks will configure Spark to use instance\nstore volumes.\n\nPlease note that if EBS volumes are specified, then the Spark configuration `spark.local.dir`\nwill be overridden.", + "launch_stage": "GA" + }, + "ebs_volume_iops": { + "description": "If using gp3 volumes, what IOPS to use for the disk. If this is not set, the maximum performance of a gp2 volume with the same volume size will be used.", + "launch_stage": "GA" + }, + "ebs_volume_size": { + "description": "The size of each EBS volume (in GiB) launched for each instance. For general purpose\nSSD, this value must be within the range 100 - 4096. For throughput optimized HDD,\nthis value must be within the range 500 - 4096.", + "launch_stage": "GA" + }, + "ebs_volume_throughput": { + "description": "If using gp3 volumes, what throughput to use for the disk. If this is not set, the maximum performance of a gp2 volume with the same volume size will be used.", + "launch_stage": "GA" + }, + "ebs_volume_type": { + "description": "The type of EBS volumes that will be launched with this cluster.", + "ref": "compute.EbsVolumeType", + "launch_stage": "GA" + }, + "first_on_demand": { + "description": "The first `first_on_demand` nodes of the cluster will be placed on on-demand instances.\nIf this value is greater than 0, the cluster driver node in particular will be placed on an\non-demand instance. If this value is greater than or equal to the current cluster size, all\nnodes will be placed on on-demand instances. If this value is less than the current cluster\nsize, `first_on_demand` nodes will be placed on on-demand instances and the remainder will\nbe placed on `availability` instances. Note that this value does not affect\ncluster size and cannot currently be mutated over the lifetime of a cluster.", + "launch_stage": "GA" + }, + "instance_profile_arn": { + "description": "Nodes for this cluster will only be placed on AWS instances with this instance profile. If\nommitted, nodes will be placed on instances without an IAM instance profile. The instance\nprofile must have previously been added to the Databricks environment by an account\nadministrator.\n\nThis feature may only be available to certain customer plans.", + "launch_stage": "GA" + }, + "spot_bid_price_percent": { + "description": "The bid price for AWS spot instances, as a percentage of the corresponding instance type's\non-demand price.\nFor example, if this field is set to 50, and the cluster needs a new `r3.xlarge` spot\ninstance, then the bid price is half of the price of\non-demand `r3.xlarge` instances. Similarly, if this field is set to 200, the bid price is twice\nthe price of on-demand `r3.xlarge` instances. If not specified, the default value is 100.\nWhen spot instances are requested for this cluster, only spot instances whose bid price\npercentage matches this field will be considered.\nNote that, for safety, we enforce this field to be no more than 10000.", + "launch_stage": "GA" + }, + "zone_id": { + "description": "Identifier for the availability zone/datacenter in which the cluster resides.\nThis string will be of a form like \"us-west-2a\". The provided availability\nzone must be in the same region as the Databricks deployment. For example, \"us-west-2a\"\nis not a valid zone id if the Databricks deployment resides in the \"us-east-1\" region.\nThis is an optional field at cluster creation, and if not specified, the zone \"auto\" will be used.\nIf the zone specified is \"auto\", will try to place cluster in a zone with high availability,\nand will retry placement in a different AZ if there is not enough capacity.\n\nThe list of available zones as well as the default value can be found by using the\n`List Zones` method.", + "launch_stage": "GA" + } + } + }, + "compute.AwsAvailability": { + "description": "Availability type used for all subsequent nodes past the `first_on_demand` ones.\n\nNote: If `first_on_demand` is zero, this availability type will be used for the entire cluster.", + "enum": [ + "SPOT", + "ON_DEMAND", + "SPOT_WITH_FALLBACK" + ], + "enum_launch_stages": { + "ON_DEMAND": "GA", + "SPOT": "GA", + "SPOT_WITH_FALLBACK": "GA" + } + }, + "compute.AzureAttributes": { + "description": "Attributes set during cluster creation which are related to Microsoft Azure.", + "fields": { + "availability": { + "description": "Availability type used for all subsequent nodes past the `first_on_demand` ones.\nNote: If `first_on_demand` is zero, this availability\ntype will be used for the entire cluster.", + "ref": "compute.AzureAvailability", + "launch_stage": "GA" + }, + "capacity_reservation_group": { + "description": "The Azure capacity reservation group resource ID to use for launching VMs.\nWhen specified, VMs will be launched using the provided capacity reservation.\n\nCapacity reservations can only be specified when the workspace uses injected vnet (i.e. customer defined vnet not\nmanaged by databricks). Ensure the databricks-login-prod Enterprise Application is granted the following four permissions:\n1. Microsoft.Compute/capacityReservationGroups/read\n2. Microsoft.Compute/capacityReservationGroups/deploy/action\n3. Microsoft.Compute/capacityReservationGroups/capacityReservations/read\n4. Microsoft.Compute/capacityReservationGroups/capacityReservations/deploy/action\n\nFormat: `/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}`", + "launch_stage": "GA" + }, + "first_on_demand": { + "description": "The first `first_on_demand` nodes of the cluster will be placed on on-demand instances.\nThis value should be greater than 0, to make sure the cluster driver node is placed on an\non-demand instance. If this value is greater than or equal to the current cluster size, all\nnodes will be placed on on-demand instances. If this value is less than the current cluster\nsize, `first_on_demand` nodes will be placed on on-demand instances and the remainder will\nbe placed on `availability` instances. Note that this value does not affect\ncluster size and cannot currently be mutated over the lifetime of a cluster.", + "launch_stage": "GA" + }, + "log_analytics_info": { + "description": "Defines values necessary to configure and run Azure Log Analytics agent", + "ref": "compute.LogAnalyticsInfo", + "launch_stage": "GA" + }, + "spot_bid_max_price": { + "description": "The max bid price to be used for Azure spot instances.\nThe Max price for the bid cannot be higher than the on-demand price of the instance.\nIf not specified, the default value is -1, which specifies that the instance cannot be evicted\non the basis of price, and only on the basis of availability. Further, the value should \u003e 0 or -1.", + "launch_stage": "GA" + } + } + }, + "compute.AzureAvailability": { + "description": "Availability type used for all subsequent nodes past the `first_on_demand` ones.\nNote: If `first_on_demand` is zero, this availability type will be used for the entire cluster.", + "enum": [ + "SPOT_AZURE", + "ON_DEMAND_AZURE", + "SPOT_WITH_FALLBACK_AZURE" + ], + "enum_launch_stages": { + "ON_DEMAND_AZURE": "GA", + "SPOT_AZURE": "GA", + "SPOT_WITH_FALLBACK_AZURE": "GA" + } + }, + "compute.CancelCommand": { + "fields": { + "clusterId": { + "launch_stage": "GA" + }, + "commandId": { + "launch_stage": "GA" + }, + "contextId": { + "launch_stage": "GA" + } + } + }, + "compute.CancelPendingClusterEnforcementRequest": { + "description": "Request to cancel the pending enforcement for a cluster.", + "fields": { + "allow_missing": { + "description": "If true and no pending enforcement exists, the request will succeed but no action\nwill be taken.", + "launch_stage": "GA" + }, + "cluster_id": { + "description": "The ID of the cluster to cancel the pending enforcement for.", + "launch_stage": "GA" + } + } + }, + "compute.CancelPendingClusterEnforcementResponse": { + "description": "Response for canceling the pending enforcement for a cluster.\nIf the cancel request succeeds, an empty response object is returned.\nOtherwise, an error response is returned." + }, + "compute.CancelResponse": {}, + "compute.ChangeClusterOwner": { + "fields": { + "cluster_id": { + "launch_stage": "GA" + }, + "owner_username": { + "description": "New owner of the cluster_id after this RPC.", + "launch_stage": "GA" + } + } + }, + "compute.ChangeClusterOwnerResponse": {}, + "compute.ClientsTypes": { + "fields": { + "jobs": { + "description": "With jobs set, the cluster can be used for jobs", + "launch_stage": "GA" + }, + "notebooks": { + "description": "With notebooks set, this cluster can be used for notebooks", + "launch_stage": "GA" + } + } + }, + "compute.CloneCluster": { + "fields": { + "source_cluster_id": { + "description": "The cluster that is being cloned.", + "launch_stage": "GA" + } + } + }, + "compute.CloudProviderNodeInfo": { + "fields": { + "status": { + "description": "Status as reported by the cloud provider", + "launch_stage": "GA" + } + } + }, + "compute.CloudProviderNodeStatus": { + "enum": [ + "NotEnabledOnSubscription", + "NotAvailableInRegion" + ], + "enum_launch_stages": { + "NotAvailableInRegion": "GA", + "NotEnabledOnSubscription": "GA" + } + }, + "compute.ClusterAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "compute.ClusterPermissionLevel", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "compute.ClusterAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "compute.ClusterAttributes": { + "description": "Common set of attributes set during cluster creation. These attributes cannot be changed\nover the lifetime of a cluster.", + "fields": { + "autotermination_minutes": { + "description": "Automatically terminates the cluster after it is inactive for this time in minutes. If not set,\nthis cluster will not be automatically terminated. If specified, the threshold must be between\n10 and 10000 minutes.\nUsers can also set this value to 0 to explicitly disable automatic termination.", + "launch_stage": "GA" + }, + "aws_attributes": { + "description": "Attributes related to clusters running on Amazon Web Services.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AwsAttributes", + "launch_stage": "GA" + }, + "azure_attributes": { + "description": "Attributes related to clusters running on Microsoft Azure.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AzureAttributes", + "launch_stage": "GA" + }, + "cluster_log_conf": { + "description": "The configuration for delivering spark logs to a long-term storage destination.\nThree kinds of destinations (DBFS, S3 and Unity Catalog volumes) are supported. Only one destination can be specified\nfor one cluster. If the conf is given, the logs will be delivered to the destination every\n`5 mins`. The destination of driver logs is `$destination/$clusterId/driver`, while\nthe destination of executor logs is `$destination/$clusterId/executor`.", + "ref": "compute.ClusterLogConf", + "launch_stage": "GA" + }, + "cluster_name": { + "description": "Cluster name requested by the user. This doesn't have to be unique.\nIf not specified at creation, the cluster name will be an empty string.\nFor job clusters, the cluster name is automatically set based on the job and job run IDs.", + "launch_stage": "GA" + }, + "custom_tags": { + "description": "Additional tags for cluster resources. Databricks will tag all cluster resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags\n\n- Clusters can only reuse cloud resources if the resources' tags are a subset of the cluster tags", + "launch_stage": "GA" + }, + "data_security_mode": { + "ref": "compute.DataSecurityMode", + "launch_stage": "GA" + }, + "dependency_mode": { + "description": "Controls dependency configuration for the cluster.", + "ref": "compute.DependencyMode", + "launch_stage": "PUBLIC_BETA" + }, + "docker_image": { + "description": "Custom docker image BYOC", + "ref": "compute.DockerImage", + "launch_stage": "GA" + }, + "driver_instance_pool_id": { + "description": "The optional ID of the instance pool for the driver of the cluster belongs.\nThe pool cluster uses the instance pool with id (instance_pool_id) if the driver pool is not\nassigned.", + "launch_stage": "GA" + }, + "driver_node_type_flexibility": { + "description": "Flexible node type configuration for the driver node.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "driver_node_type_id": { + "description": "The node type of the Spark driver.\nNote that this field is optional; if unset, the driver node type will be set as the same value\nas `node_type_id` defined above.", + "launch_stage": "GA" + }, + "enable_elastic_disk": { + "description": "Autoscaling Local Storage: when enabled, this cluster will dynamically acquire additional disk\nspace when its Spark workers are running low on disk space.", + "launch_stage": "GA" + }, + "enable_local_disk_encryption": { + "description": "Whether to enable LUKS on cluster VMs' local disks", + "launch_stage": "GA" + }, + "gcp_attributes": { + "description": "Attributes related to clusters running on Google Cloud Platform.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.GcpAttributes", + "launch_stage": "GA" + }, + "init_scripts": { + "description": "The configuration for storing init scripts. Any number of destinations can be specified.\nThe scripts are executed sequentially in the order provided.\nIf `cluster_log_conf` is specified, init script logs are sent to `\u003cdestination\u003e/\u003ccluster-ID\u003e/init_scripts`.", + "launch_stage": "GA" + }, + "instance_pool_id": { + "description": "The optional ID of the instance pool to which the cluster belongs.", + "launch_stage": "GA" + }, + "is_single_node": { + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\nWhen set to true, Databricks will automatically set single node related `custom_tags`, `spark_conf`, and `num_workers`", + "launch_stage": "GA" + }, + "kind": { + "ref": "compute.Kind", + "launch_stage": "GA" + }, + "node_type_id": { + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "launch_stage": "GA" + }, + "policy_id": { + "description": "The ID of the cluster policy used to create the cluster if applicable.", + "launch_stage": "GA" + }, + "remote_disk_throughput": { + "description": "If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED disks.", + "launch_stage": "GA" + }, + "runtime_engine": { + "description": "Determines the cluster's runtime engine, either standard or Photon.\n\nThis field is not compatible with legacy `spark_version` values that contain `-photon-`.\nRemove `-photon-` from the `spark_version` and set `runtime_engine` to `PHOTON`.\n\nIf left unspecified, the runtime engine defaults to standard unless the spark_version\ncontains -photon-, in which case Photon will be used.", + "ref": "compute.RuntimeEngine", + "launch_stage": "GA" + }, + "single_user_name": { + "description": "Single user name if data_security_mode is `SINGLE_USER`", + "launch_stage": "GA" + }, + "spark_conf": { + "description": "An object containing a set of optional, user-specified Spark configuration key-value pairs.\nUsers can also pass in a string of extra JVM options to the driver and the executors via\n`spark.driver.extraJavaOptions` and `spark.executor.extraJavaOptions` respectively.", + "launch_stage": "GA" + }, + "spark_env_vars": { + "description": "An object containing a set of optional, user-specified environment variable key-value pairs.\nPlease note that key-value pair of the form (X,Y) will be exported as is (i.e.,\n`export X='Y'`) while launching the driver and workers.\n\nIn order to specify an additional set of `SPARK_DAEMON_JAVA_OPTS`, we recommend appending\nthem to `$SPARK_DAEMON_JAVA_OPTS` as shown in the example below. This ensures that all\ndefault databricks managed environmental variables are included as well.\n\nExample Spark environment variables:\n`{\"SPARK_WORKER_MEMORY\": \"28000m\", \"SPARK_LOCAL_DIRS\": \"/local_disk0\"}` or\n`{\"SPARK_DAEMON_JAVA_OPTS\": \"$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true\"}`", + "launch_stage": "GA" + }, + "spark_version": { + "description": "The Spark version of the cluster, e.g. `3.3.x-scala2.11`.\nA list of available Spark versions can be retrieved by using\nthe [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "launch_stage": "GA" + }, + "ssh_public_keys": { + "description": "SSH public key contents that will be added to each Spark node in this cluster. The\ncorresponding private keys can be used to login with the user name `ubuntu` on port `2200`.\nUp to 10 keys can be specified.", + "launch_stage": "GA" + }, + "total_initial_remote_disk_size": { + "description": "If set, what the total initial volume size (in GB) of the remote disks should be. Supported for GCP.", + "launch_stage": "GA" + }, + "use_ml_runtime": { + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\n`effective_spark_version` is determined by `spark_version` (DBR release), this field `use_ml_runtime`, and whether `node_type_id` is gpu node or not.", + "launch_stage": "GA" + }, + "worker_node_type_flexibility": { + "description": "Flexible node type configuration for worker nodes.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "workload_type": { + "ref": "compute.WorkloadType", + "launch_stage": "GA" + } + } + }, + "compute.ClusterCompliance": { + "fields": { + "cluster_id": { + "description": "Canonical unique identifier for a cluster.", + "launch_stage": "GA" + }, + "is_compliant": { + "description": "Whether this cluster is in compliance with the latest version of its policy.", + "launch_stage": "GA" + }, + "pending_enforcement": { + "description": "Information about the pending enforcement for the cluster. Only present if a pending enforcement\nis scheduled for the cluster.", + "ref": "compute.PendingEnforcement", + "launch_stage": "GA" + }, + "violations": { + "description": "An object containing key-value mappings representing the first 200 policy validation errors.\nThe keys indicate the path where the policy validation error is occurring.\nThe values indicate an error message describing the policy validation error.", + "launch_stage": "GA" + } + } + }, + "compute.ClusterDetails": { + "description": "Describes all of the metadata about a single Spark cluster in Databricks.", + "fields": { + "autoscale": { + "description": "Parameters needed in order to automatically scale clusters up and down based on load.\nNote: autoscaling works best with DB runtime versions 3.0 or later.", + "ref": "compute.AutoScale", + "launch_stage": "GA" + }, + "autotermination_minutes": { + "description": "Automatically terminates the cluster after it is inactive for this time in minutes. If not set,\nthis cluster will not be automatically terminated. If specified, the threshold must be between\n10 and 10000 minutes.\nUsers can also set this value to 0 to explicitly disable automatic termination.", + "launch_stage": "GA" + }, + "aws_attributes": { + "description": "Attributes related to clusters running on Amazon Web Services.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AwsAttributes", + "launch_stage": "GA" + }, + "azure_attributes": { + "description": "Attributes related to clusters running on Microsoft Azure.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AzureAttributes", + "launch_stage": "GA" + }, + "cluster_cores": { + "description": "Number of CPU cores available for this cluster.\nNote that this can be fractional, e.g. 7.5 cores, since certain node types are configured to\nshare cores between Spark nodes on the same instance.", + "launch_stage": "GA" + }, + "cluster_id": { + "description": "Canonical identifier for the cluster. This id is retained during cluster restarts and resizes,\nwhile each new cluster has a globally unique id.", + "launch_stage": "GA" + }, + "cluster_log_conf": { + "description": "The configuration for delivering spark logs to a long-term storage destination.\nThree kinds of destinations (DBFS, S3 and Unity Catalog volumes) are supported. Only one destination can be specified\nfor one cluster. If the conf is given, the logs will be delivered to the destination every\n`5 mins`. The destination of driver logs is `$destination/$clusterId/driver`, while\nthe destination of executor logs is `$destination/$clusterId/executor`.", + "ref": "compute.ClusterLogConf", + "launch_stage": "GA" + }, + "cluster_log_status": { + "description": "Cluster log delivery status.", + "ref": "compute.LogSyncStatus", + "launch_stage": "GA" + }, + "cluster_memory_mb": { + "description": "Total amount of cluster memory, in megabytes", + "launch_stage": "GA" + }, + "cluster_name": { + "description": "Cluster name requested by the user. This doesn't have to be unique.\nIf not specified at creation, the cluster name will be an empty string.\nFor job clusters, the cluster name is automatically set based on the job and job run IDs.", + "launch_stage": "GA" + }, + "cluster_source": { + "description": "Determines whether the cluster was created by a user through the UI, created by the Databricks\nJobs Scheduler, or through an API request.", + "ref": "compute.ClusterSource", + "launch_stage": "GA" + }, + "creator_user_name": { + "description": "Creator user name.\nThe field won't be included in the response if the user has already been deleted.", + "launch_stage": "GA" + }, + "custom_tags": { + "description": "Additional tags for cluster resources. Databricks will tag all cluster resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags\n\n- Clusters can only reuse cloud resources if the resources' tags are a subset of the cluster tags", + "launch_stage": "GA" + }, + "data_security_mode": { + "ref": "compute.DataSecurityMode", + "launch_stage": "GA" + }, + "default_tags": { + "description": "Tags that are added by Databricks regardless of any `custom_tags`, including:\n\n- Vendor: Databricks\n\n- Creator: \u003cusername_of_creator\u003e\n\n- ClusterName: \u003cname_of_cluster\u003e\n\n- ClusterId: \u003cid_of_cluster\u003e\n\n- Name: \u003cDatabricks internal use\u003e", + "launch_stage": "GA" + }, + "dependency_mode": { + "description": "Controls dependency configuration for the cluster.", + "ref": "compute.DependencyMode", + "launch_stage": "PUBLIC_BETA" + }, + "docker_image": { + "description": "Custom docker image BYOC", + "ref": "compute.DockerImage", + "launch_stage": "GA" + }, + "driver": { + "description": "Node on which the Spark driver resides. The driver node contains the Spark master and\nthe Databricks application that manages the per-notebook Spark REPLs.", + "ref": "compute.SparkNode", + "launch_stage": "GA" + }, + "driver_instance_pool_id": { + "description": "The optional ID of the instance pool for the driver of the cluster belongs.\nThe pool cluster uses the instance pool with id (instance_pool_id) if the driver pool is not\nassigned.", + "launch_stage": "GA" + }, + "driver_node_type_flexibility": { + "description": "Flexible node type configuration for the driver node.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "driver_node_type_id": { + "description": "The node type of the Spark driver.\nNote that this field is optional; if unset, the driver node type will be set as the same value\nas `node_type_id` defined above.", + "launch_stage": "GA" + }, + "enable_elastic_disk": { + "description": "Autoscaling Local Storage: when enabled, this cluster will dynamically acquire additional disk\nspace when its Spark workers are running low on disk space.", + "launch_stage": "GA" + }, + "enable_local_disk_encryption": { + "description": "Whether to enable LUKS on cluster VMs' local disks", + "launch_stage": "GA" + }, + "executors": { + "description": "Nodes on which the Spark executors reside.", + "launch_stage": "GA" + }, + "gcp_attributes": { + "description": "Attributes related to clusters running on Google Cloud Platform.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.GcpAttributes", + "launch_stage": "GA" + }, + "init_scripts": { + "description": "The configuration for storing init scripts. Any number of destinations can be specified.\nThe scripts are executed sequentially in the order provided.\nIf `cluster_log_conf` is specified, init script logs are sent to `\u003cdestination\u003e/\u003ccluster-ID\u003e/init_scripts`.", + "launch_stage": "GA" + }, + "instance_pool_id": { + "description": "The optional ID of the instance pool to which the cluster belongs.", + "launch_stage": "GA" + }, + "is_single_node": { + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\nWhen set to true, Databricks will automatically set single node related `custom_tags`, `spark_conf`, and `num_workers`", + "launch_stage": "GA" + }, + "jdbc_port": { + "description": "Port on which Spark JDBC server is listening, in the driver nod. No service will be listeningon\non this port in executor nodes.", + "launch_stage": "GA" + }, + "kind": { + "ref": "compute.Kind", + "launch_stage": "GA" + }, + "last_restarted_time": { + "description": "the timestamp that the cluster was started/restarted", + "launch_stage": "GA" + }, + "last_state_loss_time": { + "description": "Time when the cluster driver last lost its state (due to a restart or driver failure).", + "launch_stage": "GA" + }, + "node_type_id": { + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "launch_stage": "GA" + }, + "num_workers": { + "description": "Number of worker nodes that this cluster should have. A cluster has one Spark Driver\nand `num_workers` Executors for a total of `num_workers` + 1 Spark nodes.\n\nNote: When reading the properties of a cluster, this field reflects the desired number\nof workers rather than the actual current number of workers. For instance, if a cluster\nis resized from 5 to 10 workers, this field will immediately be updated to reflect\nthe target size of 10 workers, whereas the workers listed in `spark_info` will gradually\nincrease from 5 to 10 as the new nodes are provisioned.", + "launch_stage": "GA" + }, + "policy_id": { + "description": "The ID of the cluster policy used to create the cluster if applicable.", + "launch_stage": "GA" + }, + "remote_disk_throughput": { + "description": "If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED disks.", + "launch_stage": "GA" + }, + "runtime_engine": { + "description": "Determines the cluster's runtime engine, either standard or Photon.\n\nThis field is not compatible with legacy `spark_version` values that contain `-photon-`.\nRemove `-photon-` from the `spark_version` and set `runtime_engine` to `PHOTON`.\n\nIf left unspecified, the runtime engine defaults to standard unless the spark_version\ncontains -photon-, in which case Photon will be used.", + "ref": "compute.RuntimeEngine", + "launch_stage": "GA" + }, + "single_user_name": { + "description": "Single user name if data_security_mode is `SINGLE_USER`", + "launch_stage": "GA" + }, + "spark_conf": { + "description": "An object containing a set of optional, user-specified Spark configuration key-value pairs.\nUsers can also pass in a string of extra JVM options to the driver and the executors via\n`spark.driver.extraJavaOptions` and `spark.executor.extraJavaOptions` respectively.", + "launch_stage": "GA" + }, + "spark_context_id": { + "description": "A canonical SparkContext identifier. This value *does* change when the Spark driver restarts.\nThe pair `(cluster_id, spark_context_id)` is a globally unique identifier over all Spark\ncontexts.", + "launch_stage": "GA" + }, + "spark_env_vars": { + "description": "An object containing a set of optional, user-specified environment variable key-value pairs.\nPlease note that key-value pair of the form (X,Y) will be exported as is (i.e.,\n`export X='Y'`) while launching the driver and workers.\n\nIn order to specify an additional set of `SPARK_DAEMON_JAVA_OPTS`, we recommend appending\nthem to `$SPARK_DAEMON_JAVA_OPTS` as shown in the example below. This ensures that all\ndefault databricks managed environmental variables are included as well.\n\nExample Spark environment variables:\n`{\"SPARK_WORKER_MEMORY\": \"28000m\", \"SPARK_LOCAL_DIRS\": \"/local_disk0\"}` or\n`{\"SPARK_DAEMON_JAVA_OPTS\": \"$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true\"}`", + "launch_stage": "GA" + }, + "spark_version": { + "description": "The Spark version of the cluster, e.g. `3.3.x-scala2.11`.\nA list of available Spark versions can be retrieved by using\nthe [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "launch_stage": "GA" + }, + "spec": { + "description": "The spec contains a snapshot of the latest user specified settings that were used to create/edit the cluster.\nNote: not included in the response of the ListClusters API.", + "ref": "compute.ClusterSpec", + "launch_stage": "GA" + }, + "ssh_public_keys": { + "description": "SSH public key contents that will be added to each Spark node in this cluster. The\ncorresponding private keys can be used to login with the user name `ubuntu` on port `2200`.\nUp to 10 keys can be specified.", + "launch_stage": "GA" + }, + "start_time": { + "description": "Time (in epoch milliseconds) when the cluster creation request was received (when the cluster\nentered a `PENDING` state).", + "launch_stage": "GA" + }, + "state": { + "description": "Current state of the cluster.", + "ref": "compute.State", + "launch_stage": "GA" + }, + "state_message": { + "description": "A message associated with the most recent state transition (e.g., the reason why\nthe cluster entered a `TERMINATED` state).", + "launch_stage": "GA" + }, + "terminated_time": { + "description": "Time (in epoch milliseconds) when the cluster was terminated, if applicable.", + "launch_stage": "GA" + }, + "termination_reason": { + "description": "Information about why the cluster was terminated.\nThis field only appears when the cluster is in a `TERMINATING` or `TERMINATED` state.", + "ref": "compute.TerminationReason", + "launch_stage": "GA" + }, + "total_initial_remote_disk_size": { + "description": "If set, what the total initial volume size (in GB) of the remote disks should be. Supported for GCP.", + "launch_stage": "GA" + }, + "use_ml_runtime": { + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\n`effective_spark_version` is determined by `spark_version` (DBR release), this field `use_ml_runtime`, and whether `node_type_id` is gpu node or not.", + "launch_stage": "GA" + }, + "worker_node_type_flexibility": { + "description": "Flexible node type configuration for worker nodes.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "workload_type": { + "ref": "compute.WorkloadType", + "launch_stage": "GA" + } + } + }, + "compute.ClusterEvent": { + "fields": { + "cluster_id": { + "launch_stage": "GA" + }, + "data_plane_event_details": { + "ref": "compute.DataPlaneEventDetails", + "launch_stage": "GA" + }, + "details": { + "ref": "compute.EventDetails", + "launch_stage": "GA" + }, + "timestamp": { + "description": "The timestamp when the event occurred, stored as the number of milliseconds since\nthe Unix epoch. If not provided, this will be assigned by the Timeline service.", + "launch_stage": "GA" + }, + "type": { + "ref": "compute.EventType", + "launch_stage": "GA" + } + } + }, + "compute.ClusterLibraryStatuses": { + "fields": { + "cluster_id": { + "description": "Unique identifier for the cluster.", + "launch_stage": "GA" + }, + "library_statuses": { + "description": "Status of all libraries on the cluster.", + "launch_stage": "GA" + } + } + }, + "compute.ClusterLogConf": { + "description": "Cluster log delivery config", + "fields": { + "dbfs": { + "description": "destination needs to be provided. e.g.\n`{ \"dbfs\" : { \"destination\" : \"dbfs:/home/cluster_log\" } }`", + "ref": "compute.DbfsStorageInfo", + "launch_stage": "GA" + }, + "s3": { + "description": "destination and either the region or endpoint need to be provided. e.g.\n`{ \"s3\": { \"destination\" : \"s3://cluster_log_bucket/prefix\", \"region\" : \"us-west-2\" } }`\nCluster iam role is used to access s3, please make sure the cluster iam role in\n`instance_profile_arn` has permission to write data to the s3 destination.", + "ref": "compute.S3StorageInfo", + "launch_stage": "GA" + }, + "volumes": { + "description": "destination needs to be provided, e.g.\n`{ \"volumes\": { \"destination\": \"/Volumes/catalog/schema/volume/cluster_log\" } }`", + "ref": "compute.VolumesStorageInfo", + "launch_stage": "GA" + } + } + }, + "compute.ClusterPermission": { + "fields": { + "inherited": { + "launch_stage": "GA" + }, + "inherited_from_object": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "compute.ClusterPermissionLevel", + "launch_stage": "GA" + } + } + }, + "compute.ClusterPermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_MANAGE", + "CAN_RESTART", + "CAN_ATTACH_TO" + ] + }, + "compute.ClusterPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "launch_stage": "GA" + }, + "object_type": { + "launch_stage": "GA" + } + } + }, + "compute.ClusterPermissionsDescription": { + "fields": { + "description": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "compute.ClusterPermissionLevel", + "launch_stage": "GA" + } + } + }, + "compute.ClusterPermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "compute.ClusterPolicyAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "compute.ClusterPolicyPermissionLevel", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "compute.ClusterPolicyAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "compute.ClusterPolicyPermission": { + "fields": { + "inherited": { + "launch_stage": "GA" + }, + "inherited_from_object": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "compute.ClusterPolicyPermissionLevel", + "launch_stage": "GA" + } + } + }, + "compute.ClusterPolicyPermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_USE" + ] + }, + "compute.ClusterPolicyPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "launch_stage": "GA" + }, + "object_type": { + "launch_stage": "GA" + } + } + }, + "compute.ClusterPolicyPermissionsDescription": { + "fields": { + "description": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "compute.ClusterPolicyPermissionLevel", + "launch_stage": "GA" + } + } + }, + "compute.ClusterPolicyPermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "compute.ClusterSettingsChange": { + "description": "Represents a change to the cluster settings required for the cluster\nto become compliant with its policy.", + "fields": { + "field": { + "description": "The field where this change would be made.", + "launch_stage": "GA" + }, + "new_value": { + "description": "The new value of this field after enforcing policy compliance\n(either a number, a boolean, or a string) converted to a string.\nThis is intended to be read by a human. The typed new value of this field\ncan be retrieved by reading the settings field in the API response.", + "launch_stage": "GA" + }, + "previous_value": { + "description": "The previous value of this field before enforcing policy compliance\n(either a number, a boolean, or a string) converted to a string.\nThis is intended to be read by a human. The type of the field\ncan be retrieved by reading the settings field in the API response.", + "launch_stage": "GA" + } + } + }, + "compute.ClusterSize": { + "fields": { + "autoscale": { + "description": "Parameters needed in order to automatically scale clusters up and down based on load.\nNote: autoscaling works best with DB runtime versions 3.0 or later.", + "ref": "compute.AutoScale", + "launch_stage": "GA" + }, + "num_workers": { + "description": "Number of worker nodes that this cluster should have. A cluster has one Spark Driver\nand `num_workers` Executors for a total of `num_workers` + 1 Spark nodes.\n\nNote: When reading the properties of a cluster, this field reflects the desired number\nof workers rather than the actual current number of workers. For instance, if a cluster\nis resized from 5 to 10 workers, this field will immediately be updated to reflect\nthe target size of 10 workers, whereas the workers listed in `spark_info` will gradually\nincrease from 5 to 10 as the new nodes are provisioned.", + "launch_stage": "GA" + } + } + }, + "compute.ClusterSource": { + "description": "Determines whether the cluster was created by a user through the UI, created by the Databricks\nJobs Scheduler, or through an API request.\nThis is the same as cluster_creator, but read only.", + "enum": [ + "UI", + "JOB", + "API", + "SQL", + "MODELS", + "PIPELINE", + "PIPELINE_MAINTENANCE" + ], + "enum_launch_stages": { + "API": "GA", + "JOB": "GA", + "MODELS": "GA", + "PIPELINE": "GA", + "PIPELINE_MAINTENANCE": "GA", + "SQL": "GA", + "UI": "GA" + } + }, + "compute.ClusterSpec": { + "description": "Contains a snapshot of the latest user specified settings that were used to create/edit the cluster.", + "fields": { + "apply_policy_default_values": { + "description": "When set to true, fixed and default values from the policy will be used for fields that are omitted. When set to false, only fixed values from the policy will be applied.", + "launch_stage": "GA" + }, + "autoscale": { + "description": "Parameters needed in order to automatically scale clusters up and down based on load.\nNote: autoscaling works best with DB runtime versions 3.0 or later.", + "ref": "compute.AutoScale", + "launch_stage": "GA" + }, + "autotermination_minutes": { + "description": "Automatically terminates the cluster after it is inactive for this time in minutes. If not set,\nthis cluster will not be automatically terminated. If specified, the threshold must be between\n10 and 10000 minutes.\nUsers can also set this value to 0 to explicitly disable automatic termination.", + "launch_stage": "GA" + }, + "aws_attributes": { + "description": "Attributes related to clusters running on Amazon Web Services.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AwsAttributes", + "launch_stage": "GA" + }, + "azure_attributes": { + "description": "Attributes related to clusters running on Microsoft Azure.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AzureAttributes", + "launch_stage": "GA" + }, + "cluster_log_conf": { + "description": "The configuration for delivering spark logs to a long-term storage destination.\nThree kinds of destinations (DBFS, S3 and Unity Catalog volumes) are supported. Only one destination can be specified\nfor one cluster. If the conf is given, the logs will be delivered to the destination every\n`5 mins`. The destination of driver logs is `$destination/$clusterId/driver`, while\nthe destination of executor logs is `$destination/$clusterId/executor`.", + "ref": "compute.ClusterLogConf", + "launch_stage": "GA" + }, + "cluster_name": { + "description": "Cluster name requested by the user. This doesn't have to be unique.\nIf not specified at creation, the cluster name will be an empty string.\nFor job clusters, the cluster name is automatically set based on the job and job run IDs.", + "launch_stage": "GA" + }, + "custom_tags": { + "description": "Additional tags for cluster resources. Databricks will tag all cluster resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags\n\n- Clusters can only reuse cloud resources if the resources' tags are a subset of the cluster tags", + "launch_stage": "GA" + }, + "data_security_mode": { + "ref": "compute.DataSecurityMode", + "launch_stage": "GA" + }, + "dependency_mode": { + "description": "Controls dependency configuration for the cluster.", + "ref": "compute.DependencyMode", + "launch_stage": "PUBLIC_BETA" + }, + "docker_image": { + "description": "Custom docker image BYOC", + "ref": "compute.DockerImage", + "launch_stage": "GA" + }, + "driver_instance_pool_id": { + "description": "The optional ID of the instance pool for the driver of the cluster belongs.\nThe pool cluster uses the instance pool with id (instance_pool_id) if the driver pool is not\nassigned.", + "launch_stage": "GA" + }, + "driver_node_type_flexibility": { + "description": "Flexible node type configuration for the driver node.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "driver_node_type_id": { + "description": "The node type of the Spark driver.\nNote that this field is optional; if unset, the driver node type will be set as the same value\nas `node_type_id` defined above.", + "launch_stage": "GA" + }, + "enable_elastic_disk": { + "description": "Autoscaling Local Storage: when enabled, this cluster will dynamically acquire additional disk\nspace when its Spark workers are running low on disk space.", + "launch_stage": "GA" + }, + "enable_local_disk_encryption": { + "description": "Whether to enable LUKS on cluster VMs' local disks", + "launch_stage": "GA" + }, + "gcp_attributes": { + "description": "Attributes related to clusters running on Google Cloud Platform.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.GcpAttributes", + "launch_stage": "GA" + }, + "init_scripts": { + "description": "The configuration for storing init scripts. Any number of destinations can be specified.\nThe scripts are executed sequentially in the order provided.\nIf `cluster_log_conf` is specified, init script logs are sent to `\u003cdestination\u003e/\u003ccluster-ID\u003e/init_scripts`.", + "launch_stage": "GA" + }, + "instance_pool_id": { + "description": "The optional ID of the instance pool to which the cluster belongs.", + "launch_stage": "GA" + }, + "is_single_node": { + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\nWhen set to true, Databricks will automatically set single node related `custom_tags`, `spark_conf`, and `num_workers`", + "launch_stage": "GA" + }, + "kind": { + "ref": "compute.Kind", + "launch_stage": "GA" + }, + "node_type_id": { + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "launch_stage": "GA" + }, + "num_workers": { + "description": "Number of worker nodes that this cluster should have. A cluster has one Spark Driver\nand `num_workers` Executors for a total of `num_workers` + 1 Spark nodes.\n\nNote: When reading the properties of a cluster, this field reflects the desired number\nof workers rather than the actual current number of workers. For instance, if a cluster\nis resized from 5 to 10 workers, this field will immediately be updated to reflect\nthe target size of 10 workers, whereas the workers listed in `spark_info` will gradually\nincrease from 5 to 10 as the new nodes are provisioned.", + "launch_stage": "GA" + }, + "policy_id": { + "description": "The ID of the cluster policy used to create the cluster if applicable.", + "launch_stage": "GA" + }, + "remote_disk_throughput": { + "description": "If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED disks.", + "launch_stage": "GA" + }, + "runtime_engine": { + "description": "Determines the cluster's runtime engine, either standard or Photon.\n\nThis field is not compatible with legacy `spark_version` values that contain `-photon-`.\nRemove `-photon-` from the `spark_version` and set `runtime_engine` to `PHOTON`.\n\nIf left unspecified, the runtime engine defaults to standard unless the spark_version\ncontains -photon-, in which case Photon will be used.", + "ref": "compute.RuntimeEngine", + "launch_stage": "GA" + }, + "single_user_name": { + "description": "Single user name if data_security_mode is `SINGLE_USER`", + "launch_stage": "GA" + }, + "spark_conf": { + "description": "An object containing a set of optional, user-specified Spark configuration key-value pairs.\nUsers can also pass in a string of extra JVM options to the driver and the executors via\n`spark.driver.extraJavaOptions` and `spark.executor.extraJavaOptions` respectively.", + "launch_stage": "GA" + }, + "spark_env_vars": { + "description": "An object containing a set of optional, user-specified environment variable key-value pairs.\nPlease note that key-value pair of the form (X,Y) will be exported as is (i.e.,\n`export X='Y'`) while launching the driver and workers.\n\nIn order to specify an additional set of `SPARK_DAEMON_JAVA_OPTS`, we recommend appending\nthem to `$SPARK_DAEMON_JAVA_OPTS` as shown in the example below. This ensures that all\ndefault databricks managed environmental variables are included as well.\n\nExample Spark environment variables:\n`{\"SPARK_WORKER_MEMORY\": \"28000m\", \"SPARK_LOCAL_DIRS\": \"/local_disk0\"}` or\n`{\"SPARK_DAEMON_JAVA_OPTS\": \"$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true\"}`", + "launch_stage": "GA" + }, + "spark_version": { + "description": "The Spark version of the cluster, e.g. `3.3.x-scala2.11`.\nA list of available Spark versions can be retrieved by using\nthe [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "launch_stage": "GA" + }, + "ssh_public_keys": { + "description": "SSH public key contents that will be added to each Spark node in this cluster. The\ncorresponding private keys can be used to login with the user name `ubuntu` on port `2200`.\nUp to 10 keys can be specified.", + "launch_stage": "GA" + }, + "total_initial_remote_disk_size": { + "description": "If set, what the total initial volume size (in GB) of the remote disks should be. Supported for GCP.", + "launch_stage": "GA" + }, + "use_ml_runtime": { + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\n`effective_spark_version` is determined by `spark_version` (DBR release), this field `use_ml_runtime`, and whether `node_type_id` is gpu node or not.", + "launch_stage": "GA" + }, + "worker_node_type_flexibility": { + "description": "Flexible node type configuration for worker nodes.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "workload_type": { + "ref": "compute.WorkloadType", + "launch_stage": "GA" + } + } + }, + "compute.ClusterStatus": { + "fields": { + "cluster_id": { + "description": "Unique identifier of the cluster whose status should be retrieved.", + "launch_stage": "GA" + } + } + }, + "compute.Command": { + "fields": { + "clusterId": { + "description": "Running cluster id", + "launch_stage": "GA" + }, + "command": { + "description": "Executable code", + "launch_stage": "GA" + }, + "contextId": { + "description": "Running context id", + "launch_stage": "GA" + }, + "language": { + "ref": "compute.Language", + "launch_stage": "GA" + } + } + }, + "compute.CommandStatus": { + "enum": [ + "Cancelled", + "Cancelling", + "Error", + "Finished", + "Queued", + "Running" + ], + "enum_launch_stages": { + "Cancelled": "GA", + "Cancelling": "GA", + "Error": "GA", + "Finished": "GA", + "Queued": "GA", + "Running": "GA" + } + }, + "compute.CommandStatusRequest": { + "fields": { + "clusterId": { + "launch_stage": "GA" + }, + "commandId": { + "launch_stage": "GA" + }, + "contextId": { + "launch_stage": "GA" + } + } + }, + "compute.CommandStatusResponse": { + "fields": { + "id": { + "launch_stage": "GA" + }, + "results": { + "ref": "compute.Results", + "launch_stage": "GA" + }, + "status": { + "ref": "compute.CommandStatus", + "launch_stage": "GA" + } + } + }, + "compute.ConfidentialComputeType": { + "description": "Confidential computing technology for GCP instances.\nAligns with gcloud's --confidential-compute-type flag and the REST API's\nconfidentialInstanceConfig.confidentialInstanceType field.\nSee: https://cloud.google.com/confidential-computing/confidential-vm/docs/create-a-confidential-vm-instance", + "enum": [ + "CONFIDENTIAL_COMPUTE_TYPE_NONE", + "SEV_SNP" + ], + "enum_launch_stages": { + "CONFIDENTIAL_COMPUTE_TYPE_NONE": "PRIVATE_PREVIEW", + "SEV_SNP": "PRIVATE_PREVIEW" + } + }, + "compute.ContextStatus": { + "enum": [ + "Running", + "Pending", + "Error" + ], + "enum_launch_stages": { + "Error": "GA", + "Pending": "GA", + "Running": "GA" + } + }, + "compute.ContextStatusRequest": { + "fields": { + "clusterId": { + "launch_stage": "GA" + }, + "contextId": { + "launch_stage": "GA" + } + } + }, + "compute.ContextStatusResponse": { + "fields": { + "id": { + "launch_stage": "GA" + }, + "status": { + "ref": "compute.ContextStatus", + "launch_stage": "GA" + } + } + }, + "compute.CreateCluster": { + "fields": { + "apply_policy_default_values": { + "description": "When set to true, fixed and default values from the policy will be used for fields that are omitted.\nWhen set to false, only fixed values from the policy will be applied.", + "launch_stage": "GA" + }, + "autoscale": { + "description": "Parameters needed in order to automatically scale clusters up and down based on load.\nNote: autoscaling works best with DB runtime versions 3.0 or later.", + "ref": "compute.AutoScale", + "launch_stage": "GA" + }, + "autotermination_minutes": { + "description": "Automatically terminates the cluster after it is inactive for this time in minutes. If not set,\nthis cluster will not be automatically terminated. If specified, the threshold must be between\n10 and 10000 minutes.\nUsers can also set this value to 0 to explicitly disable automatic termination.", + "launch_stage": "GA" + }, + "aws_attributes": { + "description": "Attributes related to clusters running on Amazon Web Services.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AwsAttributes", + "launch_stage": "GA" + }, + "azure_attributes": { + "description": "Attributes related to clusters running on Microsoft Azure.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AzureAttributes", + "launch_stage": "GA" + }, + "clone_from": { + "description": "When specified, this clones libraries from a source cluster during the creation of a new cluster.", + "ref": "compute.CloneCluster", + "launch_stage": "GA" + }, + "cluster_log_conf": { + "description": "The configuration for delivering spark logs to a long-term storage destination.\nThree kinds of destinations (DBFS, S3 and Unity Catalog volumes) are supported. Only one destination can be specified\nfor one cluster. If the conf is given, the logs will be delivered to the destination every\n`5 mins`. The destination of driver logs is `$destination/$clusterId/driver`, while\nthe destination of executor logs is `$destination/$clusterId/executor`.", + "ref": "compute.ClusterLogConf", + "launch_stage": "GA" + }, + "cluster_name": { + "description": "Cluster name requested by the user. This doesn't have to be unique.\nIf not specified at creation, the cluster name will be an empty string.\nFor job clusters, the cluster name is automatically set based on the job and job run IDs.", + "launch_stage": "GA" + }, + "custom_tags": { + "description": "Additional tags for cluster resources. Databricks will tag all cluster resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags\n\n- Clusters can only reuse cloud resources if the resources' tags are a subset of the cluster tags", + "launch_stage": "GA" + }, + "data_security_mode": { + "ref": "compute.DataSecurityMode", + "launch_stage": "GA" + }, + "dependency_mode": { + "description": "Controls dependency configuration for the cluster.", + "ref": "compute.DependencyMode", + "launch_stage": "PUBLIC_BETA" + }, + "docker_image": { + "description": "Custom docker image BYOC", + "ref": "compute.DockerImage", + "launch_stage": "GA" + }, + "driver_instance_pool_id": { + "description": "The optional ID of the instance pool for the driver of the cluster belongs.\nThe pool cluster uses the instance pool with id (instance_pool_id) if the driver pool is not\nassigned.", + "launch_stage": "GA" + }, + "driver_node_type_flexibility": { + "description": "Flexible node type configuration for the driver node.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "driver_node_type_id": { + "description": "The node type of the Spark driver.\nNote that this field is optional; if unset, the driver node type will be set as the same value\nas `node_type_id` defined above.", + "launch_stage": "GA" + }, + "enable_elastic_disk": { + "description": "Autoscaling Local Storage: when enabled, this cluster will dynamically acquire additional disk\nspace when its Spark workers are running low on disk space.", + "launch_stage": "GA" + }, + "enable_local_disk_encryption": { + "description": "Whether to enable LUKS on cluster VMs' local disks", + "launch_stage": "GA" + }, + "gcp_attributes": { + "description": "Attributes related to clusters running on Google Cloud Platform.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.GcpAttributes", + "launch_stage": "GA" + }, + "init_scripts": { + "description": "The configuration for storing init scripts. Any number of destinations can be specified.\nThe scripts are executed sequentially in the order provided.\nIf `cluster_log_conf` is specified, init script logs are sent to `\u003cdestination\u003e/\u003ccluster-ID\u003e/init_scripts`.", + "launch_stage": "GA" + }, + "instance_pool_id": { + "description": "The optional ID of the instance pool to which the cluster belongs.", + "launch_stage": "GA" + }, + "is_single_node": { + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\nWhen set to true, Databricks will automatically set single node related `custom_tags`, `spark_conf`, and `num_workers`", + "launch_stage": "GA" + }, + "kind": { + "ref": "compute.Kind", + "launch_stage": "GA" + }, + "node_type_id": { + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "launch_stage": "GA" + }, + "num_workers": { + "description": "Number of worker nodes that this cluster should have. A cluster has one Spark Driver\nand `num_workers` Executors for a total of `num_workers` + 1 Spark nodes.\n\nNote: When reading the properties of a cluster, this field reflects the desired number\nof workers rather than the actual current number of workers. For instance, if a cluster\nis resized from 5 to 10 workers, this field will immediately be updated to reflect\nthe target size of 10 workers, whereas the workers listed in `spark_info` will gradually\nincrease from 5 to 10 as the new nodes are provisioned.", + "launch_stage": "GA" + }, + "policy_id": { + "description": "The ID of the cluster policy used to create the cluster if applicable.", + "launch_stage": "GA" + }, + "remote_disk_throughput": { + "description": "If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED disks.", + "launch_stage": "GA" + }, + "runtime_engine": { + "description": "Determines the cluster's runtime engine, either standard or Photon.\n\nThis field is not compatible with legacy `spark_version` values that contain `-photon-`.\nRemove `-photon-` from the `spark_version` and set `runtime_engine` to `PHOTON`.\n\nIf left unspecified, the runtime engine defaults to standard unless the spark_version\ncontains -photon-, in which case Photon will be used.", + "ref": "compute.RuntimeEngine", + "launch_stage": "GA" + }, + "single_user_name": { + "description": "Single user name if data_security_mode is `SINGLE_USER`", + "launch_stage": "GA" + }, + "spark_conf": { + "description": "An object containing a set of optional, user-specified Spark configuration key-value pairs.\nUsers can also pass in a string of extra JVM options to the driver and the executors via\n`spark.driver.extraJavaOptions` and `spark.executor.extraJavaOptions` respectively.", + "launch_stage": "GA" + }, + "spark_env_vars": { + "description": "An object containing a set of optional, user-specified environment variable key-value pairs.\nPlease note that key-value pair of the form (X,Y) will be exported as is (i.e.,\n`export X='Y'`) while launching the driver and workers.\n\nIn order to specify an additional set of `SPARK_DAEMON_JAVA_OPTS`, we recommend appending\nthem to `$SPARK_DAEMON_JAVA_OPTS` as shown in the example below. This ensures that all\ndefault databricks managed environmental variables are included as well.\n\nExample Spark environment variables:\n`{\"SPARK_WORKER_MEMORY\": \"28000m\", \"SPARK_LOCAL_DIRS\": \"/local_disk0\"}` or\n`{\"SPARK_DAEMON_JAVA_OPTS\": \"$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true\"}`", + "launch_stage": "GA" + }, + "spark_version": { + "description": "The Spark version of the cluster, e.g. `3.3.x-scala2.11`.\nA list of available Spark versions can be retrieved by using\nthe [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "launch_stage": "GA" + }, + "ssh_public_keys": { + "description": "SSH public key contents that will be added to each Spark node in this cluster. The\ncorresponding private keys can be used to login with the user name `ubuntu` on port `2200`.\nUp to 10 keys can be specified.", + "launch_stage": "GA" + }, + "total_initial_remote_disk_size": { + "description": "If set, what the total initial volume size (in GB) of the remote disks should be. Supported for GCP.", + "launch_stage": "GA" + }, + "use_ml_runtime": { + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\n`effective_spark_version` is determined by `spark_version` (DBR release), this field `use_ml_runtime`, and whether `node_type_id` is gpu node or not.", + "launch_stage": "GA" + }, + "worker_node_type_flexibility": { + "description": "Flexible node type configuration for worker nodes.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "workload_type": { + "ref": "compute.WorkloadType", + "launch_stage": "GA" + } + } + }, + "compute.CreateClusterResponse": { + "fields": { + "cluster_id": { + "launch_stage": "GA" + } + } + }, + "compute.CreateContext": { + "fields": { + "clusterId": { + "description": "Running cluster id", + "launch_stage": "GA" + }, + "language": { + "ref": "compute.Language", + "launch_stage": "GA" + } + } + }, + "compute.CreateInstancePool": { + "fields": { + "aws_attributes": { + "description": "Attributes related to instance pools running on Amazon Web Services.\nIf not specified at pool creation, a set of default values will be used.", + "ref": "compute.InstancePoolAwsAttributes", + "launch_stage": "GA" + }, + "azure_attributes": { + "description": "Attributes related to instance pools running on Azure.\nIf not specified at pool creation, a set of default values will be used.", + "ref": "compute.InstancePoolAzureAttributes", + "launch_stage": "GA" + }, + "custom_tags": { + "description": "Additional tags for pool resources. Databricks will tag all pool resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags", + "launch_stage": "GA" + }, + "disk_spec": { + "description": "Defines the specification of the disks that will be attached to all spark containers.", + "ref": "compute.DiskSpec", + "launch_stage": "GA" + }, + "enable_elastic_disk": { + "description": "Autoscaling Local Storage: when enabled, this instances in this pool will dynamically acquire\nadditional disk space when its Spark workers are running low on disk space. In AWS, this\nfeature requires specific AWS permissions to function correctly - refer to the User Guide for\nmore details.", + "launch_stage": "GA" + }, + "gcp_attributes": { + "description": "Attributes related to instance pools running on Google Cloud Platform.\nIf not specified at pool creation, a set of default values will be used.", + "ref": "compute.InstancePoolGcpAttributes", + "launch_stage": "GA" + }, + "idle_instance_autotermination_minutes": { + "description": "Automatically terminates the extra instances in the pool cache after they are inactive for this\ntime in minutes if min_idle_instances requirement is already met. If not set, the extra pool\ninstances will be automatically terminated after a default timeout. If specified, the\nthreshold must be between 0 and 10000 minutes.\nUsers can also set this value to 0 to instantly remove idle instances from the cache if\nmin cache size could still hold.", + "launch_stage": "GA" + }, + "instance_pool_name": { + "description": "Pool name requested by the user. Pool name must be unique. Length must be between 1 and 100\ncharacters.", + "launch_stage": "GA" + }, + "max_capacity": { + "description": "Maximum number of outstanding instances to keep in the pool, including both instances used by\nclusters and idle instances. Clusters that require further instance provisioning will fail during\nupsize requests.", + "launch_stage": "GA" + }, + "min_idle_instances": { + "description": "Minimum number of idle instances to keep in the instance pool", + "launch_stage": "GA" + }, + "node_type_flexibility": { + "description": "Flexible node type configuration for the pool.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "node_type_id": { + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "launch_stage": "GA" + }, + "preloaded_docker_images": { + "description": "Custom Docker Image BYOC", + "launch_stage": "GA" + }, + "preloaded_spark_versions": { + "description": "A list containing at most one preloaded Spark image version for the pool. Pool-backed clusters started\nwith the preloaded Spark version will start faster. A list of available Spark versions\ncan be retrieved by using the [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "launch_stage": "GA" + }, + "remote_disk_throughput": { + "description": "If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED types.", + "launch_stage": "GA" + }, + "total_initial_remote_disk_size": { + "description": "If set, what the total initial volume size (in GB) of the remote disks should be. Currently only supported for GCP HYPERDISK_BALANCED types.", + "launch_stage": "GA" + } + } + }, + "compute.CreateInstancePoolResponse": { + "fields": { + "instance_pool_id": { + "description": "The ID of the created instance pool.", + "launch_stage": "GA" + } + } + }, + "compute.CreatePolicy": { + "fields": { + "definition": { + "description": "Policy definition document expressed in [Databricks Cluster Policy Definition Language](https://docs.databricks.com/administration-guide/clusters/policy-definition.html).", + "launch_stage": "GA" + }, + "description": { + "description": "Additional human-readable description of the cluster policy.", + "launch_stage": "GA" + }, + "libraries": { + "description": "A list of libraries to be installed on the next cluster restart that uses this policy. The maximum number of libraries is 500.", + "launch_stage": "GA" + }, + "max_clusters_per_user": { + "description": "Max number of clusters per user that can be active using this policy. If not present, there is no max limit.", + "launch_stage": "GA" + }, + "name": { + "description": "Cluster Policy name requested by the user. This has to be unique. Length must be between 1 and 100\ncharacters.", + "launch_stage": "GA" + }, + "policy_family_definition_overrides": { + "description": "Policy definition JSON document expressed in [Databricks Policy Definition Language](https://docs.databricks.com/administration-guide/clusters/policy-definition.html).\nThe JSON document must be passed as a string and cannot be embedded in the requests.\n\nYou can use this to customize the policy definition inherited from the policy family.\nPolicy rules specified here are merged into the inherited policy definition.", + "launch_stage": "GA" + }, + "policy_family_id": { + "description": "ID of the policy family. The cluster policy's policy definition inherits the policy\nfamily's policy definition.\n\nCannot be used with `definition`. Use `policy_family_definition_overrides` instead to\ncustomize the policy definition.", + "launch_stage": "GA" + } + } + }, + "compute.CreatePolicyResponse": { + "fields": { + "policy_id": { + "description": "Canonical unique identifier for the cluster policy.", + "launch_stage": "GA" + } + } + }, + "compute.CreateResponse": { + "fields": { + "script_id": { + "description": "The global init script ID.", + "launch_stage": "GA" + } + } + }, + "compute.Created": { + "fields": { + "id": { + "launch_stage": "GA" + } + } + }, + "compute.CustomPolicyTag": { + "fields": { + "key": { + "description": "The key of the tag.\n- Must be unique among all custom tags of the same policy\n- Cannot be “budget-policy-name”, “budget-policy-id” or \"budget-policy-resolution-result\" -\nthese tags are preserved.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "value": { + "description": "The value of the tag.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "compute.DataPlaneEventDetails": { + "fields": { + "event_type": { + "ref": "compute.DataPlaneEventDetailsEventType", + "launch_stage": "GA" + }, + "executor_failures": { + "launch_stage": "GA" + }, + "host_id": { + "launch_stage": "GA" + }, + "timestamp": { + "launch_stage": "GA" + } + } + }, + "compute.DataPlaneEventDetailsEventType": { + "enum": [ + "NODE_BLACKLISTED", + "NODE_EXCLUDED_DECOMMISSIONED" + ], + "enum_launch_stages": { + "NODE_BLACKLISTED": "GA", + "NODE_EXCLUDED_DECOMMISSIONED": "GA" + } + }, + "compute.DataSecurityMode": { + "description": "Data security mode decides what data governance model to use when accessing data\nfrom a cluster.\n\n* `DATA_SECURITY_MODE_AUTO`: Databricks will choose the most appropriate access mode depending on your compute configuration.\n* `DATA_SECURITY_MODE_STANDARD`: A secure cluster that can be shared by multiple users. Cluster users are fully isolated so that they cannot see each other’s data and credentials. Most data governance features are supported in this mode. But programming languages and cluster features might be limited.\n* `DATA_SECURITY_MODE_DEDICATED`: A secure cluster that can only be exclusively used by a single user specified in `single_user_name`. Most programming languages, cluster features and data governance features are available in this mode.\n\nThe following modes are legacy aliases for the above modes:\n\n* `USER_ISOLATION`: Legacy alias for `DATA_SECURITY_MODE_STANDARD`.\n* `SINGLE_USER`: Legacy alias for `DATA_SECURITY_MODE_DEDICATED`.\n\nThe following modes are deprecated starting with Databricks Runtime 15.0 and\nwill be removed for future Databricks Runtime versions:\n\n* `LEGACY_TABLE_ACL`: This mode is for users migrating from legacy Table ACL clusters.\n* `LEGACY_PASSTHROUGH`: This mode is for users migrating from legacy Passthrough on high concurrency clusters.\n* `LEGACY_SINGLE_USER`: This mode is for users migrating from legacy Passthrough on standard clusters.\n* `LEGACY_SINGLE_USER_STANDARD`: This mode provides a way that doesn’t have UC nor passthrough enabled.", + "enum": [ + "NONE", + "SINGLE_USER", + "USER_ISOLATION", + "LEGACY_TABLE_ACL", + "LEGACY_PASSTHROUGH", + "LEGACY_SINGLE_USER", + "LEGACY_SINGLE_USER_STANDARD", + "DATA_SECURITY_MODE_STANDARD", + "DATA_SECURITY_MODE_DEDICATED", + "DATA_SECURITY_MODE_AUTO" + ], + "enum_launch_stages": { + "DATA_SECURITY_MODE_AUTO": "GA", + "DATA_SECURITY_MODE_DEDICATED": "GA", + "DATA_SECURITY_MODE_STANDARD": "GA", + "LEGACY_PASSTHROUGH": "GA", + "LEGACY_SINGLE_USER": "GA", + "LEGACY_SINGLE_USER_STANDARD": "GA", + "LEGACY_TABLE_ACL": "GA", + "NONE": "GA", + "SINGLE_USER": "GA", + "USER_ISOLATION": "GA" + }, + "enum_descriptions": { + "DATA_SECURITY_MODE_AUTO": "\u003cDatabricks\u003e will choose the most appropriate access mode depending on your compute configuration.", + "DATA_SECURITY_MODE_DEDICATED": "A secure cluster that can only be exclusively used by a single user specified in `single_user_name`. Most programming languages, cluster features and data governance features are available in this mode.", + "DATA_SECURITY_MODE_STANDARD": "A secure cluster that can be shared by multiple users. Cluster users are fully isolated so that they cannot see each other’s data and credentials. Most data governance features are supported in this mode. But programming languages and cluster features might be limited.", + "LEGACY_PASSTHROUGH": "This mode is for users migrating from legacy Passthrough on high concurrency clusters.", + "LEGACY_SINGLE_USER": "This mode is for users migrating from legacy Passthrough on standard clusters.", + "LEGACY_SINGLE_USER_STANDARD": "This mode provides a way that doesn’t have UC nor passthrough enabled.", + "LEGACY_TABLE_ACL": "This mode is for users migrating from legacy Table ACL clusters.", + "SINGLE_USER": "Legacy alias for `DATA_SECURITY_MODE_DEDICATED`.", + "USER_ISOLATION": "Legacy alias for `DATA_SECURITY_MODE_STANDARD`." + } + }, + "compute.DbfsStorageInfo": { + "description": "A storage location in DBFS", + "fields": { + "destination": { + "description": "dbfs destination, e.g. `dbfs:/my/path`", + "launch_stage": "GA" + } + } + }, + "compute.DeleteCluster": { + "fields": { + "cluster_id": { + "description": "The cluster to be terminated.", + "launch_stage": "GA" + } + } + }, + "compute.DeleteClusterResponse": {}, + "compute.DeleteGlobalInitScriptRequest": {}, + "compute.DeleteInstancePool": { + "fields": { + "instance_pool_id": { + "description": "The instance pool to be terminated.", + "launch_stage": "GA" + } + } + }, + "compute.DeleteInstancePoolResponse": {}, + "compute.DeletePolicy": { + "fields": { + "policy_id": { + "description": "The ID of the policy to delete.", + "launch_stage": "GA" + } + } + }, + "compute.DeletePolicyResponse": {}, + "compute.DeleteResponse": {}, + "compute.DependencyMode": { + "description": "Controls dependency configuration for the cluster.\n\n* `DEPENDENCY_MODE_AUTO`: Databricks will choose the most appropriate dependency mode based on your compute configuration.\n* `DEPENDENCY_MODE_ENVIRONMENTS`: Enables a unified dependency management experience across classic and serverless, resulting in increased stability and performance. Supported only on DBR 19+ in Standard access mode.\n* `DEPENDENCY_MODE_CLUSTER_LIBRARIES`: Legacy mode: dependencies come from cluster libraries and init scripts.", + "enum": [ + "DEPENDENCY_MODE_ENVIRONMENTS", + "DEPENDENCY_MODE_CLUSTER_LIBRARIES", + "DEPENDENCY_MODE_AUTO" + ], + "enum_launch_stages": { + "DEPENDENCY_MODE_AUTO": "PUBLIC_BETA", + "DEPENDENCY_MODE_CLUSTER_LIBRARIES": "PUBLIC_BETA", + "DEPENDENCY_MODE_ENVIRONMENTS": "PUBLIC_BETA" + }, + "enum_descriptions": { + "DEPENDENCY_MODE_AUTO": "\u003cDatabricks\u003e will choose the most appropriate dependency mode based on your compute configuration.", + "DEPENDENCY_MODE_CLUSTER_LIBRARIES": "Legacy mode: dependencies come from cluster libraries and init scripts.", + "DEPENDENCY_MODE_ENVIRONMENTS": "Enables a unified dependency management experience across classic and serverless, resulting in increased stability and performance. Supported only on DBR 19+ in Standard access mode." + } + }, + "compute.DestroyContext": { + "fields": { + "clusterId": { + "launch_stage": "GA" + }, + "contextId": { + "launch_stage": "GA" + } + } + }, + "compute.DestroyResponse": {}, + "compute.DiskSpec": { + "description": "Describes the disks that are launched for each instance in the spark cluster.\nFor example, if the cluster has 3 instances, each instance is configured to launch\n2 disks, 100 GiB each, then Databricks will launch a total of 6 disks,\n100 GiB each, for this cluster.", + "fields": { + "disk_count": { + "description": "The number of disks launched for each instance:\n- This feature is only enabled for supported node types.\n- Users can choose up to the limit of the disks supported by the node type.\n- For node types with no OS disk, at least one disk must be specified;\notherwise, cluster creation will fail.\n\nIf disks are attached, Databricks will configure Spark to use only the disks for\nscratch storage, because heterogenously sized scratch devices can lead to inefficient disk\nutilization. If no disks are attached, Databricks will configure Spark to use\ninstance store disks.\n\nNote: If disks are specified, then the Spark configuration\n`spark.local.dir` will be overridden.\n\nDisks will be mounted at:\n- For AWS: `/ebs0`, `/ebs1`, and etc.\n- For Azure: `/remote_volume0`, `/remote_volume1`, and etc.", + "launch_stage": "GA" + }, + "disk_iops": { + "launch_stage": "GA" + }, + "disk_size": { + "description": "The size of each disk (in GiB) launched for each instance.\nValues must fall into the supported range for a particular instance type.\n\nFor AWS:\n- General Purpose SSD: 100 - 4096 GiB\n- Throughput Optimized HDD: 500 - 4096 GiB\n\nFor Azure:\n- Premium LRS (SSD): 1 - 1023 GiB\n- Standard LRS (HDD): 1- 1023 GiB", + "launch_stage": "GA" + }, + "disk_throughput": { + "launch_stage": "GA" + }, + "disk_type": { + "description": "The type of disks that will be launched with this cluster.", + "ref": "compute.DiskType", + "launch_stage": "GA" + } + } + }, + "compute.DiskType": { + "description": "Describes the disk type.", + "fields": { + "azure_disk_volume_type": { + "ref": "compute.DiskTypeAzureDiskVolumeType", + "launch_stage": "GA" + }, + "ebs_volume_type": { + "ref": "compute.DiskTypeEbsVolumeType", + "launch_stage": "GA" + } + } + }, + "compute.DiskTypeAzureDiskVolumeType": { + "description": "All Azure Disk types that Databricks supports.\nSee https://docs.microsoft.com/en-us/azure/storage/storage-about-disks-and-vhds-linux#types-of-disks", + "enum": [ + "PREMIUM_LRS", + "STANDARD_LRS" + ], + "enum_launch_stages": { + "PREMIUM_LRS": "GA", + "STANDARD_LRS": "GA" + } + }, + "compute.DiskTypeEbsVolumeType": { + "description": "All EBS volume types that Databricks supports.\nSee https://aws.amazon.com/ebs/details/ for details.", + "enum": [ + "GENERAL_PURPOSE_SSD", + "THROUGHPUT_OPTIMIZED_HDD" + ], + "enum_launch_stages": { + "GENERAL_PURPOSE_SSD": "GA", + "THROUGHPUT_OPTIMIZED_HDD": "GA" + } + }, + "compute.DockerBasicAuth": { + "fields": { + "password": { + "description": "Password of the user", + "launch_stage": "GA" + }, + "username": { + "description": "Name of the user", + "launch_stage": "GA" + } + } + }, + "compute.DockerImage": { + "fields": { + "basic_auth": { + "description": "Basic auth with username and password", + "ref": "compute.DockerBasicAuth", + "launch_stage": "GA" + }, + "url": { + "description": "URL of the docker image.", + "launch_stage": "GA" + } + } + }, + "compute.EbsVolumeType": { + "description": "All EBS volume types that Databricks supports.\nSee https://aws.amazon.com/ebs/details/ for details.", + "enum": [ + "GENERAL_PURPOSE_SSD", + "THROUGHPUT_OPTIMIZED_HDD" + ], + "enum_launch_stages": { + "GENERAL_PURPOSE_SSD": "GA", + "THROUGHPUT_OPTIMIZED_HDD": "GA" + } + }, + "compute.EditCluster": { + "fields": { + "apply_policy_default_values": { + "description": "When set to true, fixed and default values from the policy will be used for fields that are omitted. When set to false, only fixed values from the policy will be applied.", + "launch_stage": "GA" + }, + "autoscale": { + "description": "Parameters needed in order to automatically scale clusters up and down based on load.\nNote: autoscaling works best with DB runtime versions 3.0 or later.", + "ref": "compute.AutoScale", + "launch_stage": "GA" + }, + "autotermination_minutes": { + "description": "Automatically terminates the cluster after it is inactive for this time in minutes. If not set,\nthis cluster will not be automatically terminated. If specified, the threshold must be between\n10 and 10000 minutes.\nUsers can also set this value to 0 to explicitly disable automatic termination.", + "launch_stage": "GA" + }, + "aws_attributes": { + "description": "Attributes related to clusters running on Amazon Web Services.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AwsAttributes", + "launch_stage": "GA" + }, + "azure_attributes": { + "description": "Attributes related to clusters running on Microsoft Azure.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AzureAttributes", + "launch_stage": "GA" + }, + "cluster_id": { + "description": "ID of the cluster", + "launch_stage": "GA" + }, + "cluster_log_conf": { + "description": "The configuration for delivering spark logs to a long-term storage destination.\nThree kinds of destinations (DBFS, S3 and Unity Catalog volumes) are supported. Only one destination can be specified\nfor one cluster. If the conf is given, the logs will be delivered to the destination every\n`5 mins`. The destination of driver logs is `$destination/$clusterId/driver`, while\nthe destination of executor logs is `$destination/$clusterId/executor`.", + "ref": "compute.ClusterLogConf", + "launch_stage": "GA" + }, + "cluster_name": { + "description": "Cluster name requested by the user. This doesn't have to be unique.\nIf not specified at creation, the cluster name will be an empty string.\nFor job clusters, the cluster name is automatically set based on the job and job run IDs.", + "launch_stage": "GA" + }, + "custom_tags": { + "description": "Additional tags for cluster resources. Databricks will tag all cluster resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags\n\n- Clusters can only reuse cloud resources if the resources' tags are a subset of the cluster tags", + "launch_stage": "GA" + }, + "data_security_mode": { + "ref": "compute.DataSecurityMode", + "launch_stage": "GA" + }, + "dependency_mode": { + "description": "Controls dependency configuration for the cluster.", + "ref": "compute.DependencyMode", + "launch_stage": "PUBLIC_BETA" + }, + "docker_image": { + "description": "Custom docker image BYOC", + "ref": "compute.DockerImage", + "launch_stage": "GA" + }, + "driver_instance_pool_id": { + "description": "The optional ID of the instance pool for the driver of the cluster belongs.\nThe pool cluster uses the instance pool with id (instance_pool_id) if the driver pool is not\nassigned.", + "launch_stage": "GA" + }, + "driver_node_type_flexibility": { + "description": "Flexible node type configuration for the driver node.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "driver_node_type_id": { + "description": "The node type of the Spark driver.\nNote that this field is optional; if unset, the driver node type will be set as the same value\nas `node_type_id` defined above.", + "launch_stage": "GA" + }, + "enable_elastic_disk": { + "description": "Autoscaling Local Storage: when enabled, this cluster will dynamically acquire additional disk\nspace when its Spark workers are running low on disk space.", + "launch_stage": "GA" + }, + "enable_local_disk_encryption": { + "description": "Whether to enable LUKS on cluster VMs' local disks", + "launch_stage": "GA" + }, + "gcp_attributes": { + "description": "Attributes related to clusters running on Google Cloud Platform.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.GcpAttributes", + "launch_stage": "GA" + }, + "init_scripts": { + "description": "The configuration for storing init scripts. Any number of destinations can be specified.\nThe scripts are executed sequentially in the order provided.\nIf `cluster_log_conf` is specified, init script logs are sent to `\u003cdestination\u003e/\u003ccluster-ID\u003e/init_scripts`.", + "launch_stage": "GA" + }, + "instance_pool_id": { + "description": "The optional ID of the instance pool to which the cluster belongs.", + "launch_stage": "GA" + }, + "is_single_node": { + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\nWhen set to true, Databricks will automatically set single node related `custom_tags`, `spark_conf`, and `num_workers`", + "launch_stage": "GA" + }, + "kind": { + "ref": "compute.Kind", + "launch_stage": "GA" + }, + "node_type_id": { + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "launch_stage": "GA" + }, + "num_workers": { + "description": "Number of worker nodes that this cluster should have. A cluster has one Spark Driver\nand `num_workers` Executors for a total of `num_workers` + 1 Spark nodes.\n\nNote: When reading the properties of a cluster, this field reflects the desired number\nof workers rather than the actual current number of workers. For instance, if a cluster\nis resized from 5 to 10 workers, this field will immediately be updated to reflect\nthe target size of 10 workers, whereas the workers listed in `spark_info` will gradually\nincrease from 5 to 10 as the new nodes are provisioned.", + "launch_stage": "GA" + }, + "policy_id": { + "description": "The ID of the cluster policy used to create the cluster if applicable.", + "launch_stage": "GA" + }, + "remote_disk_throughput": { + "description": "If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED disks.", + "launch_stage": "GA" + }, + "runtime_engine": { + "description": "Determines the cluster's runtime engine, either standard or Photon.\n\nThis field is not compatible with legacy `spark_version` values that contain `-photon-`.\nRemove `-photon-` from the `spark_version` and set `runtime_engine` to `PHOTON`.\n\nIf left unspecified, the runtime engine defaults to standard unless the spark_version\ncontains -photon-, in which case Photon will be used.", + "ref": "compute.RuntimeEngine", + "launch_stage": "GA" + }, + "single_user_name": { + "description": "Single user name if data_security_mode is `SINGLE_USER`", + "launch_stage": "GA" + }, + "spark_conf": { + "description": "An object containing a set of optional, user-specified Spark configuration key-value pairs.\nUsers can also pass in a string of extra JVM options to the driver and the executors via\n`spark.driver.extraJavaOptions` and `spark.executor.extraJavaOptions` respectively.", + "launch_stage": "GA" + }, + "spark_env_vars": { + "description": "An object containing a set of optional, user-specified environment variable key-value pairs.\nPlease note that key-value pair of the form (X,Y) will be exported as is (i.e.,\n`export X='Y'`) while launching the driver and workers.\n\nIn order to specify an additional set of `SPARK_DAEMON_JAVA_OPTS`, we recommend appending\nthem to `$SPARK_DAEMON_JAVA_OPTS` as shown in the example below. This ensures that all\ndefault databricks managed environmental variables are included as well.\n\nExample Spark environment variables:\n`{\"SPARK_WORKER_MEMORY\": \"28000m\", \"SPARK_LOCAL_DIRS\": \"/local_disk0\"}` or\n`{\"SPARK_DAEMON_JAVA_OPTS\": \"$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true\"}`", + "launch_stage": "GA" + }, + "spark_version": { + "description": "The Spark version of the cluster, e.g. `3.3.x-scala2.11`.\nA list of available Spark versions can be retrieved by using\nthe [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "launch_stage": "GA" + }, + "ssh_public_keys": { + "description": "SSH public key contents that will be added to each Spark node in this cluster. The\ncorresponding private keys can be used to login with the user name `ubuntu` on port `2200`.\nUp to 10 keys can be specified.", + "launch_stage": "GA" + }, + "total_initial_remote_disk_size": { + "description": "If set, what the total initial volume size (in GB) of the remote disks should be. Supported for GCP.", + "launch_stage": "GA" + }, + "use_ml_runtime": { + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\n`effective_spark_version` is determined by `spark_version` (DBR release), this field `use_ml_runtime`, and whether `node_type_id` is gpu node or not.", + "launch_stage": "GA" + }, + "worker_node_type_flexibility": { + "description": "Flexible node type configuration for worker nodes.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "workload_type": { + "ref": "compute.WorkloadType", + "launch_stage": "GA" + } + } + }, + "compute.EditClusterResponse": {}, + "compute.EditInstancePool": { + "fields": { + "custom_tags": { + "description": "Additional tags for pool resources. Databricks will tag all pool resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags", + "launch_stage": "GA" + }, + "idle_instance_autotermination_minutes": { + "description": "Automatically terminates the extra instances in the pool cache after they are inactive for this\ntime in minutes if min_idle_instances requirement is already met. If not set, the extra pool\ninstances will be automatically terminated after a default timeout. If specified, the\nthreshold must be between 0 and 10000 minutes.\nUsers can also set this value to 0 to instantly remove idle instances from the cache if\nmin cache size could still hold.", + "launch_stage": "GA" + }, + "instance_pool_id": { + "description": "Instance pool ID", + "launch_stage": "GA" + }, + "instance_pool_name": { + "description": "Pool name requested by the user. Pool name must be unique. Length must be between 1 and 100\ncharacters.", + "launch_stage": "GA" + }, + "max_capacity": { + "description": "Maximum number of outstanding instances to keep in the pool, including both instances used by\nclusters and idle instances. Clusters that require further instance provisioning will fail during\nupsize requests.", + "launch_stage": "GA" + }, + "min_idle_instances": { + "description": "Minimum number of idle instances to keep in the instance pool", + "launch_stage": "GA" + }, + "node_type_id": { + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "launch_stage": "GA" + }, + "remote_disk_throughput": { + "description": "If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED types.", + "launch_stage": "GA" + }, + "total_initial_remote_disk_size": { + "description": "If set, what the total initial volume size (in GB) of the remote disks should be. Currently only supported for GCP HYPERDISK_BALANCED types.", + "launch_stage": "GA" + } + } + }, + "compute.EditInstancePoolResponse": {}, + "compute.EditPolicy": { + "fields": { + "definition": { + "description": "Policy definition document expressed in [Databricks Cluster Policy Definition Language](https://docs.databricks.com/administration-guide/clusters/policy-definition.html).", + "launch_stage": "GA" + }, + "description": { + "description": "Additional human-readable description of the cluster policy.", + "launch_stage": "GA" + }, + "libraries": { + "description": "A list of libraries to be installed on the next cluster restart that uses this policy. The maximum number of libraries is 500.", + "launch_stage": "GA" + }, + "max_clusters_per_user": { + "description": "Max number of clusters per user that can be active using this policy. If not present, there is no max limit.", + "launch_stage": "GA" + }, + "name": { + "description": "Cluster Policy name requested by the user. This has to be unique. Length must be between 1 and 100\ncharacters.", + "launch_stage": "GA" + }, + "policy_family_definition_overrides": { + "description": "Policy definition JSON document expressed in [Databricks Policy Definition Language](https://docs.databricks.com/administration-guide/clusters/policy-definition.html).\nThe JSON document must be passed as a string and cannot be embedded in the requests.\n\nYou can use this to customize the policy definition inherited from the policy family.\nPolicy rules specified here are merged into the inherited policy definition.", + "launch_stage": "GA" + }, + "policy_family_id": { + "description": "ID of the policy family. The cluster policy's policy definition inherits the policy\nfamily's policy definition.\n\nCannot be used with `definition`. Use `policy_family_definition_overrides` instead to\ncustomize the policy definition.", + "launch_stage": "GA" + }, + "policy_id": { + "description": "The ID of the policy to update.", + "launch_stage": "GA" + } + } + }, + "compute.EditPolicyResponse": {}, + "compute.EditResponse": {}, + "compute.EnforceClusterComplianceRequest": { + "fields": { + "cluster_id": { + "description": "The ID of the cluster you want to enforce policy compliance on.", + "launch_stage": "GA" + }, + "enforce_mode": { + "description": "Determines how changes should be made to clusters that are not in `TERMINATED` state.\n\n- `ENFORCE_IMMEDIATELY`: If the cluster is in a `RUNNING` state, it will be restarted so\nthat the new attributes can take effect. For other states aside from `TERMINATED` state,\nthe request will be rejected.\n- `WAIT_FOR_TERMINATION`: The cluster is not immediately edited. Instead, a pending enforcement\nis scheduled to update the cluster when it terminates or restarts. When this occurs,\n`enforce_result` will contain `DEFERRED`. Only workspace admins can use this mode.\n\nRegardless of the enforce mode, clusters in `TERMINATED` state are immediately edited.", + "ref": "compute.EnforcePolicyComplianceForClusterEnforceMode", + "launch_stage": "GA" + }, + "validate_only": { + "description": "If set, previews the changes that would be made to a cluster\nto enforce compliance but does not update the cluster.", + "launch_stage": "GA" + } + } + }, + "compute.EnforceClusterComplianceResponse": { + "fields": { + "changes": { + "description": "A list of changes that have been made to the cluster settings for\nthe cluster to become compliant with its policy.", + "launch_stage": "GA" + }, + "enforce_result": { + "description": "Describes whether changes have been applied to the cluster.", + "ref": "compute.EnforcePolicyComplianceForClusterResponseEnforceResult", + "launch_stage": "GA" + }, + "has_changes": { + "description": "Whether any changes have been made to the cluster settings for the cluster\nto become compliant with its policy.", + "launch_stage": "GA" + } + } + }, + "compute.EnforcePolicyComplianceForClusterEnforceMode": { + "enum": [ + "ENFORCE_IMMEDIATELY", + "WAIT_FOR_TERMINATION" + ], + "enum_launch_stages": { + "ENFORCE_IMMEDIATELY": "GA", + "WAIT_FOR_TERMINATION": "GA" + } + }, + "compute.EnforcePolicyComplianceForClusterResponseClusterSettings": { + "fields": { + "autoscale": { + "description": "Parameters needed in order to automatically scale clusters up and down based on load.\nNote: autoscaling works best with DB runtime versions 3.0 or later.", + "ref": "compute.AutoScale", + "launch_stage": "GA" + }, + "autotermination_minutes": { + "description": "Automatically terminates the cluster after it is inactive for this time in minutes. If not set,\nthis cluster will not be automatically terminated. If specified, the threshold must be between\n10 and 10000 minutes.\nUsers can also set this value to 0 to explicitly disable automatic termination.", + "launch_stage": "GA" + }, + "aws_attributes": { + "description": "Attributes related to clusters running on Amazon Web Services.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AwsAttributes", + "launch_stage": "GA" + }, + "azure_attributes": { + "description": "Attributes related to clusters running on Microsoft Azure.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AzureAttributes", + "launch_stage": "GA" + }, + "cluster_log_conf": { + "description": "The configuration for delivering spark logs to a long-term storage destination.\nThree kinds of destinations (DBFS, S3 and Unity Catalog volumes) are supported. Only one destination can be specified\nfor one cluster. If the conf is given, the logs will be delivered to the destination every\n`5 mins`. The destination of driver logs is `$destination/$clusterId/driver`, while\nthe destination of executor logs is `$destination/$clusterId/executor`.", + "ref": "compute.ClusterLogConf", + "launch_stage": "GA" + }, + "cluster_name": { + "description": "Cluster name requested by the user. This doesn't have to be unique.\nIf not specified at creation, the cluster name will be an empty string.\nFor job clusters, the cluster name is automatically set based on the job and job run IDs.", + "launch_stage": "GA" + }, + "custom_tags": { + "description": "Additional tags for cluster resources. Databricks will tag all cluster resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags\n\n- Clusters can only reuse cloud resources if the resources' tags are a subset of the cluster tags", + "launch_stage": "GA" + }, + "data_security_mode": { + "ref": "compute.DataSecurityMode", + "launch_stage": "GA" + }, + "dependency_mode": { + "description": "Controls dependency configuration for the cluster.", + "ref": "compute.DependencyMode", + "launch_stage": "PUBLIC_BETA" + }, + "docker_image": { + "description": "Custom docker image BYOC", + "ref": "compute.DockerImage", + "launch_stage": "GA" + }, + "driver_instance_pool_id": { + "description": "The optional ID of the instance pool for the driver of the cluster belongs.\nThe pool cluster uses the instance pool with id (instance_pool_id) if the driver pool is not\nassigned.", + "launch_stage": "GA" + }, + "driver_node_type_flexibility": { + "description": "Flexible node type configuration for the driver node.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "driver_node_type_id": { + "description": "The node type of the Spark driver.\nNote that this field is optional; if unset, the driver node type will be set as the same value\nas `node_type_id` defined above.", + "launch_stage": "GA" + }, + "enable_elastic_disk": { + "description": "Autoscaling Local Storage: when enabled, this cluster will dynamically acquire additional disk\nspace when its Spark workers are running low on disk space.", + "launch_stage": "GA" + }, + "enable_local_disk_encryption": { + "description": "Whether to enable LUKS on cluster VMs' local disks", + "launch_stage": "GA" + }, + "gcp_attributes": { + "description": "Attributes related to clusters running on Google Cloud Platform.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.GcpAttributes", + "launch_stage": "GA" + }, + "init_scripts": { + "description": "The configuration for storing init scripts. Any number of destinations can be specified.\nThe scripts are executed sequentially in the order provided.\nIf `cluster_log_conf` is specified, init script logs are sent to `\u003cdestination\u003e/\u003ccluster-ID\u003e/init_scripts`.", + "launch_stage": "GA" + }, + "instance_pool_id": { + "description": "The optional ID of the instance pool to which the cluster belongs.", + "launch_stage": "GA" + }, + "is_single_node": { + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\nWhen set to true, Databricks will automatically set single node related `custom_tags`, `spark_conf`, and `num_workers`", + "launch_stage": "GA" + }, + "kind": { + "ref": "compute.Kind", + "launch_stage": "GA" + }, + "node_type_id": { + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "launch_stage": "GA" + }, + "num_workers": { + "description": "Number of worker nodes that this cluster should have. A cluster has one Spark Driver\nand `num_workers` Executors for a total of `num_workers` + 1 Spark nodes.\n\nNote: When reading the properties of a cluster, this field reflects the desired number\nof workers rather than the actual current number of workers. For instance, if a cluster\nis resized from 5 to 10 workers, this field will immediately be updated to reflect\nthe target size of 10 workers, whereas the workers listed in `spark_info` will gradually\nincrease from 5 to 10 as the new nodes are provisioned.", + "launch_stage": "GA" + }, + "policy_id": { + "description": "The ID of the cluster policy used to create the cluster if applicable.", + "launch_stage": "GA" + }, + "remote_disk_throughput": { + "description": "If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED disks.", + "launch_stage": "GA" + }, + "runtime_engine": { + "description": "Determines the cluster's runtime engine, either standard or Photon.\n\nThis field is not compatible with legacy `spark_version` values that contain `-photon-`.\nRemove `-photon-` from the `spark_version` and set `runtime_engine` to `PHOTON`.\n\nIf left unspecified, the runtime engine defaults to standard unless the spark_version\ncontains -photon-, in which case Photon will be used.", + "ref": "compute.RuntimeEngine", + "launch_stage": "GA" + }, + "single_user_name": { + "description": "Single user name if data_security_mode is `SINGLE_USER`", + "launch_stage": "GA" + }, + "spark_conf": { + "description": "An object containing a set of optional, user-specified Spark configuration key-value pairs.\nUsers can also pass in a string of extra JVM options to the driver and the executors via\n`spark.driver.extraJavaOptions` and `spark.executor.extraJavaOptions` respectively.", + "launch_stage": "GA" + }, + "spark_env_vars": { + "description": "An object containing a set of optional, user-specified environment variable key-value pairs.\nPlease note that key-value pair of the form (X,Y) will be exported as is (i.e.,\n`export X='Y'`) while launching the driver and workers.\n\nIn order to specify an additional set of `SPARK_DAEMON_JAVA_OPTS`, we recommend appending\nthem to `$SPARK_DAEMON_JAVA_OPTS` as shown in the example below. This ensures that all\ndefault databricks managed environmental variables are included as well.\n\nExample Spark environment variables:\n`{\"SPARK_WORKER_MEMORY\": \"28000m\", \"SPARK_LOCAL_DIRS\": \"/local_disk0\"}` or\n`{\"SPARK_DAEMON_JAVA_OPTS\": \"$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true\"}`", + "launch_stage": "GA" + }, + "spark_version": { + "description": "The Spark version of the cluster, e.g. `3.3.x-scala2.11`.\nA list of available Spark versions can be retrieved by using\nthe [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "launch_stage": "GA" + }, + "ssh_public_keys": { + "description": "SSH public key contents that will be added to each Spark node in this cluster. The\ncorresponding private keys can be used to login with the user name `ubuntu` on port `2200`.\nUp to 10 keys can be specified.", + "launch_stage": "GA" + }, + "total_initial_remote_disk_size": { + "description": "If set, what the total initial volume size (in GB) of the remote disks should be. Supported for GCP.", + "launch_stage": "GA" + }, + "use_ml_runtime": { + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\n`effective_spark_version` is determined by `spark_version` (DBR release), this field `use_ml_runtime`, and whether `node_type_id` is gpu node or not.", + "launch_stage": "GA" + }, + "worker_node_type_flexibility": { + "description": "Flexible node type configuration for worker nodes.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "workload_type": { + "ref": "compute.WorkloadType", + "launch_stage": "GA" + } + } + }, + "compute.EnforcePolicyComplianceForClusterResponseEnforceResult": { + "enum": [ + "NO_CHANGES", + "APPLIED", + "DEFERRED" + ], + "enum_launch_stages": { + "APPLIED": "GA", + "DEFERRED": "GA", + "NO_CHANGES": "GA" + } + }, + "compute.Environment": { + "description": "The environment entity used to preserve serverless environment side panel, jobs' environment for non-notebook task, and SDP's environment for classic and serverless pipelines.\nIn this minimal environment spec, only pip and java dependencies are supported.", + "fields": { + "base_environment": { + "description": "The base environment this environment is built on top of. A base environment defines the environment version and a\nlist of dependencies for serverless compute. The value can be a file path to a custom `env.yaml` file\n(e.g., `/Workspace/path/to/env.yaml`). Support for a Databricks-provided base environment ID\n(e.g., `workspace-base-environments/databricks_ai_v4`) and workspace base environment ID\n(e.g., `workspace-base-environments/dbe_b849b66e-b31a-4cb5-b161-1f2b10877fb7`) is in Beta.\nEither `environment_version` or `base_environment` can be provided.\nFor more information about Databricks-provided base environments, see the\n[list workspace base environments](:method:Environments/ListWorkspaceBaseEnvironments) API.\nFor more information, see", + "launch_stage": "GA" + }, + "client": { + "description": "Use `environment_version` instead.", + "deprecated": true, + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "dependencies": { + "description": "List of pip dependencies, as supported by the version of pip in this environment.\nEach dependency is a valid pip requirements file line per https://pip.pypa.io/en/stable/reference/requirements-file-format/.\nAllowed dependencies include a requirement specifier, an archive URL, a local project path (such as WSFS or UC Volumes in Databricks), or a VCS project URL.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "environment_version": { + "description": "Either `environment_version` or `base_environment` needs to be provided. Environment version used by the environment.\nEach version comes with a specific Python version and a set of Python packages.\nThe version is a string, consisting of an integer.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "java_dependencies": { + "description": "List of java dependencies. Each dependency is a string representing a java library path. For example: `/Volumes/path/to/test.jar`.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "project_environment": { + "description": "File path of pyproject.toml file that defines the project-scoped environment.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "compute.EventDetails": { + "fields": { + "attributes": { + "description": "* For created clusters, the attributes of the cluster.\n* For edited clusters, the new attributes of the cluster.", + "ref": "compute.ClusterAttributes", + "launch_stage": "GA" + }, + "cause": { + "description": "The cause of a change in target size.", + "ref": "compute.EventDetailsCause", + "launch_stage": "GA" + }, + "cluster_size": { + "description": "The actual cluster size that was set in the cluster creation or edit.", + "ref": "compute.ClusterSize", + "launch_stage": "GA" + }, + "current_num_vcpus": { + "description": "The current number of vCPUs in the cluster.", + "launch_stage": "GA" + }, + "current_num_workers": { + "description": "The current number of nodes in the cluster.", + "launch_stage": "GA" + }, + "did_not_expand_reason": { + "launch_stage": "GA" + }, + "disk_size": { + "description": "Current disk size in bytes", + "launch_stage": "GA" + }, + "driver_state_message": { + "description": "More details about the change in driver's state", + "launch_stage": "GA" + }, + "enable_termination_for_node_blocklisted": { + "description": "Whether or not a blocklisted node should be terminated. For ClusterEventType NODE_BLACKLISTED.", + "launch_stage": "GA" + }, + "free_space": { + "launch_stage": "GA" + }, + "init_scripts": { + "description": "List of global and cluster init scripts associated with this cluster event.", + "ref": "compute.InitScriptEventDetails", + "launch_stage": "GA" + }, + "instance_id": { + "description": "Instance Id where the event originated from", + "launch_stage": "GA" + }, + "job_run_name": { + "description": "Unique identifier of the specific job run associated with this cluster event\n* For clusters created for jobs, this will be the same as the cluster name", + "launch_stage": "GA" + }, + "previous_attributes": { + "description": "The cluster attributes before a cluster was edited.", + "ref": "compute.ClusterAttributes", + "launch_stage": "GA" + }, + "previous_cluster_size": { + "description": "The size of the cluster before an edit or resize.", + "ref": "compute.ClusterSize", + "launch_stage": "GA" + }, + "previous_disk_size": { + "description": "Previous disk size in bytes", + "launch_stage": "GA" + }, + "reason": { + "description": "A termination reason:\n* On a TERMINATED event, this is the reason of the termination.\n* On a RESIZE_COMPLETE event, this indicates the reason that we failed to acquire some nodes.", + "ref": "compute.TerminationReason", + "launch_stage": "GA" + }, + "target_num_vcpus": { + "description": "The targeted number of vCPUs in the cluster.", + "launch_stage": "GA" + }, + "target_num_workers": { + "description": "The targeted number of nodes in the cluster.", + "launch_stage": "GA" + }, + "user": { + "description": "The user that caused the event to occur. (Empty if it was done by the control plane.)", + "launch_stage": "GA" + } + } + }, + "compute.EventDetailsCause": { + "description": "The cause of a change in target size.", + "enum": [ + "AUTOSCALE", + "USER_REQUEST", + "AUTORECOVERY", + "REPLACE_BAD_NODES", + "AUTOSCALE_V2", + "DBR_AUTOSCALE" + ], + "enum_launch_stages": { + "AUTORECOVERY": "GA", + "AUTOSCALE": "GA", + "AUTOSCALE_V2": "GA", + "DBR_AUTOSCALE": "GA", + "REPLACE_BAD_NODES": "GA", + "USER_REQUEST": "GA" + } + }, + "compute.EventType": { + "enum": [ + "CREATING", + "STARTING", + "RESTARTING", + "TERMINATING", + "EDITED", + "RUNNING", + "RESIZING", + "NODES_LOST", + "UPSIZE_COMPLETED", + "INIT_SCRIPTS_STARTED", + "INIT_SCRIPTS_FINISHED", + "DID_NOT_EXPAND_DISK", + "EXPANDED_DISK", + "FAILED_TO_EXPAND_DISK", + "DRIVER_HEALTHY", + "DRIVER_NOT_RESPONDING", + "DRIVER_UNAVAILABLE", + "SPARK_EXCEPTION", + "METASTORE_DOWN", + "DBFS_DOWN", + "AUTOSCALING_STATS_REPORT", + "NODE_BLACKLISTED", + "PINNED", + "UNPINNED", + "NODE_EXCLUDED_DECOMMISSIONED", + "ADD_NODES_FAILED", + "AUTOSCALING_BACKOFF", + "AUTOMATIC_CLUSTER_UPDATE", + "AUTOSCALING_FAILED", + "CLUSTER_MIGRATED", + "DECOMMISSION_STARTED", + "DECOMMISSION_ENDED", + "DEFERRED_POLICY_ENFORCEMENT_SCHEDULED", + "DEFERRED_POLICY_ENFORCEMENT_FAILED", + "UC_VOLUME_MISCONFIGURED" + ], + "enum_launch_stages": { + "ADD_NODES_FAILED": "GA", + "AUTOMATIC_CLUSTER_UPDATE": "GA", + "AUTOSCALING_BACKOFF": "GA", + "AUTOSCALING_FAILED": "GA", + "AUTOSCALING_STATS_REPORT": "GA", + "CLUSTER_MIGRATED": "GA", + "CREATING": "GA", + "DBFS_DOWN": "GA", + "DECOMMISSION_ENDED": "GA", + "DECOMMISSION_STARTED": "GA", + "DEFERRED_POLICY_ENFORCEMENT_FAILED": "GA", + "DEFERRED_POLICY_ENFORCEMENT_SCHEDULED": "GA", + "DID_NOT_EXPAND_DISK": "GA", + "DRIVER_HEALTHY": "GA", + "DRIVER_NOT_RESPONDING": "GA", + "DRIVER_UNAVAILABLE": "GA", + "EDITED": "GA", + "EXPANDED_DISK": "GA", + "FAILED_TO_EXPAND_DISK": "GA", + "INIT_SCRIPTS_FINISHED": "GA", + "INIT_SCRIPTS_STARTED": "GA", + "METASTORE_DOWN": "GA", + "NODES_LOST": "GA", + "NODE_BLACKLISTED": "GA", + "NODE_EXCLUDED_DECOMMISSIONED": "GA", + "PINNED": "GA", + "RESIZING": "GA", + "RESTARTING": "GA", + "RUNNING": "GA", + "SPARK_EXCEPTION": "GA", + "STARTING": "GA", + "TERMINATING": "GA", + "UC_VOLUME_MISCONFIGURED": "GA", + "UNPINNED": "GA", + "UPSIZE_COMPLETED": "GA" + } + }, + "compute.GcpAttributes": { + "description": "Attributes set during cluster creation which are related to GCP.", + "fields": { + "availability": { + "description": "This field determines whether the spark executors will be scheduled to run on preemptible\nVMs, on-demand VMs, or preemptible VMs with a fallback to on-demand VMs if the former is unavailable.", + "ref": "compute.GcpAvailability", + "launch_stage": "GA" + }, + "boot_disk_size": { + "description": "Boot disk size in GB", + "launch_stage": "GA" + }, + "confidential_compute_type": { + "description": "The confidential computing technology for this cluster's instances.\nCurrently only SEV_SNP is supported, and only on N2D instance types.\nWhen not set, no confidential computing is applied.", + "ref": "compute.ConfidentialComputeType", + "launch_stage": "PRIVATE_PREVIEW" + }, + "first_on_demand": { + "description": "The first `first_on_demand` nodes of the cluster will be placed on on-demand instances.\nThis value should be greater than 0, to make sure the cluster driver node is placed on an\non-demand instance. If this value is greater than or equal to the current cluster size, all\nnodes will be placed on on-demand instances. If this value is less than the current cluster\nsize, `first_on_demand` nodes will be placed on on-demand instances and the remainder will\nbe placed on `availability` instances. Note that this value does not affect\ncluster size and cannot currently be mutated over the lifetime of a cluster.", + "launch_stage": "GA" + }, + "google_service_account": { + "description": "If provided, the cluster will impersonate the google service account when accessing\ngcloud services (like GCS). The google service account\nmust have previously been added to the Databricks environment by an account\nadministrator.", + "launch_stage": "GA" + }, + "local_ssd_count": { + "description": "If provided, each node (workers and driver) in the cluster will have this number of local SSDs attached.\nEach local SSD is 375GB in size.\nRefer to [GCP documentation](https://cloud.google.com/compute/docs/disks/local-ssd#choose_number_local_ssds)\nfor the supported number of local SSDs for each instance type.", + "launch_stage": "GA" + }, + "use_preemptible_executors": { + "description": "This field determines whether the spark executors will be scheduled to run on preemptible\nVMs (when set to true) versus standard compute engine VMs (when set to false; default).\nNote: Soon to be deprecated, use the 'availability' field instead.", + "deprecated": true, + "launch_stage": "GA" + }, + "zone_id": { + "description": "Identifier for the availability zone in which the cluster resides.\nThis can be one of the following:\n- \"HA\" =\u003e High availability, spread nodes across availability zones for a\nDatabricks deployment region [default].\n- \"AUTO\" =\u003e Databricks picks an availability zone to schedule the cluster on.\n- A GCP availability zone =\u003e Pick One of the available zones for (machine type + region) from\nhttps://cloud.google.com/compute/docs/regions-zones.", + "launch_stage": "GA" + } + } + }, + "compute.GcpAvailability": { + "description": "This field determines whether the instance pool will contain preemptible\nVMs, on-demand VMs, or preemptible VMs with a fallback to on-demand VMs if the former is unavailable.", + "enum": [ + "PREEMPTIBLE_GCP", + "ON_DEMAND_GCP", + "PREEMPTIBLE_WITH_FALLBACK_GCP" + ], + "enum_launch_stages": { + "ON_DEMAND_GCP": "GA", + "PREEMPTIBLE_GCP": "GA", + "PREEMPTIBLE_WITH_FALLBACK_GCP": "GA" + } + }, + "compute.GcsStorageInfo": { + "description": "A storage location in Google Cloud Platform's GCS", + "fields": { + "destination": { + "description": "GCS destination/URI, e.g. `gs://my-bucket/some-prefix`", + "launch_stage": "GA" + } + } + }, + "compute.GetClusterComplianceRequest": { + "fields": { + "cluster_id": { + "description": "The ID of the cluster to get the compliance status", + "launch_stage": "GA" + } + } + }, + "compute.GetClusterComplianceResponse": { + "fields": { + "is_compliant": { + "description": "Whether the cluster is compliant with its policy or not. Clusters could be out\nof compliance if the policy was updated after the cluster was last edited.", + "launch_stage": "GA" + }, + "pending_enforcement": { + "description": "Information about the pending enforcement for the cluster. Only present if a pending enforcement\nis scheduled for the cluster.", + "ref": "compute.PendingEnforcement", + "launch_stage": "GA" + }, + "violations": { + "description": "An object containing key-value mappings representing the first 200 policy validation errors.\nThe keys indicate the path where the policy validation error is occurring.\nThe values indicate an error message describing the policy validation error.", + "launch_stage": "GA" + } + } + }, + "compute.GetClusterPermissionLevelsRequest": {}, + "compute.GetClusterPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "GA" + } + } + }, + "compute.GetClusterPermissionsRequest": {}, + "compute.GetClusterPolicyPermissionLevelsRequest": {}, + "compute.GetClusterPolicyPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "GA" + } + } + }, + "compute.GetClusterPolicyPermissionsRequest": {}, + "compute.GetClusterPolicyRequest": { + "fields": { + "policy_id": { + "description": "Canonical unique identifier for the Cluster Policy.", + "launch_stage": "GA" + } + } + }, + "compute.GetClusterRequest": { + "fields": { + "cluster_id": { + "description": "The cluster about which to retrieve information.", + "launch_stage": "GA" + } + } + }, + "compute.GetEvents": { + "fields": { + "cluster_id": { + "description": "The ID of the cluster to retrieve events about.", + "launch_stage": "GA" + }, + "end_time": { + "description": "The end time in epoch milliseconds.\nIf empty, returns events up to the current time.", + "launch_stage": "GA" + }, + "event_types": { + "description": "An optional set of event types to filter on.\nIf empty, all event types are returned.", + "launch_stage": "GA" + }, + "limit": { + "description": "Deprecated: use page_token in combination with page_size instead.\n\nThe maximum number of events to include in a page of events.\nDefaults to 50, and maximum allowed value is 500.", + "deprecated": true, + "launch_stage": "GA" + }, + "offset": { + "description": "Deprecated: use page_token in combination with page_size instead.\n\nThe offset in the result set. Defaults to 0 (no offset). When an offset is specified\nand the results are requested in descending order, the end_time field is required.", + "deprecated": true, + "launch_stage": "GA" + }, + "order": { + "description": "The order to list events in; either \"ASC\" or \"DESC\". Defaults to \"DESC\".", + "ref": "compute.GetEventsOrder", + "launch_stage": "GA" + }, + "page_size": { + "description": "The maximum number of events to include in a page of events.\nThe server may further constrain the maximum number of results returned in a single page.\nIf the page_size is empty or 0, the server will decide the number of results to be returned.\nThe field has to be in the range [0,500]. If the value is outside the range, the server enforces 0 or 500.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Use next_page_token or prev_page_token returned from the previous request to list the next or previous page of events respectively.\nIf page_token is empty, the first page is returned.", + "launch_stage": "GA" + }, + "start_time": { + "description": "The start time in epoch milliseconds.\nIf empty, returns events starting from the beginning of time.", + "launch_stage": "GA" + } + } + }, + "compute.GetEventsOrder": { + "enum": [ + "DESC", + "ASC" + ], + "enum_launch_stages": { + "ASC": "GA", + "DESC": "GA" + } + }, + "compute.GetEventsResponse": { + "fields": { + "events": { + "launch_stage": "GA" + }, + "next_page": { + "description": "Deprecated: use next_page_token or prev_page_token instead.\n\nThe parameters required to retrieve the next page of events.\nOmitted if there are no more events to read.", + "ref": "compute.GetEvents", + "deprecated": true, + "launch_stage": "GA" + }, + "next_page_token": { + "description": "This field represents the pagination token to retrieve the next page of results.\nIf the value is \"\", it means no further results for the request.", + "launch_stage": "GA" + }, + "prev_page_token": { + "description": "This field represents the pagination token to retrieve the previous page of results.\nIf the value is \"\", it means no further results for the request.", + "launch_stage": "GA" + }, + "total_count": { + "description": "Deprecated: Returns 0 when request uses page_token. Will start returning zero when request uses offset/limit soon.\n\nThe total number of events filtered by the start_time, end_time, and event_types.", + "deprecated": true, + "launch_stage": "GA" + } + } + }, + "compute.GetGlobalInitScriptRequest": {}, + "compute.GetInstancePool": { + "fields": { + "aws_attributes": { + "description": "Attributes related to instance pools running on Amazon Web Services.\nIf not specified at pool creation, a set of default values will be used.", + "ref": "compute.InstancePoolAwsAttributes", + "launch_stage": "GA" + }, + "azure_attributes": { + "description": "Attributes related to instance pools running on Azure.\nIf not specified at pool creation, a set of default values will be used.", + "ref": "compute.InstancePoolAzureAttributes", + "launch_stage": "GA" + }, + "custom_tags": { + "description": "Additional tags for pool resources. Databricks will tag all pool resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags", + "launch_stage": "GA" + }, + "default_tags": { + "description": "Tags that are added by Databricks regardless of any ``custom_tags``, including:\n\n- Vendor: Databricks\n\n- InstancePoolCreator: \u003cuser_id_of_creator\u003e\n\n- InstancePoolName: \u003cname_of_pool\u003e\n\n- InstancePoolId: \u003cid_of_pool\u003e", + "launch_stage": "GA" + }, + "disk_spec": { + "description": "Defines the specification of the disks that will be attached to all spark containers.", + "ref": "compute.DiskSpec", + "launch_stage": "GA" + }, + "enable_elastic_disk": { + "description": "Autoscaling Local Storage: when enabled, this instances in this pool will dynamically acquire\nadditional disk space when its Spark workers are running low on disk space. In AWS, this\nfeature requires specific AWS permissions to function correctly - refer to the User Guide for\nmore details.", + "launch_stage": "GA" + }, + "gcp_attributes": { + "description": "Attributes related to instance pools running on Google Cloud Platform.\nIf not specified at pool creation, a set of default values will be used.", + "ref": "compute.InstancePoolGcpAttributes", + "launch_stage": "GA" + }, + "idle_instance_autotermination_minutes": { + "description": "Automatically terminates the extra instances in the pool cache after they are inactive for this\ntime in minutes if min_idle_instances requirement is already met. If not set, the extra pool\ninstances will be automatically terminated after a default timeout. If specified, the\nthreshold must be between 0 and 10000 minutes.\nUsers can also set this value to 0 to instantly remove idle instances from the cache if\nmin cache size could still hold.", + "launch_stage": "GA" + }, + "instance_pool_id": { + "description": "Canonical unique identifier for the pool.", + "launch_stage": "GA" + }, + "instance_pool_name": { + "description": "Pool name requested by the user. Pool name must be unique. Length must be between 1 and 100\ncharacters.", + "launch_stage": "GA" + }, + "max_capacity": { + "description": "Maximum number of outstanding instances to keep in the pool, including both instances used by\nclusters and idle instances. Clusters that require further instance provisioning will fail during\nupsize requests.", + "launch_stage": "GA" + }, + "min_idle_instances": { + "description": "Minimum number of idle instances to keep in the instance pool", + "launch_stage": "GA" + }, + "node_type_flexibility": { + "description": "Flexible node type configuration for the pool.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "node_type_id": { + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "launch_stage": "GA" + }, + "preloaded_docker_images": { + "description": "Custom Docker Image BYOC", + "launch_stage": "GA" + }, + "preloaded_spark_versions": { + "description": "A list containing at most one preloaded Spark image version for the pool. Pool-backed clusters started\nwith the preloaded Spark version will start faster. A list of available Spark versions\ncan be retrieved by using the [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "launch_stage": "GA" + }, + "remote_disk_throughput": { + "description": "If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED types.", + "launch_stage": "GA" + }, + "state": { + "description": "Current state of the instance pool.", + "ref": "compute.InstancePoolState", + "launch_stage": "GA" + }, + "stats": { + "description": "Usage statistics about the instance pool.", + "ref": "compute.InstancePoolStats", + "launch_stage": "GA" + }, + "status": { + "description": "Status of failed pending instances in the pool.", + "ref": "compute.InstancePoolStatus", + "launch_stage": "GA" + }, + "total_initial_remote_disk_size": { + "description": "If set, what the total initial volume size (in GB) of the remote disks should be. Currently only supported for GCP HYPERDISK_BALANCED types.", + "launch_stage": "GA" + } + } + }, + "compute.GetInstancePoolPermissionLevelsRequest": {}, + "compute.GetInstancePoolPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "GA" + } + } + }, + "compute.GetInstancePoolPermissionsRequest": {}, + "compute.GetInstancePoolRequest": { + "fields": { + "instance_pool_id": { + "description": "The canonical unique identifier for the instance pool.", + "launch_stage": "GA" + } + } + }, + "compute.GetPolicyFamilyRequest": { + "fields": { + "version": { + "description": "The version number for the family to fetch. Defaults to the latest version.", + "launch_stage": "GA" + } + } + }, + "compute.GetSparkVersionsResponse": { + "fields": { + "versions": { + "description": "All the available Spark versions.", + "launch_stage": "GA" + } + } + }, + "compute.GlobalInitScriptCreateRequest": { + "fields": { + "enabled": { + "description": "Specifies whether the script is enabled. The script runs only if enabled.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the script", + "launch_stage": "GA" + }, + "position": { + "description": "The position of a global init script, where 0 represents the first script to run, 1 is the second script to run, in ascending order.\n\nIf you omit the numeric position for a new global init script, it defaults to last position. It will run after all current scripts.\nSetting any value greater than the position of the last script is equivalent to the last position. Example: Take three existing scripts with positions 0, 1, and 2. Any position of (3) or greater puts the script in the last position.\nIf an explicit position value conflicts with an existing script value, your request succeeds, but the original script at that position and all later scripts have their positions incremented by 1.", + "launch_stage": "GA" + }, + "script": { + "description": "The Base64-encoded content of the script.", + "launch_stage": "GA" + } + } + }, + "compute.GlobalInitScriptDetails": { + "fields": { + "created_at": { + "description": "Time when the script was created, represented as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "created_by": { + "description": "The username of the user who created the script.", + "launch_stage": "GA" + }, + "enabled": { + "description": "Specifies whether the script is enabled. The script runs only if enabled.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the script", + "launch_stage": "GA" + }, + "position": { + "description": "The position of a script, where 0 represents the first script to run, 1 is the second script to run, in ascending order.", + "launch_stage": "GA" + }, + "script_id": { + "description": "The global init script ID.", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Time when the script was updated, represented as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "updated_by": { + "description": "The username of the user who last updated the script", + "launch_stage": "GA" + } + } + }, + "compute.GlobalInitScriptDetailsWithContent": { + "fields": { + "created_at": { + "description": "Time when the script was created, represented as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "created_by": { + "description": "The username of the user who created the script.", + "launch_stage": "GA" + }, + "enabled": { + "description": "Specifies whether the script is enabled. The script runs only if enabled.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the script", + "launch_stage": "GA" + }, + "position": { + "description": "The position of a script, where 0 represents the first script to run, 1 is the second script to run, in ascending order.", + "launch_stage": "GA" + }, + "script": { + "description": "The Base64-encoded content of the script.", + "launch_stage": "GA" + }, + "script_id": { + "description": "The global init script ID.", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Time when the script was updated, represented as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "updated_by": { + "description": "The username of the user who last updated the script", + "launch_stage": "GA" + } + } + }, + "compute.GlobalInitScriptUpdateRequest": { + "fields": { + "enabled": { + "description": "Specifies whether the script is enabled. The script runs only if enabled.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the script", + "launch_stage": "GA" + }, + "position": { + "description": "The position of a script, where 0 represents the first script to run,\n1 is the second script to run, in ascending order.\nTo move the script to run first, set its position to 0.\n\nTo move the script to the end, set its position to any value\ngreater or equal to the position of the last script.\nExample, three existing scripts with positions 0, 1, and 2.\nAny position value of 2 or greater puts the script in the last position (2).\n\nIf an explicit position value conflicts with an existing script, your request succeeds,\nbut the original script at that position and all later scripts have their positions\nincremented by 1.", + "launch_stage": "GA" + }, + "script": { + "description": "The Base64-encoded content of the script.", + "launch_stage": "GA" + } + } + }, + "compute.HardwareAcceleratorType": { + "description": "HardwareAcceleratorType: The type of hardware accelerator to use for compute workloads.\nNOTE: This enum is referenced and is intended to be used by other Databricks services\nthat need to specify hardware accelerator requirements for AI compute workloads.", + "enum": [ + "GPU_1xA10", + "GPU_8xH100", + "GPU_1xH100", + "GPU_8xB300" + ], + "enum_launch_stages": { + "GPU_1xA10": "PUBLIC_PREVIEW", + "GPU_1xH100": "PUBLIC_PREVIEW", + "GPU_8xB300": "PUBLIC_PREVIEW", + "GPU_8xH100": "PUBLIC_PREVIEW" + } + }, + "compute.InitScriptEventDetails": { + "fields": { + "cluster": { + "description": "The cluster scoped init scripts associated with this cluster event.", + "launch_stage": "GA" + }, + "global": { + "description": "The global init scripts associated with this cluster event.", + "launch_stage": "GA" + }, + "reported_for_node": { + "description": "The private ip of the node we are reporting init script execution details for\n(we will select the execution details from only one node rather than\nreporting the execution details from every node to keep these event\ndetails small)\n\nThis should only be defined for the INIT_SCRIPTS_FINISHED event", + "launch_stage": "GA" + } + } + }, + "compute.InitScriptExecutionDetailsInitScriptExecutionStatus": { + "description": "Result of attempted script execution", + "enum": [ + "UNKNOWN", + "FAILED_FETCH", + "FAILED_EXECUTION", + "NOT_EXECUTED", + "SKIPPED", + "SUCCEEDED", + "FUSE_MOUNT_FAILED" + ], + "enum_launch_stages": { + "FAILED_EXECUTION": "GA", + "FAILED_FETCH": "GA", + "FUSE_MOUNT_FAILED": "GA", + "NOT_EXECUTED": "GA", + "SKIPPED": "GA", + "SUCCEEDED": "GA", + "UNKNOWN": "GA" + } + }, + "compute.InitScriptInfo": { + "description": "Config for an individual init script", + "fields": { + "abfss": { + "description": "destination needs to be provided, e.g.\n`abfss://\u003ccontainer-name\u003e@\u003cstorage-account-name\u003e.dfs.core.windows.net/\u003cdirectory-name\u003e`", + "ref": "compute.Adlsgen2Info", + "launch_stage": "GA" + }, + "dbfs": { + "description": "destination needs to be provided. e.g.\n`{ \"dbfs\": { \"destination\" : \"dbfs:/home/cluster_log\" } }`", + "ref": "compute.DbfsStorageInfo", + "deprecated": true, + "launch_stage": "GA" + }, + "file": { + "description": "destination needs to be provided, e.g.\n`{ \"file\": { \"destination\": \"file:/my/local/file.sh\" } }`", + "ref": "compute.LocalFileInfo", + "launch_stage": "GA" + }, + "gcs": { + "description": "destination needs to be provided, e.g.\n`{ \"gcs\": { \"destination\": \"gs://my-bucket/file.sh\" } }`", + "ref": "compute.GcsStorageInfo", + "launch_stage": "GA" + }, + "s3": { + "description": "destination and either the region or endpoint need to be provided. e.g.\n`{ \\\"s3\\\": { \\\"destination\\\": \\\"s3://cluster_log_bucket/prefix\\\", \\\"region\\\": \\\"us-west-2\\\" } }`\nCluster iam role is used to access s3, please make sure the cluster iam role in\n`instance_profile_arn` has permission to write data to the s3 destination.", + "ref": "compute.S3StorageInfo", + "launch_stage": "GA" + }, + "volumes": { + "description": "destination needs to be provided. e.g.\n`{ \\\"volumes\\\" : { \\\"destination\\\" : \\\"/Volumes/my-init.sh\\\" } }`", + "ref": "compute.VolumesStorageInfo", + "launch_stage": "GA" + }, + "workspace": { + "description": "destination needs to be provided, e.g.\n`{ \"workspace\": { \"destination\": \"/cluster-init-scripts/setup-datadog.sh\" } }`", + "ref": "compute.WorkspaceStorageInfo", + "launch_stage": "GA" + } + } + }, + "compute.InitScriptInfoAndExecutionDetails": { + "fields": { + "abfss": { + "description": "destination needs to be provided, e.g.\n`abfss://\u003ccontainer-name\u003e@\u003cstorage-account-name\u003e.dfs.core.windows.net/\u003cdirectory-name\u003e`", + "ref": "compute.Adlsgen2Info", + "launch_stage": "GA" + }, + "dbfs": { + "description": "destination needs to be provided. e.g.\n`{ \"dbfs\": { \"destination\" : \"dbfs:/home/cluster_log\" } }`", + "ref": "compute.DbfsStorageInfo", + "deprecated": true, + "launch_stage": "GA" + }, + "error_message": { + "description": "Additional details regarding errors (such as a file not found message\nif the status is FAILED_FETCH). This field should only be used to\nprovide *additional* information to the status field, not duplicate it.", + "launch_stage": "GA" + }, + "execution_duration_seconds": { + "description": "The number duration of the script execution in seconds", + "launch_stage": "GA" + }, + "file": { + "description": "destination needs to be provided, e.g.\n`{ \"file\": { \"destination\": \"file:/my/local/file.sh\" } }`", + "ref": "compute.LocalFileInfo", + "launch_stage": "GA" + }, + "gcs": { + "description": "destination needs to be provided, e.g.\n`{ \"gcs\": { \"destination\": \"gs://my-bucket/file.sh\" } }`", + "ref": "compute.GcsStorageInfo", + "launch_stage": "GA" + }, + "s3": { + "description": "destination and either the region or endpoint need to be provided. e.g.\n`{ \\\"s3\\\": { \\\"destination\\\": \\\"s3://cluster_log_bucket/prefix\\\", \\\"region\\\": \\\"us-west-2\\\" } }`\nCluster iam role is used to access s3, please make sure the cluster iam role in\n`instance_profile_arn` has permission to write data to the s3 destination.", + "ref": "compute.S3StorageInfo", + "launch_stage": "GA" + }, + "status": { + "description": "The current status of the script", + "ref": "compute.InitScriptExecutionDetailsInitScriptExecutionStatus", + "launch_stage": "GA" + }, + "stderr": { + "description": "The stderr output from the init script execution.\nOnly populated when init scripts debug is enabled and script execution fails.", + "launch_stage": "GA" + }, + "volumes": { + "description": "destination needs to be provided. e.g.\n`{ \\\"volumes\\\" : { \\\"destination\\\" : \\\"/Volumes/my-init.sh\\\" } }`", + "ref": "compute.VolumesStorageInfo", + "launch_stage": "GA" + }, + "workspace": { + "description": "destination needs to be provided, e.g.\n`{ \"workspace\": { \"destination\": \"/cluster-init-scripts/setup-datadog.sh\" } }`", + "ref": "compute.WorkspaceStorageInfo", + "launch_stage": "GA" + } + } + }, + "compute.InstallLibraries": { + "fields": { + "cluster_id": { + "description": "Unique identifier for the cluster on which to install these libraries.", + "launch_stage": "GA" + }, + "libraries": { + "description": "The libraries to install.", + "launch_stage": "GA" + } + } + }, + "compute.InstallLibrariesResponse": {}, + "compute.InstancePoolAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "compute.InstancePoolPermissionLevel", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "compute.InstancePoolAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "compute.InstancePoolAndStats": { + "fields": { + "aws_attributes": { + "description": "Attributes related to instance pools running on Amazon Web Services.\nIf not specified at pool creation, a set of default values will be used.", + "ref": "compute.InstancePoolAwsAttributes", + "launch_stage": "GA" + }, + "azure_attributes": { + "description": "Attributes related to instance pools running on Azure.\nIf not specified at pool creation, a set of default values will be used.", + "ref": "compute.InstancePoolAzureAttributes", + "launch_stage": "GA" + }, + "custom_tags": { + "description": "Additional tags for pool resources. Databricks will tag all pool resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags", + "launch_stage": "GA" + }, + "default_tags": { + "description": "Tags that are added by Databricks regardless of any ``custom_tags``, including:\n\n- Vendor: Databricks\n\n- InstancePoolCreator: \u003cuser_id_of_creator\u003e\n\n- InstancePoolName: \u003cname_of_pool\u003e\n\n- InstancePoolId: \u003cid_of_pool\u003e", + "launch_stage": "GA" + }, + "disk_spec": { + "description": "Defines the specification of the disks that will be attached to all spark containers.", + "ref": "compute.DiskSpec", + "launch_stage": "GA" + }, + "enable_elastic_disk": { + "description": "Autoscaling Local Storage: when enabled, this instances in this pool will dynamically acquire\nadditional disk space when its Spark workers are running low on disk space. In AWS, this\nfeature requires specific AWS permissions to function correctly - refer to the User Guide for\nmore details.", + "launch_stage": "GA" + }, + "gcp_attributes": { + "description": "Attributes related to instance pools running on Google Cloud Platform.\nIf not specified at pool creation, a set of default values will be used.", + "ref": "compute.InstancePoolGcpAttributes", + "launch_stage": "GA" + }, + "idle_instance_autotermination_minutes": { + "description": "Automatically terminates the extra instances in the pool cache after they are inactive for this\ntime in minutes if min_idle_instances requirement is already met. If not set, the extra pool\ninstances will be automatically terminated after a default timeout. If specified, the\nthreshold must be between 0 and 10000 minutes.\nUsers can also set this value to 0 to instantly remove idle instances from the cache if\nmin cache size could still hold.", + "launch_stage": "GA" + }, + "instance_pool_id": { + "description": "Canonical unique identifier for the pool.", + "launch_stage": "GA" + }, + "instance_pool_name": { + "description": "Pool name requested by the user. Pool name must be unique. Length must be between 1 and 100\ncharacters.", + "launch_stage": "GA" + }, + "max_capacity": { + "description": "Maximum number of outstanding instances to keep in the pool, including both instances used by\nclusters and idle instances. Clusters that require further instance provisioning will fail during\nupsize requests.", + "launch_stage": "GA" + }, + "min_idle_instances": { + "description": "Minimum number of idle instances to keep in the instance pool", + "launch_stage": "GA" + }, + "node_type_flexibility": { + "description": "Flexible node type configuration for the pool.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "node_type_id": { + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "launch_stage": "GA" + }, + "preloaded_docker_images": { + "description": "Custom Docker Image BYOC", + "launch_stage": "GA" + }, + "preloaded_spark_versions": { + "description": "A list containing at most one preloaded Spark image version for the pool. Pool-backed clusters started\nwith the preloaded Spark version will start faster. A list of available Spark versions\ncan be retrieved by using the [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "launch_stage": "GA" + }, + "remote_disk_throughput": { + "description": "If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED types.", + "launch_stage": "GA" + }, + "state": { + "description": "Current state of the instance pool.", + "ref": "compute.InstancePoolState", + "launch_stage": "GA" + }, + "stats": { + "description": "Usage statistics about the instance pool.", + "ref": "compute.InstancePoolStats", + "launch_stage": "GA" + }, + "status": { + "description": "Status of failed pending instances in the pool.", + "ref": "compute.InstancePoolStatus", + "launch_stage": "GA" + }, + "total_initial_remote_disk_size": { + "description": "If set, what the total initial volume size (in GB) of the remote disks should be. Currently only supported for GCP HYPERDISK_BALANCED types.", + "launch_stage": "GA" + } + } + }, + "compute.InstancePoolAwsAttributes": { + "description": "Attributes set during instance pool creation which are related to Amazon Web Services.", + "fields": { + "availability": { + "description": "Availability type used for the instances in the pool. Supports on-demand, spot, and\nspot-with-fallback (the pool acquires spot instances first, and falls back to on-demand\ninstances when spot capacity is unavailable).\n\nYou can change this value on an existing pool. New clusters use the updated availability, and\nexisting clusters keep the availability they launched with.", + "ref": "compute.InstancePoolAwsAttributesAvailability", + "launch_stage": "GA" + }, + "instance_profile_arn": { + "description": "All AWS instances belonging to the instance pool will have this instance profile. If omitted, instances\nwill initially be launched with the workspace's default instance profile. If defined, clusters that use the\npool will inherit the instance profile, and must not specify their own instance profile on cluster creation or\nupdate. If the pool does not specify an instance profile, clusters using the pool may specify any instance profile.\nThe instance profile must have previously been added to the Databricks environment by an account administrator.\n\nThis feature may only be available to certain customer plans.", + "launch_stage": "PUBLIC_BETA" + }, + "spot_bid_price_percent": { + "description": "Calculates the bid price for AWS spot instances, as a percentage of the corresponding instance type's\non-demand price.\nFor example, if this field is set to 50, and the cluster needs a new `r3.xlarge` spot\ninstance, then the bid price is half of the price of\non-demand `r3.xlarge` instances. Similarly, if this field is set to 200, the bid price is twice\nthe price of on-demand `r3.xlarge` instances. If not specified, the default value is 100.\nWhen spot instances are requested for this cluster, only spot instances whose bid price\npercentage matches this field will be considered.\nNote that, for safety, we enforce this field to be no more than 10000.\n\nYou can change this value on an existing pool. New clusters use the updated bid price, and\nexisting clusters keep the bid price they launched with.", + "launch_stage": "GA" + }, + "zone_id": { + "description": "Identifier for the availability zone/datacenter in which the cluster resides.\nThis string will be of a form like \"us-west-2a\". The provided availability\nzone must be in the same region as the Databricks deployment. For example, \"us-west-2a\"\nis not a valid zone id if the Databricks deployment resides in the \"us-east-1\" region.\nThis is an optional field at cluster creation, and if not specified, a default zone will be used.\nThe list of available zones as well as the default value can be found by using the\n`List Zones` method.\n\nSet this field to \"auto\" to enable Auto-AZ, in which case Databricks selects the availability\nzone for each cluster independently when the cluster launches, and retries another zone if the\ncluster can't be fulfilled because of insufficient capacity or quota. All nodes in a cluster\nland in the same zone, and different clusters backed by the pool can run in different zones.\n\nYou can change the zone on an existing pool. New clusters use the updated zone, and existing\nclusters keep the zone they launched with.", + "launch_stage": "GA" + } + } + }, + "compute.InstancePoolAwsAttributesAvailability": { + "description": "The set of AWS availability types supported when setting up nodes for a cluster.", + "enum": [ + "SPOT", + "ON_DEMAND" + ], + "enum_launch_stages": { + "ON_DEMAND": "GA", + "SPOT": "GA" + } + }, + "compute.InstancePoolAzureAttributes": { + "description": "Attributes set during instance pool creation which are related to Azure.", + "fields": { + "availability": { + "description": "Availability type used for the instances in the pool. Supports on-demand, spot, and\nspot-with-fallback (the pool acquires spot instances first, and falls back to on-demand\ninstances when spot capacity is unavailable).\n\nYou can change this value on an existing pool. New clusters use the updated availability, and\nexisting clusters keep the availability they launched with.", + "ref": "compute.InstancePoolAzureAttributesAvailability", + "launch_stage": "GA" + }, + "capacity_reservation_group": { + "description": "The Azure capacity reservation group resource ID to use for launching VMs in this pool.\nWhen specified, VMs will be launched using the provided capacity reservation.\n\nNOTE: Omitting this field will clear any existing configured capacity reservation group on the pool.\n\nCapacity reservations can only be specified when the workspace uses injected vnet (i.e. customer defined vnet not\nmanaged by databricks). Ensure the databricks-login-prod Enterprise Application is granted the following four permissions:\n1. Microsoft.Compute/capacityReservationGroups/read\n2. Microsoft.Compute/capacityReservationGroups/deploy/action\n3. Microsoft.Compute/capacityReservationGroups/capacityReservations/read\n4. Microsoft.Compute/capacityReservationGroups/capacityReservations/deploy/action\n\nFormat: `/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}`", + "launch_stage": "GA" + }, + "spot_bid_max_price": { + "description": "With variable pricing, you have option to set a max price, in US dollars (USD)\nFor example, the value 2 would be a max price of $2.00 USD per hour.\nIf you set the max price to be -1, the VM won't be evicted based on price.\nThe price for the VM will be the current price for spot or the price for a standard VM,\nwhich ever is less, as long as there is capacity and quota available.\n\nYou can change this value on an existing pool. New clusters use the updated max price, and\nexisting clusters keep the max price they launched with.", + "launch_stage": "GA" + } + } + }, + "compute.InstancePoolAzureAttributesAvailability": { + "description": "The set of Azure availability types supported when setting up nodes for a cluster.", + "enum": [ + "SPOT_AZURE", + "ON_DEMAND_AZURE" + ], + "enum_launch_stages": { + "ON_DEMAND_AZURE": "GA", + "SPOT_AZURE": "GA" + } + }, + "compute.InstancePoolGcpAttributes": { + "description": "Attributes set during instance pool creation which are related to GCP.", + "fields": { + "gcp_availability": { + "description": "Availability type for the instances in the pool. One of:\n\n- `ON_DEMAND_GCP`: the pool uses on-demand instances only.\n- `PREEMPTIBLE_GCP`: the pool uses preemptible instances only.\n- `PREEMPTIBLE_WITH_FALLBACK_GCP`: the pool acquires preemptible instances first, and falls\nback to on-demand instances when preemptible capacity is unavailable.", + "ref": "compute.GcpAvailability", + "launch_stage": "GA" + }, + "local_ssd_count": { + "description": "If provided, each node in the instance pool will have this number of local SSDs attached.\nEach local SSD is 375GB in size. Refer to [GCP documentation](https://cloud.google.com/compute/docs/disks/local-ssd#choose_number_local_ssds)\nfor the supported number of local SSDs for each instance type.", + "launch_stage": "GA" + }, + "zone_id": { + "description": "Identifier for the availability zone/datacenter in which the cluster resides.\nThis string will be of a form like \"us-west1-a\". The provided availability\nzone must be in the same region as the Databricks workspace. For example, \"us-west1-a\"\nis not a valid zone id if the Databricks workspace resides in the \"us-east1\" region.\nThis is an optional field at instance pool creation, and if not specified, a default zone will be used.\n\nThis field can be one of the following:\n- \"HA\" =\u003e High availability, spread nodes across availability zones for a Databricks deployment region\n- \"auto\" =\u003e Auto-AZ. Databricks selects the availability zone for each cluster independently when the cluster launches, and retries another zone if the cluster can't be fulfilled because of insufficient capacity or quota. All nodes in a cluster land in the same zone, and different clusters backed by the pool can run in different zones.\n- A GCP availability zone =\u003e Pick One of the available zones for (machine type + region) from https://cloud.google.com/compute/docs/regions-zones (e.g. \"us-west1-a\").\n\nIf empty, Databricks picks an availability zone to schedule the cluster on.\n\nYou can change the zone on an existing pool. New clusters use the updated zone, and existing\nclusters keep the zone they launched with.", + "launch_stage": "GA" + } + } + }, + "compute.InstancePoolPermission": { + "fields": { + "inherited": { + "launch_stage": "GA" + }, + "inherited_from_object": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "compute.InstancePoolPermissionLevel", + "launch_stage": "GA" + } + } + }, + "compute.InstancePoolPermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_MANAGE", + "CAN_ATTACH_TO" + ] + }, + "compute.InstancePoolPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "launch_stage": "GA" + }, + "object_type": { + "launch_stage": "GA" + } + } + }, + "compute.InstancePoolPermissionsDescription": { + "fields": { + "description": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "compute.InstancePoolPermissionLevel", + "launch_stage": "GA" + } + } + }, + "compute.InstancePoolPermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "compute.InstancePoolState": { + "description": "The state of a Cluster. The current allowable state transitions are as follows:\n\n- ``ACTIVE`` -\u003e ``STOPPED``\n- ``ACTIVE`` -\u003e ``DELETED``\n- ``STOPPED`` -\u003e ``ACTIVE``\n- ``STOPPED`` -\u003e ``DELETED``", + "enum": [ + "ACTIVE", + "STOPPED", + "DELETED" + ], + "enum_launch_stages": { + "ACTIVE": "GA", + "DELETED": "GA", + "STOPPED": "GA" + } + }, + "compute.InstancePoolStats": { + "fields": { + "idle_count": { + "description": "Number of active instances in the pool that are NOT part of a cluster.", + "launch_stage": "GA" + }, + "pending_idle_count": { + "description": "Number of pending instances in the pool that are NOT part of a cluster.", + "launch_stage": "GA" + }, + "pending_used_count": { + "description": "Number of pending instances in the pool that are part of a cluster.", + "launch_stage": "GA" + }, + "used_count": { + "description": "Number of active instances in the pool that are part of a cluster.", + "launch_stage": "GA" + } + } + }, + "compute.InstancePoolStatus": { + "fields": { + "pending_instance_errors": { + "description": "List of error messages for the failed pending instances.\nThe pending_instance_errors follows FIFO with maximum length of the min_idle of the pool.\nThe pending_instance_errors is emptied once the number of exiting available instances reaches\nthe min_idle of the pool.", + "launch_stage": "GA" + } + } + }, + "compute.InstanceProfile": { + "fields": { + "iam_role_arn": { + "description": "The AWS IAM role ARN of the role associated with the instance profile.\nThis field is required if your role name and instance profile name do\nnot match and you want to use the instance profile with\n[Databricks SQL Serverless](https://docs.databricks.com/sql/admin/serverless.html).\n\nOtherwise, this field is optional.", + "launch_stage": "GA" + }, + "instance_profile_arn": { + "description": "The AWS ARN of the instance profile to register with Databricks. This field is required.", + "launch_stage": "GA" + }, + "is_meta_instance_profile": { + "description": "Boolean flag indicating whether the instance profile should only be used in credential\npassthrough scenarios. If true, it means the instance profile contains an meta IAM role\nwhich could assume a wide range of roles. Therefore it should always be used with\nauthorization.\nThis field is optional, the default value is `false`.", + "launch_stage": "GA" + } + } + }, + "compute.Kind": { + "description": "The kind of compute described by this compute specification.\n\nDepending on `kind`, different validations and default values will be applied.\n\nClusters with `kind = CLASSIC_PREVIEW` support the following fields, whereas clusters with no specified `kind` do not.\n* [is_single_node](/api/workspace/clusters/create#is_single_node)\n* [use_ml_runtime](/api/workspace/clusters/create#use_ml_runtime)\n\nBy using the [simple form](https://docs.databricks.com/compute/simple-form.html), your clusters are automatically using `kind = CLASSIC_PREVIEW`.", + "enum": [ + "CLASSIC_PREVIEW" + ], + "enum_launch_stages": { + "CLASSIC_PREVIEW": "GA" + } + }, + "compute.Language": { + "enum": [ + "python", + "scala", + "sql", + "r" + ], + "enum_launch_stages": { + "python": "GA", + "r": "GA", + "scala": "GA", + "sql": "GA" + } + }, + "compute.Library": { + "fields": { + "cran": { + "description": "Specification of a CRAN library to be installed as part of the library", + "ref": "compute.RCranLibrary", + "launch_stage": "GA" + }, + "egg": { + "description": "Deprecated. URI of the egg library to install. Installing Python egg files is deprecated and is not supported in Databricks Runtime 14.0 and above.", + "deprecated": true, + "launch_stage": "GA" + }, + "jar": { + "description": "URI of the JAR library to install. Supported URIs include Workspace paths, Unity Catalog Volumes paths, and S3 URIs.\nFor example: `{ \"jar\": \"/Workspace/path/to/library.jar\" }`, `{ \"jar\" : \"/Volumes/path/to/library.jar\" }` or\n`{ \"jar\": \"s3://my-bucket/library.jar\" }`.\nIf S3 is used, please make sure the cluster has read access on the library. You may need to\nlaunch the cluster with an IAM role to access the S3 URI.", + "launch_stage": "GA" + }, + "maven": { + "description": "Specification of a maven library to be installed. For example:\n`{ \"coordinates\": \"org.jsoup:jsoup:1.7.2\" }`", + "ref": "compute.MavenLibrary", + "launch_stage": "GA" + }, + "pypi": { + "description": "Specification of a PyPi library to be installed. For example:\n`{ \"package\": \"simplejson\" }`", + "ref": "compute.PythonPyPiLibrary", + "launch_stage": "GA" + }, + "requirements": { + "description": "URI of the requirements.txt file to install. Only Workspace paths and Unity Catalog Volumes paths are supported.\nFor example: `{ \"requirements\": \"/Workspace/path/to/requirements.txt\" }` or `{ \"requirements\" : \"/Volumes/path/to/requirements.txt\" }`", + "launch_stage": "GA" + }, + "whl": { + "description": "URI of the wheel library to install. Supported URIs include Workspace paths, Unity Catalog Volumes paths, and S3 URIs.\nFor example: `{ \"whl\": \"/Workspace/path/to/library.whl\" }`, `{ \"whl\" : \"/Volumes/path/to/library.whl\" }` or\n`{ \"whl\": \"s3://my-bucket/library.whl\" }`.\nIf S3 is used, please make sure the cluster has read access on the library. You may need to\nlaunch the cluster with an IAM role to access the S3 URI.", + "launch_stage": "GA" + } + } + }, + "compute.LibraryFullStatus": { + "description": "The status of the library on a specific cluster.", + "fields": { + "is_library_for_all_clusters": { + "description": "Whether the library was set to be installed on all clusters via the libraries UI.", + "launch_stage": "GA" + }, + "library": { + "description": "Unique identifier for the library.", + "ref": "compute.Library", + "launch_stage": "GA" + }, + "messages": { + "description": "All the info and warning messages that have occurred so far for this library.", + "launch_stage": "GA" + }, + "status": { + "description": "Status of installing the library on the cluster.", + "ref": "compute.LibraryInstallStatus", + "launch_stage": "GA" + } + } + }, + "compute.LibraryInstallStatus": { + "description": "The status of a library on a specific cluster.", + "enum": [ + "PENDING", + "RESOLVING", + "INSTALLING", + "INSTALLED", + "FAILED", + "UNINSTALL_ON_RESTART", + "SKIPPED", + "RESTORED" + ], + "enum_launch_stages": { + "FAILED": "GA", + "INSTALLED": "GA", + "INSTALLING": "GA", + "PENDING": "GA", + "RESOLVING": "GA", + "RESTORED": "GA", + "SKIPPED": "GA", + "UNINSTALL_ON_RESTART": "GA" + } + }, + "compute.ListAllClusterLibraryStatuses": {}, + "compute.ListAllClusterLibraryStatusesResponse": { + "fields": { + "statuses": { + "description": "A list of cluster statuses.", + "launch_stage": "GA" + } + } + }, + "compute.ListAvailableZonesResponse": { + "fields": { + "default_zone": { + "description": "The availability zone if no ``zone_id`` is provided in the cluster creation request.", + "launch_stage": "GA" + }, + "zones": { + "description": "The list of available zones (e.g., ['us-west-2c', 'us-east-2']).", + "launch_stage": "GA" + } + } + }, + "compute.ListClusterCompliancesRequest": { + "fields": { + "page_size": { + "description": "Use this field to specify the maximum number of results to be returned by the server.\nThe server may further constrain the maximum number of results returned in a\nsingle page.", + "launch_stage": "GA" + }, + "page_token": { + "description": "A page token that can be used to navigate to the next page or previous page as\nreturned by `next_page_token` or `prev_page_token`.", + "launch_stage": "GA" + }, + "policy_id": { + "description": "Canonical unique identifier for the cluster policy.", + "launch_stage": "GA" + } + } + }, + "compute.ListClusterCompliancesResponse": { + "fields": { + "clusters": { + "description": "A list of clusters and their policy compliance statuses.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "This field represents the pagination token to retrieve the next page of results.\nIf the value is \"\", it means no further results for the request.", + "launch_stage": "GA" + }, + "prev_page_token": { + "description": "This field represents the pagination token to retrieve the previous page of results.\nIf the value is \"\", it means no further results for the request.", + "launch_stage": "GA" + } + } + }, + "compute.ListClusterPoliciesRequest": { + "fields": { + "sort_column": { + "description": "The cluster policy attribute to sort by.\n* `POLICY_CREATION_TIME` - Sort result list by policy creation time.\n* `POLICY_NAME` - Sort result list by policy name.", + "ref": "compute.ListSortColumn", + "launch_stage": "GA" + }, + "sort_order": { + "description": "The order in which the policies get listed.\n* `DESC` - Sort result list in descending order.\n* `ASC` - Sort result list in ascending order.", + "ref": "compute.ListSortOrder", + "launch_stage": "GA" + } + } + }, + "compute.ListClustersFilterBy": { + "fields": { + "cluster_sources": { + "description": "The source of cluster creation.", + "launch_stage": "GA" + }, + "cluster_states": { + "description": "The current state of the clusters.", + "launch_stage": "GA" + }, + "is_pinned": { + "description": "Whether the clusters are pinned or not.", + "launch_stage": "GA" + }, + "policy_id": { + "description": "The ID of the cluster policy used to create the cluster if applicable.", + "launch_stage": "GA" + } + } + }, + "compute.ListClustersRequest": { + "fields": { + "filter_by": { + "description": "Filters to apply to the list of clusters.", + "ref": "compute.ListClustersFilterBy", + "launch_stage": "GA" + }, + "page_size": { + "description": "Use this field to specify the maximum number of results to be returned by the server. The server may further constrain the maximum number of results returned in a single page.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Use next_page_token or prev_page_token returned from the previous request to list the next or previous page of clusters respectively.", + "launch_stage": "GA" + }, + "sort_by": { + "description": "Sort the list of clusters by a specific criteria.", + "ref": "compute.ListClustersSortBy", + "launch_stage": "GA" + } + } + }, + "compute.ListClustersResponse": { + "fields": { + "clusters": { + "launch_stage": "GA" + }, + "next_page_token": { + "description": "This field represents the pagination token to retrieve the next page of results.\nIf the value is \"\", it means no further results for the request.", + "launch_stage": "GA" + }, + "prev_page_token": { + "description": "This field represents the pagination token to retrieve the previous page of results.\nIf the value is \"\", it means no further results for the request.", + "launch_stage": "GA" + } + } + }, + "compute.ListClustersSortBy": { + "fields": { + "direction": { + "description": "The direction to sort by.", + "ref": "compute.ListClustersSortByDirection", + "launch_stage": "GA" + }, + "field": { + "description": "The sorting criteria. By default, clusters are sorted by 3 columns from highest to lowest precedence: cluster state, pinned or unpinned, then cluster name.", + "ref": "compute.ListClustersSortByField", + "launch_stage": "GA" + } + } + }, + "compute.ListClustersSortByDirection": { + "enum": [ + "ASC", + "DESC" + ], + "enum_launch_stages": { + "ASC": "GA", + "DESC": "GA" + } + }, + "compute.ListClustersSortByField": { + "enum": [ + "DEFAULT", + "CLUSTER_NAME" + ], + "enum_launch_stages": { + "CLUSTER_NAME": "GA", + "DEFAULT": "GA" + } + }, + "compute.ListGlobalInitScriptsRequest": {}, + "compute.ListGlobalInitScriptsResponse": { + "fields": { + "scripts": { + "launch_stage": "GA" + } + } + }, + "compute.ListInstancePools": { + "fields": { + "instance_pools": { + "launch_stage": "GA" + } + } + }, + "compute.ListInstancePoolsRequest": {}, + "compute.ListInstanceProfilesRequest": {}, + "compute.ListInstanceProfilesResponse": { + "fields": { + "instance_profiles": { + "description": "A list of instance profiles that the user can access.", + "launch_stage": "GA" + } + } + }, + "compute.ListNodeTypesRequest": {}, + "compute.ListNodeTypesResponse": { + "fields": { + "node_types": { + "description": "The list of available Spark node types.", + "launch_stage": "GA" + } + } + }, + "compute.ListPoliciesResponse": { + "fields": { + "policies": { + "description": "List of policies.", + "launch_stage": "GA" + } + } + }, + "compute.ListPolicyFamiliesRequest": { + "fields": { + "max_results": { + "description": "Maximum number of policy families to return.", + "launch_stage": "GA" + }, + "page_token": { + "description": "A token that can be used to get the next page of results.", + "launch_stage": "GA" + } + } + }, + "compute.ListPolicyFamiliesResponse": { + "fields": { + "next_page_token": { + "description": "A token that can be used to get the next page of results. If not present, there are no more results to show.", + "launch_stage": "GA" + }, + "policy_families": { + "description": "List of policy families.", + "launch_stage": "GA" + } + } + }, + "compute.ListSortColumn": { + "enum": [ + "POLICY_CREATION_TIME", + "POLICY_NAME" + ], + "enum_launch_stages": { + "POLICY_CREATION_TIME": "GA", + "POLICY_NAME": "GA" + } + }, + "compute.ListSortOrder": { + "enum": [ + "DESC", + "ASC" + ], + "enum_launch_stages": { + "ASC": "GA", + "DESC": "GA" + } + }, + "compute.ListZonesRequest": {}, + "compute.LocalFileInfo": { + "fields": { + "destination": { + "description": "local file destination, e.g. `file:/my/local/file.sh`", + "launch_stage": "GA" + } + } + }, + "compute.LogAnalyticsInfo": { + "fields": { + "log_analytics_primary_key": { + "launch_stage": "GA" + }, + "log_analytics_workspace_id": { + "launch_stage": "GA" + } + } + }, + "compute.LogSyncStatus": { + "description": "The log delivery status", + "fields": { + "last_attempted": { + "description": "The timestamp of last attempt. If the last attempt fails, `last_exception` will contain the\nexception in the last attempt.", + "launch_stage": "GA" + }, + "last_exception": { + "description": "The exception thrown in the last attempt, it would be null (omitted in the response) if\nthere is no exception in last attempted.", + "launch_stage": "GA" + } + } + }, + "compute.MapAny": {}, + "compute.MavenLibrary": { + "fields": { + "coordinates": { + "description": "Gradle-style maven coordinates. For example: \"org.jsoup:jsoup:1.7.2\".", + "launch_stage": "GA" + }, + "exclusions": { + "description": "List of dependences to exclude. For example: `[\"slf4j:slf4j\", \"*:hadoop-client\"]`.\n\nMaven dependency exclusions:\nhttps://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html.", + "launch_stage": "GA" + }, + "repo": { + "description": "Maven repo to install the Maven package from. If omitted, both Maven Central Repository\nand Spark Packages are searched.", + "launch_stage": "GA" + } + } + }, + "compute.NodeInstanceType": { + "description": "This structure embodies the machine type that hosts spark containers\nNote: this should be an internal data structure for now\nIt is defined in proto in case we want to send it over the wire in the future (which is likely)", + "fields": { + "instance_type_id": { + "description": "Unique identifier across instance types", + "launch_stage": "GA" + }, + "local_disk_size_gb": { + "description": "Size of the individual local disks attached to this instance (i.e. per local disk).", + "launch_stage": "GA" + }, + "local_disks": { + "description": "Number of local disks that are present on this instance.", + "launch_stage": "GA" + }, + "local_nvme_disk_size_gb": { + "description": "Size of the individual local nvme disks attached to this instance (i.e. per local disk).", + "launch_stage": "GA" + }, + "local_nvme_disks": { + "description": "Number of local nvme disks that are present on this instance.", + "launch_stage": "GA" + } + } + }, + "compute.NodeType": { + "description": "A description of a Spark node type including both the dimensions of the node and the\ninstance type on which it will be hosted.", + "fields": { + "category": { + "description": "A descriptive category for this node type. Examples include \"Memory Optimized\" and\n\"Compute Optimized\".", + "launch_stage": "GA" + }, + "description": { + "description": "A string description associated with this node type, e.g., \"r3.xlarge\".", + "launch_stage": "GA" + }, + "display_order": { + "description": "An optional hint at the display order of node types in the UI.\nWithin a node type category, lowest numbers come first.", + "launch_stage": "GA" + }, + "instance_type_id": { + "description": "An identifier for the type of hardware that this node runs on, e.g., \"r3.2xlarge\" in AWS.", + "launch_stage": "GA" + }, + "is_deprecated": { + "description": "Whether the node type is deprecated. Non-deprecated node types offer greater performance.", + "launch_stage": "GA" + }, + "is_encrypted_in_transit": { + "description": "AWS specific, whether this instance supports encryption in transit, used for hipaa and pci\nworkloads.", + "launch_stage": "GA" + }, + "is_graviton": { + "description": "Whether this is an Arm-based instance.", + "launch_stage": "GA" + }, + "is_hidden": { + "description": "Whether this node is hidden from presentation in the UI.", + "launch_stage": "GA" + }, + "is_io_cache_enabled": { + "description": "Whether this node comes with IO cache enabled by default.", + "launch_stage": "GA" + }, + "memory_mb": { + "description": "Memory (in MB) available for this node type.", + "launch_stage": "GA" + }, + "node_info": { + "description": "A collection of node type info reported by the cloud provider", + "ref": "compute.CloudProviderNodeInfo", + "launch_stage": "GA" + }, + "node_instance_type": { + "description": "The NodeInstanceType object corresponding to instance_type_id", + "ref": "compute.NodeInstanceType", + "launch_stage": "GA" + }, + "node_type_id": { + "description": "Unique identifier for this node type.", + "launch_stage": "GA" + }, + "num_cores": { + "description": "Number of CPU cores available for this node type.\nNote that this can be fractional, e.g., 2.5 cores, if the number of cores on a\nmachine instance is not divisible by the number of Spark nodes on that machine.", + "launch_stage": "GA" + }, + "num_gpus": { + "description": "Number of GPUs available for this node type.", + "launch_stage": "GA" + }, + "photon_driver_capable": { + "launch_stage": "GA" + }, + "photon_worker_capable": { + "launch_stage": "GA" + }, + "support_cluster_tags": { + "description": "Whether this node type support cluster tags.", + "launch_stage": "GA" + }, + "support_ebs_volumes": { + "description": "Whether this node type support EBS volumes. EBS volumes is disabled for node types that\nwe could place multiple corresponding containers on the same hosting instance.", + "launch_stage": "GA" + }, + "support_port_forwarding": { + "description": "Whether this node type supports port forwarding.", + "launch_stage": "GA" + } + } + }, + "compute.NodeTypeFlexibility": { + "description": "Configuration for flexible node types, allowing fallback to alternate node types during cluster launch and upscale.", + "fields": { + "alternate_node_type_ids": { + "description": "A list of node type IDs to use as fallbacks when the primary node type is unavailable.", + "launch_stage": "GA" + }, + "aws_context_id": { + "description": "The AWS Context ID for EC2 Fleet.\nWhen set (non-empty), the value is passed to AWS CreateFleet API to create the EC2 Fleet.", + "launch_stage": "GA" + } + } + }, + "compute.PendingEnforcement": { + "description": "Represents a pending enforcement on a cluster, which contains the changes to make to the cluster\nconfiguration when the cluster is next terminated or restarted.", + "fields": { + "enforcement_status": { + "description": "Whether the pending enforcement will be applied. A pending enforcement begins in `ACTIVE`\nstate. If the enforcement fails to apply too many times, the state transitions to `INACTIVE`.\nAfterwards, the enforcement must be re-scheduled to become `ACTIVE` again.", + "ref": "compute.PendingEnforcementEnforcementStatus", + "launch_stage": "GA" + }, + "initiate_time": { + "description": "The time the pending enforcement was initiated.", + "launch_stage": "GA" + }, + "initiator_user": { + "description": "The user who initiated the pending enforcement.", + "launch_stage": "GA" + }, + "target_changes": { + "description": "A list of changes that will be made to the cluster configuration when the pending\nenforcement is applied.", + "launch_stage": "GA" + }, + "target_spec": { + "description": "The new configuration to apply upon cluster termination or restart.", + "ref": "compute.EnforcePolicyComplianceForClusterResponseClusterSettings", + "launch_stage": "GA" + } + } + }, + "compute.PendingEnforcementEnforcementStatus": { + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "enum_launch_stages": { + "ACTIVE": "GA", + "INACTIVE": "GA" + } + }, + "compute.PendingInstanceError": { + "description": "Error message of a failed pending instances", + "fields": { + "instance_id": { + "launch_stage": "GA" + }, + "message": { + "launch_stage": "GA" + } + } + }, + "compute.PermanentDeleteCluster": { + "fields": { + "cluster_id": { + "description": "The cluster to be deleted.", + "launch_stage": "GA" + } + } + }, + "compute.PermanentDeleteClusterResponse": {}, + "compute.PinCluster": { + "fields": { + "cluster_id": { + "launch_stage": "GA" + } + } + }, + "compute.PinClusterResponse": {}, + "compute.Policy": { + "description": "Describes a Cluster Policy entity.", + "fields": { + "created_at_timestamp": { + "description": "Creation time. The timestamp (in millisecond) when this Cluster Policy was created.", + "launch_stage": "GA" + }, + "creator_user_name": { + "description": "Creator user name.\nThe field won't be included in the response if the user has already been deleted.", + "launch_stage": "GA" + }, + "definition": { + "description": "Policy definition document expressed in [Databricks Cluster Policy Definition Language](https://docs.databricks.com/administration-guide/clusters/policy-definition.html).", + "launch_stage": "GA" + }, + "description": { + "description": "Additional human-readable description of the cluster policy.", + "launch_stage": "GA" + }, + "is_default": { + "description": "If true, policy is a default policy created and managed by Databricks.\nDefault policies cannot be deleted, and their policy families cannot be changed.", + "launch_stage": "GA" + }, + "libraries": { + "description": "A list of libraries to be installed on the next cluster restart that uses this policy. The maximum number of libraries is 500.", + "launch_stage": "GA" + }, + "max_clusters_per_user": { + "description": "Max number of clusters per user that can be active using this policy. If not present, there is no max limit.", + "launch_stage": "GA" + }, + "name": { + "description": "Cluster Policy name requested by the user. This has to be unique. Length must be between 1 and 100\ncharacters.", + "launch_stage": "GA" + }, + "policy_family_definition_overrides": { + "description": "Policy definition JSON document expressed in [Databricks Policy Definition Language](https://docs.databricks.com/administration-guide/clusters/policy-definition.html).\nThe JSON document must be passed as a string and cannot be embedded in the requests.\n\nYou can use this to customize the policy definition inherited from the policy family.\nPolicy rules specified here are merged into the inherited policy definition.", + "launch_stage": "GA" + }, + "policy_family_id": { + "description": "ID of the policy family. The cluster policy's policy definition inherits the policy\nfamily's policy definition.\n\nCannot be used with `definition`. Use `policy_family_definition_overrides` instead to\ncustomize the policy definition.", + "launch_stage": "GA" + }, + "policy_id": { + "description": "Canonical unique identifier for the Cluster Policy.", + "launch_stage": "GA" + } + } + }, + "compute.PolicyFamily": { + "fields": { + "definition": { + "description": "Policy definition document expressed in [Databricks Cluster Policy Definition Language](https://docs.databricks.com/administration-guide/clusters/policy-definition.html).", + "launch_stage": "GA" + }, + "description": { + "description": "Human-readable description of the purpose of the policy family.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the policy family.", + "launch_stage": "GA" + }, + "policy_family_id": { + "description": "Unique identifier for the policy family.", + "launch_stage": "GA" + } + } + }, + "compute.PythonPyPiLibrary": { + "fields": { + "package": { + "description": "The name of the pypi package to install. An optional exact version specification is also\nsupported. Examples: \"simplejson\" and \"simplejson==3.8.0\".", + "launch_stage": "GA" + }, + "repo": { + "description": "The repository where the package can be found. If not specified, the default pip index is\nused.", + "launch_stage": "GA" + } + } + }, + "compute.RCranLibrary": { + "fields": { + "package": { + "description": "The name of the CRAN package to install.", + "launch_stage": "GA" + }, + "repo": { + "description": "The repository where the package can be found. If not specified, the default CRAN repo is used.", + "launch_stage": "GA" + } + } + }, + "compute.RemoveInstanceProfile": { + "fields": { + "instance_profile_arn": { + "description": "The ARN of the instance profile to remove. This field is required.", + "launch_stage": "GA" + } + } + }, + "compute.RemoveResponse": {}, + "compute.ResizeCluster": { + "fields": { + "autoscale": { + "description": "Parameters needed in order to automatically scale clusters up and down based on load.\nNote: autoscaling works best with DB runtime versions 3.0 or later.", + "ref": "compute.AutoScale", + "launch_stage": "GA" + }, + "cluster_id": { + "description": "The cluster to be resized.", + "launch_stage": "GA" + }, + "num_workers": { + "description": "Number of worker nodes that this cluster should have. A cluster has one Spark Driver\nand `num_workers` Executors for a total of `num_workers` + 1 Spark nodes.\n\nNote: When reading the properties of a cluster, this field reflects the desired number\nof workers rather than the actual current number of workers. For instance, if a cluster\nis resized from 5 to 10 workers, this field will immediately be updated to reflect\nthe target size of 10 workers, whereas the workers listed in `spark_info` will gradually\nincrease from 5 to 10 as the new nodes are provisioned.", + "launch_stage": "GA" + } + } + }, + "compute.ResizeClusterResponse": {}, + "compute.RestartCluster": { + "fields": { + "cluster_id": { + "description": "The cluster to be started.", + "launch_stage": "GA" + }, + "restart_user": { + "launch_stage": "GA" + } + } + }, + "compute.RestartClusterResponse": {}, + "compute.ResultType": { + "enum": [ + "error", + "image", + "images", + "table", + "text" + ], + "enum_launch_stages": { + "error": "GA", + "image": "GA", + "images": "GA", + "table": "GA", + "text": "GA" + } + }, + "compute.Results": { + "fields": { + "cause": { + "description": "The cause of the error", + "launch_stage": "GA" + }, + "data": { + "launch_stage": "GA" + }, + "fileName": { + "description": "The image data in one of the following formats:\n\n1. A Data URL with base64-encoded image data: `data:image/{type};base64,{base64-data}`.\nExample: `data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...`\n\n2. A FileStore file path for large images: `/plots/{filename}.png`.\nExample: `/plots/b6a7ad70-fb2c-4353-8aed-3f1e015174a4.png`", + "launch_stage": "GA" + }, + "fileNames": { + "description": "List of image data for multiple images. Each element follows the same format as file_name.", + "launch_stage": "GA" + }, + "isJsonSchema": { + "description": "true if a JSON schema is returned instead of a string representation of the Hive type.", + "launch_stage": "GA" + }, + "pos": { + "description": "internal field used by SDK", + "launch_stage": "GA" + }, + "resultType": { + "ref": "compute.ResultType", + "launch_stage": "GA" + }, + "schema": { + "description": "The table schema", + "launch_stage": "GA" + }, + "summary": { + "description": "The summary of the error", + "launch_stage": "GA" + }, + "truncated": { + "description": "true if partial results are returned.", + "launch_stage": "GA" + } + } + }, + "compute.RuntimeEngine": { + "enum": [ + "NULL", + "STANDARD", + "PHOTON" + ], + "enum_launch_stages": { + "NULL": "GA", + "PHOTON": "GA", + "STANDARD": "GA" + } + }, + "compute.S3StorageInfo": { + "description": "A storage location in Amazon S3", + "fields": { + "canned_acl": { + "description": "(Optional) Set canned access control list for the logs, e.g. `bucket-owner-full-control`.\nIf `canned_cal` is set, please make sure the cluster iam role has `s3:PutObjectAcl` permission on\nthe destination bucket and prefix. The full list of possible canned acl can be found at\nhttp://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl.\nPlease also note that by default only the object owner gets full controls. If you are using cross account\nrole for writing data, you may want to set `bucket-owner-full-control` to make bucket owner able to\nread the logs.", + "launch_stage": "GA" + }, + "destination": { + "description": "S3 destination, e.g. `s3://my-bucket/some-prefix` Note that logs will be delivered using\ncluster iam role, please make sure you set cluster iam role and the role has write access to the\ndestination. Please also note that you cannot use AWS keys to deliver logs.", + "launch_stage": "GA" + }, + "enable_encryption": { + "description": "(Optional) Flag to enable server side encryption, `false` by default.", + "launch_stage": "GA" + }, + "encryption_type": { + "description": "(Optional) The encryption type, it could be `sse-s3` or `sse-kms`. It will be used only when\nencryption is enabled and the default type is `sse-s3`.", + "launch_stage": "GA" + }, + "endpoint": { + "description": "S3 endpoint, e.g. `https://s3-us-west-2.amazonaws.com`. Either region or endpoint needs to be set.\nIf both are set, endpoint will be used.", + "launch_stage": "GA" + }, + "kms_key": { + "description": "(Optional) Kms key which will be used if encryption is enabled and encryption type is set to `sse-kms`.", + "launch_stage": "GA" + }, + "region": { + "description": "S3 region, e.g. `us-west-2`. Either region or endpoint needs to be set. If both are set,\nendpoint will be used.", + "launch_stage": "GA" + } + } + }, + "compute.SparkNode": { + "description": "Describes a specific Spark driver or executor.", + "fields": { + "host_private_ip": { + "description": "The private IP address of the host instance.", + "launch_stage": "GA" + }, + "instance_id": { + "description": "Globally unique identifier for the host instance from the cloud provider.", + "launch_stage": "GA" + }, + "node_aws_attributes": { + "description": "Attributes specific to AWS for a Spark node.", + "ref": "compute.SparkNodeAwsAttributes", + "launch_stage": "GA" + }, + "node_id": { + "description": "Globally unique identifier for this node.", + "launch_stage": "GA" + }, + "private_ip": { + "description": "Private IP address (typically a 10.x.x.x address) of the Spark node.\nNote that this is different from the private IP address of the host instance.", + "launch_stage": "GA" + }, + "public_dns": { + "description": "Public DNS address of this node. This address can be used to access\nthe Spark JDBC server on the driver node. To communicate with the JDBC server, traffic must\nbe manually authorized by adding security group rules to the \"worker-unmanaged\" security\ngroup via the AWS console.", + "launch_stage": "GA" + }, + "start_timestamp": { + "description": "The timestamp (in millisecond) when the Spark node is launched.", + "launch_stage": "GA" + } + } + }, + "compute.SparkNodeAwsAttributes": { + "description": "Attributes specific to AWS for a Spark node.", + "fields": { + "is_spot": { + "description": "Whether this node is on an Amazon spot instance.", + "launch_stage": "GA" + } + } + }, + "compute.SparkVersion": { + "fields": { + "key": { + "description": "Spark version key, for example \"2.1.x-scala2.11\". This is the value which should be provided\nas the \"spark_version\" when creating a new cluster.\nNote that the exact Spark version may change over time for a \"wildcard\" version\n(i.e., \"2.1.x-scala2.11\" is a \"wildcard\" version) with minor bug fixes.", + "launch_stage": "GA" + }, + "name": { + "description": "A descriptive name for this Spark version, for example \"Spark 2.1\".", + "launch_stage": "GA" + } + } + }, + "compute.SparkVersionsRequest": {}, + "compute.StartCluster": { + "fields": { + "cluster_id": { + "description": "The cluster to be started.", + "launch_stage": "GA" + } + } + }, + "compute.StartClusterResponse": {}, + "compute.State": { + "description": "The state of a Cluster. The current allowable state transitions are as follows:\n\n- `PENDING` -\u003e `RUNNING`\n- `PENDING` -\u003e `TERMINATING`\n- `RUNNING` -\u003e `RESIZING`\n- `RUNNING` -\u003e `RESTARTING`\n- `RUNNING` -\u003e `TERMINATING`\n- `RESTARTING` -\u003e `RUNNING`\n- `RESTARTING` -\u003e `TERMINATING`\n- `RESIZING` -\u003e `RUNNING`\n- `RESIZING` -\u003e `TERMINATING`\n- `TERMINATING` -\u003e `TERMINATED`", + "enum": [ + "PENDING", + "RUNNING", + "RESTARTING", + "RESIZING", + "TERMINATING", + "TERMINATED", + "ERROR", + "UNKNOWN" + ], + "enum_launch_stages": { + "ERROR": "GA", + "PENDING": "GA", + "RESIZING": "GA", + "RESTARTING": "GA", + "RUNNING": "GA", + "TERMINATED": "GA", + "TERMINATING": "GA", + "UNKNOWN": "GA" + } + }, + "compute.TerminationReason": { + "fields": { + "code": { + "description": "status code indicating why the cluster was terminated", + "ref": "compute.TerminationReasonCode", + "launch_stage": "GA" + }, + "parameters": { + "description": "list of parameters that provide additional information about why the cluster was terminated", + "launch_stage": "GA" + }, + "type": { + "description": "type of the termination", + "ref": "compute.TerminationReasonType", + "launch_stage": "GA" + } + } + }, + "compute.TerminationReasonCode": { + "description": "The status code indicating why the cluster was terminated.", + "enum": [ + "UNKNOWN", + "USER_REQUEST", + "JOB_FINISHED", + "INACTIVITY", + "CLOUD_PROVIDER_SHUTDOWN", + "COMMUNICATION_LOST", + "CLOUD_PROVIDER_LAUNCH_FAILURE", + "INIT_SCRIPT_FAILURE", + "SPARK_STARTUP_FAILURE", + "INVALID_ARGUMENT", + "UNEXPECTED_LAUNCH_FAILURE", + "INTERNAL_ERROR", + "INSTANCE_UNREACHABLE", + "REQUEST_REJECTED", + "TRIAL_EXPIRED", + "DRIVER_UNREACHABLE", + "SPARK_ERROR", + "DRIVER_UNRESPONSIVE", + "METASTORE_COMPONENT_UNHEALTHY", + "DBFS_COMPONENT_UNHEALTHY", + "EXECUTION_COMPONENT_UNHEALTHY", + "AZURE_RESOURCE_MANAGER_THROTTLING", + "AZURE_RESOURCE_PROVIDER_THROTTLING", + "NETWORK_CONFIGURATION_FAILURE", + "CONTAINER_LAUNCH_FAILURE", + "INSTANCE_POOL_CLUSTER_FAILURE", + "SKIPPED_SLOW_NODES", + "ATTACH_PROJECT_FAILURE", + "UPDATE_INSTANCE_PROFILE_FAILURE", + "DATABASE_CONNECTION_FAILURE", + "REQUEST_THROTTLED", + "SELF_BOOTSTRAP_FAILURE", + "GLOBAL_INIT_SCRIPT_FAILURE", + "SLOW_IMAGE_DOWNLOAD", + "INVALID_SPARK_IMAGE", + "NPIP_TUNNEL_TOKEN_FAILURE", + "HIVE_METASTORE_PROVISIONING_FAILURE", + "AZURE_INVALID_DEPLOYMENT_TEMPLATE", + "AZURE_UNEXPECTED_DEPLOYMENT_TEMPLATE_FAILURE", + "SUBNET_EXHAUSTED_FAILURE", + "BOOTSTRAP_TIMEOUT", + "STORAGE_DOWNLOAD_FAILURE", + "CONTROL_PLANE_REQUEST_FAILURE", + "BOOTSTRAP_TIMEOUT_CLOUD_PROVIDER_EXCEPTION", + "AWS_INSUFFICIENT_INSTANCE_CAPACITY_FAILURE", + "DOCKER_IMAGE_PULL_FAILURE", + "AZURE_VNET_CONFIGURATION_FAILURE", + "NPIP_TUNNEL_SETUP_FAILURE", + "AWS_AUTHORIZATION_FAILURE", + "NEPHOS_RESOURCE_MANAGEMENT", + "STS_CLIENT_SETUP_FAILURE", + "SECURITY_DAEMON_REGISTRATION_EXCEPTION", + "AWS_REQUEST_LIMIT_EXCEEDED", + "AWS_INSUFFICIENT_FREE_ADDRESSES_IN_SUBNET_FAILURE", + "AWS_UNSUPPORTED_FAILURE", + "AZURE_QUOTA_EXCEEDED_EXCEPTION", + "AZURE_OPERATION_NOT_ALLOWED_EXCEPTION", + "NFS_MOUNT_FAILURE", + "K8S_AUTOSCALING_FAILURE", + "K8S_DBR_CLUSTER_LAUNCH_TIMEOUT", + "SPARK_IMAGE_DOWNLOAD_FAILURE", + "AZURE_VM_EXTENSION_FAILURE", + "WORKSPACE_CANCELLED_ERROR", + "AWS_MAX_SPOT_INSTANCE_COUNT_EXCEEDED_FAILURE", + "TEMPORARILY_UNAVAILABLE", + "WORKER_SETUP_FAILURE", + "IP_EXHAUSTION_FAILURE", + "GCP_QUOTA_EXCEEDED", + "CLOUD_PROVIDER_RESOURCE_STOCKOUT", + "GCP_SERVICE_ACCOUNT_DELETED", + "AZURE_BYOK_KEY_PERMISSION_FAILURE", + "SPOT_INSTANCE_TERMINATION", + "AZURE_EPHEMERAL_DISK_FAILURE", + "ABUSE_DETECTED", + "IMAGE_PULL_PERMISSION_DENIED", + "WORKSPACE_CONFIGURATION_ERROR", + "SECRET_RESOLUTION_ERROR", + "UNSUPPORTED_INSTANCE_TYPE", + "CLOUD_PROVIDER_DISK_SETUP_FAILURE", + "SSH_BOOTSTRAP_FAILURE", + "AWS_INACCESSIBLE_KMS_KEY_FAILURE", + "INIT_CONTAINER_NOT_FINISHED", + "SPARK_IMAGE_DOWNLOAD_THROTTLED", + "SPARK_IMAGE_NOT_FOUND", + "CLUSTER_OPERATION_THROTTLED", + "CLUSTER_OPERATION_TIMEOUT", + "SERVERLESS_LONG_RUNNING_TERMINATED", + "AZURE_PACKED_DEPLOYMENT_PARTIAL_FAILURE", + "INVALID_WORKER_IMAGE_FAILURE", + "WORKSPACE_UPDATE", + "INVALID_AWS_PARAMETER", + "DRIVER_OUT_OF_DISK", + "DRIVER_OUT_OF_MEMORY", + "DRIVER_LAUNCH_TIMEOUT", + "DRIVER_UNEXPECTED_FAILURE", + "UNEXPECTED_POD_RECREATION", + "GCP_INACCESSIBLE_KMS_KEY_FAILURE", + "GCP_KMS_KEY_PERMISSION_DENIED", + "DRIVER_EVICTION", + "USER_INITIATED_VM_TERMINATION", + "GCP_IAM_TIMEOUT", + "AWS_RESOURCE_QUOTA_EXCEEDED", + "CLOUD_ACCOUNT_SETUP_FAILURE", + "AWS_INVALID_KEY_PAIR", + "DRIVER_POD_CREATION_FAILURE", + "MAINTENANCE_MODE", + "INTERNAL_CAPACITY_FAILURE", + "EXECUTOR_POD_UNSCHEDULED", + "STORAGE_DOWNLOAD_FAILURE_SLOW", + "STORAGE_DOWNLOAD_FAILURE_THROTTLED", + "DYNAMIC_SPARK_CONF_SIZE_EXCEEDED", + "AWS_INSTANCE_PROFILE_UPDATE_FAILURE", + "INSTANCE_POOL_NOT_FOUND", + "INSTANCE_POOL_MAX_CAPACITY_REACHED", + "AWS_INVALID_KMS_KEY_STATE", + "GCP_INSUFFICIENT_CAPACITY", + "GCP_API_RATE_QUOTA_EXCEEDED", + "GCP_RESOURCE_QUOTA_EXCEEDED", + "GCP_IP_SPACE_EXHAUSTED", + "GCP_SERVICE_ACCOUNT_ACCESS_DENIED", + "GCP_SERVICE_ACCOUNT_NOT_FOUND", + "GCP_FORBIDDEN", + "GCP_NOT_FOUND", + "RESOURCE_USAGE_BLOCKED", + "DATA_ACCESS_CONFIG_CHANGED", + "ACCESS_TOKEN_FAILURE", + "INVALID_INSTANCE_PLACEMENT_PROTOCOL", + "BUDGET_POLICY_RESOLUTION_FAILURE", + "IN_PENALTY_BOX", + "DISASTER_RECOVERY_REPLICATION", + "BOOTSTRAP_TIMEOUT_DUE_TO_MISCONFIG", + "INSTANCE_UNREACHABLE_DUE_TO_MISCONFIG", + "STORAGE_DOWNLOAD_FAILURE_DUE_TO_MISCONFIG", + "CONTROL_PLANE_REQUEST_FAILURE_DUE_TO_MISCONFIG", + "CLOUD_PROVIDER_LAUNCH_FAILURE_DUE_TO_MISCONFIG", + "GCP_SUBNET_NOT_READY", + "CLOUD_OPERATION_CANCELLED", + "CLOUD_PROVIDER_INSTANCE_NOT_LAUNCHED", + "GCP_TRUSTED_IMAGE_PROJECTS_VIOLATED", + "BUDGET_POLICY_LIMIT_ENFORCEMENT_ACTIVATED", + "EOS_SPARK_IMAGE", + "NO_MATCHED_K8S", + "LAZY_ALLOCATION_TIMEOUT", + "DRIVER_NODE_UNREACHABLE", + "SECRET_CREATION_FAILURE", + "POD_SCHEDULING_FAILURE", + "POD_ASSIGNMENT_FAILURE", + "ALLOCATION_TIMEOUT", + "ALLOCATION_TIMEOUT_NO_UNALLOCATED_CLUSTERS", + "ALLOCATION_TIMEOUT_NO_MATCHED_CLUSTERS", + "ALLOCATION_TIMEOUT_NO_READY_CLUSTERS", + "ALLOCATION_TIMEOUT_NO_WARMED_UP_CLUSTERS", + "ALLOCATION_TIMEOUT_NODE_DAEMON_NOT_READY", + "ALLOCATION_TIMEOUT_NO_HEALTHY_CLUSTERS", + "NETVISOR_SETUP_TIMEOUT", + "NO_MATCHED_K8S_TESTING_TAG", + "CLOUD_PROVIDER_RESOURCE_STOCKOUT_DUE_TO_MISCONFIG", + "GKE_BASED_CLUSTER_TERMINATION", + "ALLOCATION_TIMEOUT_NO_HEALTHY_AND_WARMED_UP_CLUSTERS", + "DOCKER_INVALID_OS_EXCEPTION", + "DOCKER_CONTAINER_CREATION_EXCEPTION", + "DOCKER_IMAGE_TOO_LARGE_FOR_INSTANCE_EXCEPTION", + "DNS_RESOLUTION_ERROR", + "GCP_DENIED_BY_ORG_POLICY", + "SECRET_PERMISSION_DENIED", + "NETWORK_CHECK_NIC_FAILURE", + "NETWORK_CHECK_DNS_SERVER_FAILURE", + "NETWORK_CHECK_STORAGE_FAILURE", + "NETWORK_CHECK_METADATA_ENDPOINT_FAILURE", + "NETWORK_CHECK_CONTROL_PLANE_FAILURE", + "NETWORK_CHECK_MULTIPLE_COMPONENTS_FAILURE", + "DRIVER_UNHEALTHY", + "USAGE_POLICY_ENTITLEMENT_DENIED", + "K8S_ACTIVE_POD_QUOTA_EXCEEDED", + "CLOUD_ACCOUNT_POD_QUOTA_EXCEEDED", + "NETWORK_CHECK_NIC_FAILURE_DUE_TO_MISCONFIG", + "NETWORK_CHECK_DNS_SERVER_FAILURE_DUE_TO_MISCONFIG", + "NETWORK_CHECK_STORAGE_FAILURE_DUE_TO_MISCONFIG", + "NETWORK_CHECK_METADATA_ENDPOINT_FAILURE_DUE_TO_MISCONFIG", + "NETWORK_CHECK_CONTROL_PLANE_FAILURE_DUE_TO_MISCONFIG", + "NETWORK_CHECK_MULTIPLE_COMPONENTS_FAILURE_DUE_TO_MISCONFIG", + "DBR_IMAGE_RESOLUTION_FAILURE", + "CONTROL_PLANE_CONNECTION_FAILURE", + "CONTROL_PLANE_CONNECTION_FAILURE_DUE_TO_MISCONFIG", + "RATE_LIMITED", + "MTLS_PORT_CONNECTIVITY_FAILURE", + "HIVEMETASTORE_CONNECTIVITY_FAILURE" + ], + "enum_launch_stages": { + "ABUSE_DETECTED": "GA", + "ACCESS_TOKEN_FAILURE": "GA", + "ALLOCATION_TIMEOUT": "GA", + "ALLOCATION_TIMEOUT_NODE_DAEMON_NOT_READY": "GA", + "ALLOCATION_TIMEOUT_NO_HEALTHY_AND_WARMED_UP_CLUSTERS": "GA", + "ALLOCATION_TIMEOUT_NO_HEALTHY_CLUSTERS": "GA", + "ALLOCATION_TIMEOUT_NO_MATCHED_CLUSTERS": "GA", + "ALLOCATION_TIMEOUT_NO_READY_CLUSTERS": "GA", + "ALLOCATION_TIMEOUT_NO_UNALLOCATED_CLUSTERS": "GA", + "ALLOCATION_TIMEOUT_NO_WARMED_UP_CLUSTERS": "GA", + "ATTACH_PROJECT_FAILURE": "GA", + "AWS_AUTHORIZATION_FAILURE": "GA", + "AWS_INACCESSIBLE_KMS_KEY_FAILURE": "GA", + "AWS_INSTANCE_PROFILE_UPDATE_FAILURE": "GA", + "AWS_INSUFFICIENT_FREE_ADDRESSES_IN_SUBNET_FAILURE": "GA", + "AWS_INSUFFICIENT_INSTANCE_CAPACITY_FAILURE": "GA", + "AWS_INVALID_KEY_PAIR": "GA", + "AWS_INVALID_KMS_KEY_STATE": "GA", + "AWS_MAX_SPOT_INSTANCE_COUNT_EXCEEDED_FAILURE": "GA", + "AWS_REQUEST_LIMIT_EXCEEDED": "GA", + "AWS_RESOURCE_QUOTA_EXCEEDED": "GA", + "AWS_UNSUPPORTED_FAILURE": "GA", + "AZURE_BYOK_KEY_PERMISSION_FAILURE": "GA", + "AZURE_EPHEMERAL_DISK_FAILURE": "GA", + "AZURE_INVALID_DEPLOYMENT_TEMPLATE": "GA", + "AZURE_OPERATION_NOT_ALLOWED_EXCEPTION": "GA", + "AZURE_PACKED_DEPLOYMENT_PARTIAL_FAILURE": "GA", + "AZURE_QUOTA_EXCEEDED_EXCEPTION": "GA", + "AZURE_RESOURCE_MANAGER_THROTTLING": "GA", + "AZURE_RESOURCE_PROVIDER_THROTTLING": "GA", + "AZURE_UNEXPECTED_DEPLOYMENT_TEMPLATE_FAILURE": "GA", + "AZURE_VM_EXTENSION_FAILURE": "GA", + "AZURE_VNET_CONFIGURATION_FAILURE": "GA", + "BOOTSTRAP_TIMEOUT": "GA", + "BOOTSTRAP_TIMEOUT_CLOUD_PROVIDER_EXCEPTION": "GA", + "BOOTSTRAP_TIMEOUT_DUE_TO_MISCONFIG": "GA", + "BUDGET_POLICY_LIMIT_ENFORCEMENT_ACTIVATED": "GA", + "BUDGET_POLICY_RESOLUTION_FAILURE": "GA", + "CLOUD_ACCOUNT_POD_QUOTA_EXCEEDED": "GA", + "CLOUD_ACCOUNT_SETUP_FAILURE": "GA", + "CLOUD_OPERATION_CANCELLED": "GA", + "CLOUD_PROVIDER_DISK_SETUP_FAILURE": "GA", + "CLOUD_PROVIDER_INSTANCE_NOT_LAUNCHED": "GA", + "CLOUD_PROVIDER_LAUNCH_FAILURE": "GA", + "CLOUD_PROVIDER_LAUNCH_FAILURE_DUE_TO_MISCONFIG": "GA", + "CLOUD_PROVIDER_RESOURCE_STOCKOUT": "GA", + "CLOUD_PROVIDER_RESOURCE_STOCKOUT_DUE_TO_MISCONFIG": "GA", + "CLOUD_PROVIDER_SHUTDOWN": "GA", + "CLUSTER_OPERATION_THROTTLED": "GA", + "CLUSTER_OPERATION_TIMEOUT": "GA", + "COMMUNICATION_LOST": "GA", + "CONTAINER_LAUNCH_FAILURE": "GA", + "CONTROL_PLANE_CONNECTION_FAILURE": "GA", + "CONTROL_PLANE_CONNECTION_FAILURE_DUE_TO_MISCONFIG": "GA", + "CONTROL_PLANE_REQUEST_FAILURE": "GA", + "CONTROL_PLANE_REQUEST_FAILURE_DUE_TO_MISCONFIG": "GA", + "DATABASE_CONNECTION_FAILURE": "GA", + "DATA_ACCESS_CONFIG_CHANGED": "GA", + "DBFS_COMPONENT_UNHEALTHY": "GA", + "DBR_IMAGE_RESOLUTION_FAILURE": "GA", + "DISASTER_RECOVERY_REPLICATION": "GA", + "DNS_RESOLUTION_ERROR": "GA", + "DOCKER_CONTAINER_CREATION_EXCEPTION": "GA", + "DOCKER_IMAGE_PULL_FAILURE": "GA", + "DOCKER_IMAGE_TOO_LARGE_FOR_INSTANCE_EXCEPTION": "GA", + "DOCKER_INVALID_OS_EXCEPTION": "GA", + "DRIVER_EVICTION": "GA", + "DRIVER_LAUNCH_TIMEOUT": "GA", + "DRIVER_NODE_UNREACHABLE": "GA", + "DRIVER_OUT_OF_DISK": "GA", + "DRIVER_OUT_OF_MEMORY": "GA", + "DRIVER_POD_CREATION_FAILURE": "GA", + "DRIVER_UNEXPECTED_FAILURE": "GA", + "DRIVER_UNHEALTHY": "GA", + "DRIVER_UNREACHABLE": "GA", + "DRIVER_UNRESPONSIVE": "GA", + "DYNAMIC_SPARK_CONF_SIZE_EXCEEDED": "GA", + "EOS_SPARK_IMAGE": "GA", + "EXECUTION_COMPONENT_UNHEALTHY": "GA", + "EXECUTOR_POD_UNSCHEDULED": "GA", + "GCP_API_RATE_QUOTA_EXCEEDED": "GA", + "GCP_DENIED_BY_ORG_POLICY": "GA", + "GCP_FORBIDDEN": "GA", + "GCP_IAM_TIMEOUT": "GA", + "GCP_INACCESSIBLE_KMS_KEY_FAILURE": "GA", + "GCP_INSUFFICIENT_CAPACITY": "GA", + "GCP_IP_SPACE_EXHAUSTED": "GA", + "GCP_KMS_KEY_PERMISSION_DENIED": "GA", + "GCP_NOT_FOUND": "GA", + "GCP_QUOTA_EXCEEDED": "GA", + "GCP_RESOURCE_QUOTA_EXCEEDED": "GA", + "GCP_SERVICE_ACCOUNT_ACCESS_DENIED": "GA", + "GCP_SERVICE_ACCOUNT_DELETED": "GA", + "GCP_SERVICE_ACCOUNT_NOT_FOUND": "GA", + "GCP_SUBNET_NOT_READY": "GA", + "GCP_TRUSTED_IMAGE_PROJECTS_VIOLATED": "GA", + "GKE_BASED_CLUSTER_TERMINATION": "GA", + "GLOBAL_INIT_SCRIPT_FAILURE": "GA", + "HIVEMETASTORE_CONNECTIVITY_FAILURE": "GA", + "HIVE_METASTORE_PROVISIONING_FAILURE": "GA", + "IMAGE_PULL_PERMISSION_DENIED": "GA", + "INACTIVITY": "GA", + "INIT_CONTAINER_NOT_FINISHED": "GA", + "INIT_SCRIPT_FAILURE": "GA", + "INSTANCE_POOL_CLUSTER_FAILURE": "GA", + "INSTANCE_POOL_MAX_CAPACITY_REACHED": "GA", + "INSTANCE_POOL_NOT_FOUND": "GA", + "INSTANCE_UNREACHABLE": "GA", + "INSTANCE_UNREACHABLE_DUE_TO_MISCONFIG": "GA", + "INTERNAL_CAPACITY_FAILURE": "GA", + "INTERNAL_ERROR": "GA", + "INVALID_ARGUMENT": "GA", + "INVALID_AWS_PARAMETER": "GA", + "INVALID_INSTANCE_PLACEMENT_PROTOCOL": "GA", + "INVALID_SPARK_IMAGE": "GA", + "INVALID_WORKER_IMAGE_FAILURE": "GA", + "IN_PENALTY_BOX": "GA", + "IP_EXHAUSTION_FAILURE": "GA", + "JOB_FINISHED": "GA", + "K8S_ACTIVE_POD_QUOTA_EXCEEDED": "GA", + "K8S_AUTOSCALING_FAILURE": "GA", + "K8S_DBR_CLUSTER_LAUNCH_TIMEOUT": "GA", + "LAZY_ALLOCATION_TIMEOUT": "GA", + "MAINTENANCE_MODE": "GA", + "METASTORE_COMPONENT_UNHEALTHY": "GA", + "MTLS_PORT_CONNECTIVITY_FAILURE": "GA", + "NEPHOS_RESOURCE_MANAGEMENT": "GA", + "NETVISOR_SETUP_TIMEOUT": "GA", + "NETWORK_CHECK_CONTROL_PLANE_FAILURE": "GA", + "NETWORK_CHECK_CONTROL_PLANE_FAILURE_DUE_TO_MISCONFIG": "GA", + "NETWORK_CHECK_DNS_SERVER_FAILURE": "GA", + "NETWORK_CHECK_DNS_SERVER_FAILURE_DUE_TO_MISCONFIG": "GA", + "NETWORK_CHECK_METADATA_ENDPOINT_FAILURE": "GA", + "NETWORK_CHECK_METADATA_ENDPOINT_FAILURE_DUE_TO_MISCONFIG": "GA", + "NETWORK_CHECK_MULTIPLE_COMPONENTS_FAILURE": "GA", + "NETWORK_CHECK_MULTIPLE_COMPONENTS_FAILURE_DUE_TO_MISCONFIG": "GA", + "NETWORK_CHECK_NIC_FAILURE": "GA", + "NETWORK_CHECK_NIC_FAILURE_DUE_TO_MISCONFIG": "GA", + "NETWORK_CHECK_STORAGE_FAILURE": "GA", + "NETWORK_CHECK_STORAGE_FAILURE_DUE_TO_MISCONFIG": "GA", + "NETWORK_CONFIGURATION_FAILURE": "GA", + "NFS_MOUNT_FAILURE": "GA", + "NO_MATCHED_K8S": "GA", + "NO_MATCHED_K8S_TESTING_TAG": "GA", + "NPIP_TUNNEL_SETUP_FAILURE": "GA", + "NPIP_TUNNEL_TOKEN_FAILURE": "GA", + "POD_ASSIGNMENT_FAILURE": "GA", + "POD_SCHEDULING_FAILURE": "GA", + "RATE_LIMITED": "GA", + "REQUEST_REJECTED": "GA", + "REQUEST_THROTTLED": "GA", + "RESOURCE_USAGE_BLOCKED": "GA", + "SECRET_CREATION_FAILURE": "GA", + "SECRET_PERMISSION_DENIED": "GA", + "SECRET_RESOLUTION_ERROR": "GA", + "SECURITY_DAEMON_REGISTRATION_EXCEPTION": "GA", + "SELF_BOOTSTRAP_FAILURE": "GA", + "SERVERLESS_LONG_RUNNING_TERMINATED": "GA", + "SKIPPED_SLOW_NODES": "GA", + "SLOW_IMAGE_DOWNLOAD": "GA", + "SPARK_ERROR": "GA", + "SPARK_IMAGE_DOWNLOAD_FAILURE": "GA", + "SPARK_IMAGE_DOWNLOAD_THROTTLED": "GA", + "SPARK_IMAGE_NOT_FOUND": "GA", + "SPARK_STARTUP_FAILURE": "GA", + "SPOT_INSTANCE_TERMINATION": "GA", + "SSH_BOOTSTRAP_FAILURE": "GA", + "STORAGE_DOWNLOAD_FAILURE": "GA", + "STORAGE_DOWNLOAD_FAILURE_DUE_TO_MISCONFIG": "GA", + "STORAGE_DOWNLOAD_FAILURE_SLOW": "GA", + "STORAGE_DOWNLOAD_FAILURE_THROTTLED": "GA", + "STS_CLIENT_SETUP_FAILURE": "GA", + "SUBNET_EXHAUSTED_FAILURE": "GA", + "TEMPORARILY_UNAVAILABLE": "GA", + "TRIAL_EXPIRED": "GA", + "UNEXPECTED_LAUNCH_FAILURE": "GA", + "UNEXPECTED_POD_RECREATION": "GA", + "UNKNOWN": "GA", + "UNSUPPORTED_INSTANCE_TYPE": "GA", + "UPDATE_INSTANCE_PROFILE_FAILURE": "GA", + "USAGE_POLICY_ENTITLEMENT_DENIED": "GA", + "USER_INITIATED_VM_TERMINATION": "GA", + "USER_REQUEST": "GA", + "WORKER_SETUP_FAILURE": "GA", + "WORKSPACE_CANCELLED_ERROR": "GA", + "WORKSPACE_CONFIGURATION_ERROR": "GA", + "WORKSPACE_UPDATE": "GA" + } + }, + "compute.TerminationReasonType": { + "description": "type of the termination", + "enum": [ + "SUCCESS", + "CLIENT_ERROR", + "SERVICE_FAULT", + "CLOUD_FAILURE" + ], + "enum_launch_stages": { + "CLIENT_ERROR": "GA", + "CLOUD_FAILURE": "GA", + "SERVICE_FAULT": "GA", + "SUCCESS": "GA" + } + }, + "compute.UninstallLibraries": { + "fields": { + "cluster_id": { + "description": "Unique identifier for the cluster on which to uninstall these libraries.", + "launch_stage": "GA" + }, + "libraries": { + "description": "The libraries to uninstall.", + "launch_stage": "GA" + } + } + }, + "compute.UninstallLibrariesResponse": {}, + "compute.UnpinCluster": { + "fields": { + "cluster_id": { + "launch_stage": "GA" + } + } + }, + "compute.UnpinClusterResponse": {}, + "compute.UpdateCluster": { + "fields": { + "cluster": { + "description": "The cluster to be updated.", + "ref": "compute.UpdateClusterResource", + "launch_stage": "GA" + }, + "cluster_id": { + "description": "ID of the cluster.", + "launch_stage": "GA" + }, + "update_mask": { + "description": "Used to specify which cluster attributes and size fields to update. See https://google.aip.dev/161 for more details.\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "GA" + } + } + }, + "compute.UpdateClusterResource": { + "fields": { + "autoscale": { + "description": "Parameters needed in order to automatically scale clusters up and down based on load.\nNote: autoscaling works best with DB runtime versions 3.0 or later.", + "ref": "compute.AutoScale", + "launch_stage": "GA" + }, + "autotermination_minutes": { + "description": "Automatically terminates the cluster after it is inactive for this time in minutes. If not set,\nthis cluster will not be automatically terminated. If specified, the threshold must be between\n10 and 10000 minutes.\nUsers can also set this value to 0 to explicitly disable automatic termination.", + "launch_stage": "GA" + }, + "aws_attributes": { + "description": "Attributes related to clusters running on Amazon Web Services.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AwsAttributes", + "launch_stage": "GA" + }, + "azure_attributes": { + "description": "Attributes related to clusters running on Microsoft Azure.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AzureAttributes", + "launch_stage": "GA" + }, + "cluster_log_conf": { + "description": "The configuration for delivering spark logs to a long-term storage destination.\nThree kinds of destinations (DBFS, S3 and Unity Catalog volumes) are supported. Only one destination can be specified\nfor one cluster. If the conf is given, the logs will be delivered to the destination every\n`5 mins`. The destination of driver logs is `$destination/$clusterId/driver`, while\nthe destination of executor logs is `$destination/$clusterId/executor`.", + "ref": "compute.ClusterLogConf", + "launch_stage": "GA" + }, + "cluster_name": { + "description": "Cluster name requested by the user. This doesn't have to be unique.\nIf not specified at creation, the cluster name will be an empty string.\nFor job clusters, the cluster name is automatically set based on the job and job run IDs.", + "launch_stage": "GA" + }, + "custom_tags": { + "description": "Additional tags for cluster resources. Databricks will tag all cluster resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags\n\n- Clusters can only reuse cloud resources if the resources' tags are a subset of the cluster tags", + "launch_stage": "GA" + }, + "data_security_mode": { + "ref": "compute.DataSecurityMode", + "launch_stage": "GA" + }, + "dependency_mode": { + "description": "Controls dependency configuration for the cluster.", + "ref": "compute.DependencyMode", + "launch_stage": "PUBLIC_BETA" + }, + "docker_image": { + "description": "Custom docker image BYOC", + "ref": "compute.DockerImage", + "launch_stage": "GA" + }, + "driver_instance_pool_id": { + "description": "The optional ID of the instance pool for the driver of the cluster belongs.\nThe pool cluster uses the instance pool with id (instance_pool_id) if the driver pool is not\nassigned.", + "launch_stage": "GA" + }, + "driver_node_type_flexibility": { + "description": "Flexible node type configuration for the driver node.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "driver_node_type_id": { + "description": "The node type of the Spark driver.\nNote that this field is optional; if unset, the driver node type will be set as the same value\nas `node_type_id` defined above.", + "launch_stage": "GA" + }, + "enable_elastic_disk": { + "description": "Autoscaling Local Storage: when enabled, this cluster will dynamically acquire additional disk\nspace when its Spark workers are running low on disk space.", + "launch_stage": "GA" + }, + "enable_local_disk_encryption": { + "description": "Whether to enable LUKS on cluster VMs' local disks", + "launch_stage": "GA" + }, + "gcp_attributes": { + "description": "Attributes related to clusters running on Google Cloud Platform.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.GcpAttributes", + "launch_stage": "GA" + }, + "init_scripts": { + "description": "The configuration for storing init scripts. Any number of destinations can be specified.\nThe scripts are executed sequentially in the order provided.\nIf `cluster_log_conf` is specified, init script logs are sent to `\u003cdestination\u003e/\u003ccluster-ID\u003e/init_scripts`.", + "launch_stage": "GA" + }, + "instance_pool_id": { + "description": "The optional ID of the instance pool to which the cluster belongs.", + "launch_stage": "GA" + }, + "is_single_node": { + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\nWhen set to true, Databricks will automatically set single node related `custom_tags`, `spark_conf`, and `num_workers`", + "launch_stage": "GA" + }, + "kind": { + "ref": "compute.Kind", + "launch_stage": "GA" + }, + "node_type_id": { + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "launch_stage": "GA" + }, + "num_workers": { + "description": "Number of worker nodes that this cluster should have. A cluster has one Spark Driver\nand `num_workers` Executors for a total of `num_workers` + 1 Spark nodes.\n\nNote: When reading the properties of a cluster, this field reflects the desired number\nof workers rather than the actual current number of workers. For instance, if a cluster\nis resized from 5 to 10 workers, this field will immediately be updated to reflect\nthe target size of 10 workers, whereas the workers listed in `spark_info` will gradually\nincrease from 5 to 10 as the new nodes are provisioned.", + "launch_stage": "GA" + }, + "policy_id": { + "description": "The ID of the cluster policy used to create the cluster if applicable.", + "launch_stage": "GA" + }, + "remote_disk_throughput": { + "description": "If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED disks.", + "launch_stage": "GA" + }, + "runtime_engine": { + "description": "Determines the cluster's runtime engine, either standard or Photon.\n\nThis field is not compatible with legacy `spark_version` values that contain `-photon-`.\nRemove `-photon-` from the `spark_version` and set `runtime_engine` to `PHOTON`.\n\nIf left unspecified, the runtime engine defaults to standard unless the spark_version\ncontains -photon-, in which case Photon will be used.", + "ref": "compute.RuntimeEngine", + "launch_stage": "GA" + }, + "single_user_name": { + "description": "Single user name if data_security_mode is `SINGLE_USER`", + "launch_stage": "GA" + }, + "spark_conf": { + "description": "An object containing a set of optional, user-specified Spark configuration key-value pairs.\nUsers can also pass in a string of extra JVM options to the driver and the executors via\n`spark.driver.extraJavaOptions` and `spark.executor.extraJavaOptions` respectively.", + "launch_stage": "GA" + }, + "spark_env_vars": { + "description": "An object containing a set of optional, user-specified environment variable key-value pairs.\nPlease note that key-value pair of the form (X,Y) will be exported as is (i.e.,\n`export X='Y'`) while launching the driver and workers.\n\nIn order to specify an additional set of `SPARK_DAEMON_JAVA_OPTS`, we recommend appending\nthem to `$SPARK_DAEMON_JAVA_OPTS` as shown in the example below. This ensures that all\ndefault databricks managed environmental variables are included as well.\n\nExample Spark environment variables:\n`{\"SPARK_WORKER_MEMORY\": \"28000m\", \"SPARK_LOCAL_DIRS\": \"/local_disk0\"}` or\n`{\"SPARK_DAEMON_JAVA_OPTS\": \"$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true\"}`", + "launch_stage": "GA" + }, + "spark_version": { + "description": "The Spark version of the cluster, e.g. `3.3.x-scala2.11`.\nA list of available Spark versions can be retrieved by using\nthe [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "launch_stage": "GA" + }, + "ssh_public_keys": { + "description": "SSH public key contents that will be added to each Spark node in this cluster. The\ncorresponding private keys can be used to login with the user name `ubuntu` on port `2200`.\nUp to 10 keys can be specified.", + "launch_stage": "GA" + }, + "total_initial_remote_disk_size": { + "description": "If set, what the total initial volume size (in GB) of the remote disks should be. Supported for GCP.", + "launch_stage": "GA" + }, + "use_ml_runtime": { + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\n`effective_spark_version` is determined by `spark_version` (DBR release), this field `use_ml_runtime`, and whether `node_type_id` is gpu node or not.", + "launch_stage": "GA" + }, + "worker_node_type_flexibility": { + "description": "Flexible node type configuration for worker nodes.", + "ref": "compute.NodeTypeFlexibility", + "launch_stage": "GA" + }, + "workload_type": { + "ref": "compute.WorkloadType", + "launch_stage": "GA" + } + } + }, + "compute.UpdateClusterResponse": {}, + "compute.UpdateResponse": {}, + "compute.VolumesStorageInfo": { + "description": "A storage location back by UC Volumes.", + "fields": { + "destination": { + "description": "UC Volumes destination, e.g. `/Volumes/catalog/schema/vol1/init-scripts/setup-datadog.sh`\nor `dbfs:/Volumes/catalog/schema/vol1/init-scripts/setup-datadog.sh`", + "launch_stage": "GA" + } + } + }, + "compute.WorkloadType": { + "description": "Cluster Attributes showing for clusters workload types.", + "fields": { + "clients": { + "description": "defined what type of clients can use the cluster. E.g. Notebooks, Jobs", + "ref": "compute.ClientsTypes", + "launch_stage": "GA" + } + } + }, + "compute.WorkspaceStorageInfo": { + "description": "A storage location in Workspace Filesystem (WSFS)", + "fields": { + "destination": { + "description": "wsfs destination, e.g. `workspace:/cluster-init-scripts/setup-datadog.sh`", + "launch_stage": "GA" + } + } + }, + "dashboards.AuthorizationDetails": { + "fields": { + "grant_rules": { + "description": "Represents downscoped permission rules with specific access rights.\nThis field is specific to `workspace_rule_set` constraint.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "resource_legacy_acl_path": { + "description": "The acl path of the tree store resource resource.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "resource_name": { + "description": "The resource name to which the authorization rule applies.\nThis field is specific to `workspace_rule_set` constraint.\nFormat: `workspaces/{workspace_id}/dashboards/{dashboard_id}`", + "launch_stage": "PUBLIC_PREVIEW" + }, + "type": { + "description": "The type of authorization downscoping policy.\nEx: `workspace_rule_set` defines access rules for a specific workspace resource", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dashboards.AuthorizationDetailsGrantRule": { + "fields": { + "permission_set": { + "description": "Permission sets for dashboard are defined in\niam-common/rbac-common/permission-sets/definitions/TreeStoreBasePermissionSets\nEx: `permissionSets/dashboard.runner`", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dashboards.CreateDashboardRequest": { + "fields": { + "dashboard": { + "ref": "dashboards.Dashboard", + "launch_stage": "GA" + }, + "dataset_catalog": { + "description": "Sets the default catalog for all datasets in this dashboard.\nDoes not impact table references that use fully qualified catalog names (ex: samples.nyctaxi.trips).\nLeave blank to keep each dataset’s existing configuration.", + "launch_stage": "GA" + }, + "dataset_schema": { + "description": "Sets the default schema for all datasets in this dashboard.\nDoes not impact table references that use fully qualified schema names (ex: nyctaxi.trips).\nLeave blank to keep each dataset’s existing configuration.", + "launch_stage": "GA" + } + } + }, + "dashboards.CreateScheduleRequest": { + "fields": { + "schedule": { + "description": "The schedule to create. A dashboard is limited to 10 schedules.", + "ref": "dashboards.Schedule", + "launch_stage": "GA" + } + } + }, + "dashboards.CreateSubscriptionRequest": { + "fields": { + "subscription": { + "description": "The subscription to create. A schedule is limited to 100 subscriptions.", + "ref": "dashboards.Subscription", + "launch_stage": "GA" + } + } + }, + "dashboards.CronSchedule": { + "fields": { + "quartz_cron_expression": { + "description": "A cron expression using quartz syntax. EX: `0 0 8 * * ?` represents everyday at 8am.\nSee [Cron Trigger](http://www.quartz-scheduler.org/documentation/quartz-2.3.0/tutorials/crontrigger.html) for details.", + "launch_stage": "GA" + }, + "timezone_id": { + "description": "A Java timezone id. The schedule will be resolved with respect to this timezone.\nSee [Java TimeZone](https://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html) for details.", + "launch_stage": "GA" + } + } + }, + "dashboards.Dashboard": { + "fields": { + "create_time": { + "description": "The timestamp of when the dashboard was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "dashboard_id": { + "description": "UUID identifying the dashboard.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "display_name": { + "description": "The display name of the dashboard.", + "launch_stage": "GA" + }, + "etag": { + "description": "The etag for the dashboard. Can be optionally provided on updates to ensure that the dashboard\nhas not been modified since the last read.\nThis field is excluded in List Dashboards responses.", + "launch_stage": "GA" + }, + "lifecycle_state": { + "description": "The state of the dashboard resource. Used for tracking trashed status.", + "ref": "dashboards.LifecycleState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "parent_path": { + "description": "The workspace path of the folder containing the dashboard. Includes leading slash and no\ntrailing slash.\nThis field is excluded in List Dashboards responses.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "path": { + "description": "The workspace path of the dashboard asset, including the file name.\nExported dashboards always have the file extension `.lvdash.json`.\nThis field is excluded in List Dashboards responses.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "serialized_dashboard": { + "description": "The contents of the dashboard in serialized string form.\nThis field is excluded in List Dashboards responses.\nUse the [get dashboard API](https://docs.databricks.com/api/workspace/lakeview/get)\nto retrieve an example response, which includes the `serialized_dashboard` field.\nThis field provides the structure of the JSON string that represents the dashboard's\nlayout and components.", + "launch_stage": "GA" + }, + "update_time": { + "description": "The timestamp of when the dashboard was last updated by the user.\nThis field is excluded in List Dashboards responses.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "warehouse_id": { + "description": "The warehouse ID used to run the dashboard.", + "launch_stage": "GA" + } + } + }, + "dashboards.DashboardView": { + "enum": [ + "DASHBOARD_VIEW_BASIC" + ], + "enum_launch_stages": { + "DASHBOARD_VIEW_BASIC": "GA" + } + }, + "dashboards.DeleteScheduleRequest": { + "fields": { + "etag": { + "description": "The etag for the schedule. Optionally, it can be provided to verify that the schedule has not\nbeen modified from its last retrieval.", + "launch_stage": "GA" + } + } + }, + "dashboards.DeleteSubscriptionRequest": { + "fields": { + "etag": { + "description": "The etag for the subscription. Can be optionally provided to ensure that the subscription has not been\nmodified since the last read.", + "launch_stage": "GA" + } + } + }, + "dashboards.DownloadMessageAttachmentVisualizationRequest": {}, + "dashboards.DownloadMessageAttachmentVisualizationResponse": { + "fields": { + "contents": { + "launch_stage": "GA" + } + } + }, + "dashboards.EvaluationStatusType": { + "enum": [ + "RUNNING", + "DONE", + "NOT_STARTED", + "EVALUATION_FAILED", + "EVALUATION_CANCELLED", + "EVALUATION_TIMEOUT" + ], + "enum_launch_stages": { + "DONE": "PUBLIC_BETA", + "EVALUATION_CANCELLED": "PUBLIC_BETA", + "EVALUATION_FAILED": "PUBLIC_BETA", + "EVALUATION_TIMEOUT": "PUBLIC_BETA", + "NOT_STARTED": "PUBLIC_BETA", + "RUNNING": "PUBLIC_BETA" + } + }, + "dashboards.GenieAttachment": { + "description": "Genie AI Response", + "fields": { + "attachment_id": { + "description": "Attachment ID", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "query": { + "description": "Query Attachment if Genie responds with a SQL query", + "ref": "dashboards.GenieQueryAttachment", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "suggested_questions": { + "description": "Follow-up questions suggested by Genie", + "ref": "dashboards.GenieSuggestedQuestionsAttachment", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "text": { + "description": "Text Attachment if Genie responds with text\nThis also contains the final summary when available.", + "ref": "dashboards.TextAttachment", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "viz": { + "description": "Visualization generated by Genie, if requested via `enable_visualization`", + "ref": "dashboards.GenieVizAttachment", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "dashboards.GenieCancelResponseRequest": { + "description": "Request to cancel an in-flight agent-mode response." + }, + "dashboards.GenieConversation": { + "description": "A Genie conversation. Use chat-mode message endpoints for classic chats and agent-mode\nresponse and item endpoints for agent conversations. Conversation management, feedback,\ncomments, and attachment operations support both modes.", + "fields": { + "conversation_id": { + "description": "Conversation ID", + "launch_stage": "GA" + }, + "created_timestamp": { + "description": "Timestamp when the message was created", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "id": { + "description": "Conversation ID.\nLegacy identifier, use conversation_id instead", + "deprecated": true, + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_updated_timestamp": { + "description": "Timestamp when the message was last updated", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "space_id": { + "description": "Genie space ID", + "launch_stage": "GA" + }, + "title": { + "description": "Conversation title", + "launch_stage": "GA" + }, + "user_id": { + "description": "ID of the user who created the conversation", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "dashboards.GenieConversationSummary": { + "fields": { + "agent_type": { + "description": "Whether this is a classic chat or an agent-mode conversation. Allows callers to\nroute message retrieval (chat vs. agent endpoint) without an extra lookup.", + "ref": "dashboards.GenieConversationType", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "conversation_id": { + "launch_stage": "GA" + }, + "created_timestamp": { + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "title": { + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "dashboards.GenieConversationType": { + "description": "The type of a Genie conversation. Distinguishes an agent-mode conversation from\na classic chat conversation so callers can route message retrieval accordingly\nwithout a per-conversation lookup.", + "enum": [ + "GENIE_CONVERSATION_TYPE_CHAT", + "GENIE_CONVERSATION_TYPE_AGENT" + ], + "enum_launch_stages": { + "GENIE_CONVERSATION_TYPE_AGENT": "GA", + "GENIE_CONVERSATION_TYPE_CHAT": "GA" + } + }, + "dashboards.GenieCreateConversationMessageRequest": { + "fields": { + "content": { + "description": "User message content.", + "launch_stage": "GA" + }, + "enable_visualization": { + "description": "Enable visualization generation.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dashboards.GenieCreateEvalRunRequest": { + "fields": { + "benchmark_question_ids": { + "description": "List of benchmark question IDs to evaluate. These questions must exist in the specified Genie space. If none are specified, then all benchmark questions are evaluated.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dashboards.GenieCreateMessageCommentRequest": { + "fields": { + "content": { + "description": "Comment text content.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dashboards.GenieCreateSpaceRequest": { + "fields": { + "description": { + "description": "Optional description", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "parent_path": { + "description": "Parent folder path where the space will be registered", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "serialized_space": { + "description": "The contents of the Genie Space in serialized string form.\nUse the [Get Genie Space](:method:genie/getspace) API to retrieve an example response, which includes the `serialized_space` field.\nThis field provides the structure of the JSON string that represents the space's layout and components.", + "launch_stage": "GA" + }, + "title": { + "description": "Optional title override", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "warehouse_id": { + "description": "Warehouse to associate with the new space", + "launch_stage": "GA" + } + } + }, + "dashboards.GenieDeleteConversationMessageRequest": {}, + "dashboards.GenieDeleteConversationRequest": {}, + "dashboards.GenieEvalAssessment": { + "enum": [ + "GOOD", + "BAD", + "NEEDS_REVIEW" + ], + "enum_launch_stages": { + "BAD": "PUBLIC_BETA", + "GOOD": "PUBLIC_BETA", + "NEEDS_REVIEW": "PUBLIC_BETA" + } + }, + "dashboards.GenieEvalResponse": { + "fields": { + "response": { + "description": "The response content (either text or SQL query).", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "response_type": { + "description": "Type of response", + "ref": "dashboards.GenieEvalResponseType", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "sql_execution_result": { + "description": "SQL Statement Execution response.", + "ref": "sql.StatementResponse", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "dashboards.GenieEvalResponseType": { + "enum": [ + "TEXT", + "SQL" + ], + "enum_launch_stages": { + "SQL": "PUBLIC_BETA", + "TEXT": "PUBLIC_BETA" + } + }, + "dashboards.GenieEvalResult": { + "description": "Shows summary information for an evaluation result.\nFor detailed information including SQL execution results, actual/expected responses, and assessment scores, use GenieGetEvalResultDetails.", + "fields": { + "benchmark_answer": { + "description": "Stored snapshot of original benchmark answer text.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "benchmark_question_id": { + "description": "The ID of the benchmark question that was evaluated.", + "launch_stage": "PUBLIC_BETA" + }, + "created_by_user": { + "description": "User ID who created evaluation result.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "question": { + "description": "Stored snapshot of original benchmark question text.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "result_id": { + "description": "Unique identifier for this evaluation result.", + "launch_stage": "PUBLIC_BETA" + }, + "space_id": { + "description": "The ID of the space the evaluation result belongs to.", + "launch_stage": "PUBLIC_BETA" + }, + "status": { + "description": "Current status of this evaluation result.", + "ref": "dashboards.EvaluationStatusType", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "dashboards.GenieEvalResultDetails": { + "description": "Shows detailed information for an evaluation result.", + "fields": { + "actual_response": { + "description": "The actual response generated by Genie.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "assessment": { + "description": "Assessment of the evaluation result: good, bad, or needs review", + "ref": "dashboards.GenieEvalAssessment", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "assessment_reasons": { + "description": "Reasons for the assessment score.\n\nAssessment reasons describe why a Genie response was scored as BAD.\n\nDeterministic values (compared against the ground truth result):\n- EMPTY_RESULT: Genie's generated SQL results were empty for this benchmark question.\n- RESULT_MISSING_ROWS: Genie's generated SQL response is missing rows from the provided ground truth SQL.\n- RESULT_EXTRA_ROWS: Genie's generated SQL response has more rows than the provided ground truth SQL.\n- RESULT_MISSING_COLUMNS: Genie's generated SQL response is missing columns from the provided ground truth SQL.\n- RESULT_EXTRA_COLUMNS: Genie's generated SQL response has more columns than the provided ground truth SQL.\n- SINGLE_CELL_DIFFERENCE: Single value result was produced but differs from ground truth result.\n- EMPTY_GOOD_SQL: The benchmark SQL returned an empty result.\n- COLUMN_TYPE_DIFFERENCE: The values between the results match but the column type is different.\n\nLLM judge ratings explain the factors driving BAD results:\n- LLM_JUDGE_MISSING_OR_INCORRECT_FILTER: Genie's generated SQL is missing a WHERE clause condition or has incorrect filter logic that excludes/includes wrong data.\n- LLM_JUDGE_INCOMPLETE_OR_PARTIAL_OUTPUT: Genie's generated SQL returns only some of the requested data or columns, missing parts of what the ground truth SQL returns.\n- LLM_JUDGE_MISINTERPRETATION_OF_USER_REQUEST: Genie's generated SQL fundamentally misunderstands what the user is asking for, addressing the wrong question or goal.\n- LLM_JUDGE_INSTRUCTION_COMPLIANCE_OR_MISSING_BUSINESS_LOGIC: Genie's generated SQL fails to apply specified instructions or business logic that should be followed.\n- LLM_JUDGE_INCORRECT_METRIC_CALCULATION: Genie's generated SQL uses incorrect logic or makes wrong assumptions when calculating metrics.\n- LLM_JUDGE_INCORRECT_TABLE_OR_FIELD_USAGE: Genie's generated SQL references wrong tables, columns, or uses fields that don't match the ground truth SQL's intent.\n- LLM_JUDGE_INCORRECT_FUNCTION_USAGE: Genie's generated SQL uses SQL functions incorrectly or inappropriately (wrong parameters, wrong function for the task, etc.).\n- LLM_JUDGE_MISSING_OR_INCORRECT_JOIN: Genie's generated SQL is missing necessary joins between tables or has incorrect join conditions/types that produce wrong results.\n- LLM_JUDGE_MISSING_OR_INCORRECT_AGGREGATION: Genie's generated SQL is missing GROUP BY clauses or has incorrect grouping that doesn't match the requested aggregation level.\n- LLM_JUDGE_FORMATTING_ERROR: Genie's generated SQL output has incorrect formatting, ordering (ORDER BY), or presentation issues that don't match expectations.\n- LLM_JUDGE_OTHER: LLM judge identified an error that doesn't fall into other categories.\n\nDeprecated LLM judge values (kept for backward compatibility, do not use):\n- LLM_JUDGE_MISSING_JOIN (deprecated)\n- LLM_JUDGE_WRONG_FILTER (deprecated)\n- LLM_JUDGE_WRONG_AGGREGATION (deprecated)\n- LLM_JUDGE_WRONG_COLUMNS (deprecated)\n- LLM_JUDGE_SYNTAX_ERROR (deprecated)\n- LLM_JUDGE_SEMANTIC_ERROR (deprecated)", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "benchmark_question_id": { + "description": "The ID of the benchmark question that was evaluated.", + "launch_stage": "PUBLIC_BETA" + }, + "eval_run_status": { + "description": "Current status of the evaluation run.", + "ref": "dashboards.EvaluationStatusType", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "expected_response": { + "description": "The expected responses from the benchmark.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "manual_assessment": { + "description": "Whether this evaluation was manually assessed.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "result_id": { + "description": "The unique identifier for the evaluation result.", + "launch_stage": "PUBLIC_BETA" + }, + "space_id": { + "description": "The ID of the space the evaluation result belongs to.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "dashboards.GenieEvalRunResponse": { + "description": "A benchmark evaluation run. The public benchmark API currently evaluates chat-mode responses.", + "fields": { + "created_timestamp": { + "description": "Timestamp when the evaluation run was created (milliseconds since epoch).", + "launch_stage": "PUBLIC_BETA" + }, + "eval_run_id": { + "description": "The unique identifier for the evaluation run.", + "launch_stage": "PUBLIC_BETA" + }, + "eval_run_status": { + "description": "Current status of the evaluation run.", + "ref": "dashboards.EvaluationStatusType", + "launch_stage": "PUBLIC_BETA" + }, + "last_updated_timestamp": { + "description": "Timestamp when the evaluation run was last updated (milliseconds since epoch).", + "launch_stage": "PUBLIC_BETA" + }, + "num_correct": { + "description": "Number of questions answered correctly.", + "launch_stage": "PUBLIC_BETA" + }, + "num_done": { + "description": "Number of questions that have been completed.", + "launch_stage": "PUBLIC_BETA" + }, + "num_needs_review": { + "description": "Number of questions that need manual review.", + "launch_stage": "PUBLIC_BETA" + }, + "num_questions": { + "description": "Total number of questions in the evaluation run.", + "launch_stage": "PUBLIC_BETA" + }, + "run_by_user": { + "description": "User ID who initiated the evaluation run.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "dashboards.GenieExecuteMessageAttachmentQueryRequest": {}, + "dashboards.GenieExecuteMessageQueryRequest": {}, + "dashboards.GenieFeedback": { + "description": "Feedback containing rating and optional comment", + "fields": { + "comment": { + "description": "Optional feedback comment text", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "rating": { + "description": "The feedback rating", + "ref": "dashboards.GenieFeedbackRating", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dashboards.GenieFeedbackRating": { + "description": "Feedback rating for Genie messages", + "enum": [ + "POSITIVE", + "NEGATIVE", + "NONE" + ], + "enum_launch_stages": { + "NEGATIVE": "GA", + "NONE": "GA", + "POSITIVE": "GA" + } + }, + "dashboards.GenieGenerateDownloadFullQueryResultRequest": {}, + "dashboards.GenieGenerateDownloadFullQueryResultResponse": { + "fields": { + "download_id": { + "description": "Download ID. Use this ID to track the download request in subsequent polling calls", + "launch_stage": "GA" + }, + "download_id_signature": { + "description": "JWT signature for the download_id to ensure secure access to query results", + "launch_stage": "GA" + } + } + }, + "dashboards.GenieGetConversationMessageRequest": {}, + "dashboards.GenieGetDownloadFullQueryResultRequest": { + "fields": { + "download_id_signature": { + "description": "JWT signature for the download_id to ensure secure access to query results", + "launch_stage": "GA" + } + } + }, + "dashboards.GenieGetDownloadFullQueryResultResponse": { + "fields": { + "statement_response": { + "description": "SQL Statement Execution response. See [Get status, manifest, and result first chunk](:method:statementexecution/getstatement) for more details.", + "ref": "sql.StatementResponse", + "launch_stage": "GA" + } + } + }, + "dashboards.GenieGetEvalResultDetailsRequest": {}, + "dashboards.GenieGetEvalRunRequest": {}, + "dashboards.GenieGetMessageAttachmentQueryResultRequest": {}, + "dashboards.GenieGetMessageQueryResultRequest": {}, + "dashboards.GenieGetMessageQueryResultResponse": { + "fields": { + "statement_response": { + "description": "SQL Statement Execution response. See [Get status, manifest, and result first chunk](:method:statementexecution/getstatement) for more details.", + "ref": "sql.StatementResponse", + "launch_stage": "GA" + } + } + }, + "dashboards.GenieGetQueryResultByAttachmentRequest": {}, + "dashboards.GenieGetSpaceRequest": { + "fields": { + "include_serialized_space": { + "description": "Whether to include the serialized space export in the response.\nRequires at least CAN EDIT permission on the space.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dashboards.GenieListConversationCommentsRequest": { + "fields": { + "page_size": { + "description": "Maximum number of comments to return per page.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token for getting the next page of results.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dashboards.GenieListConversationCommentsResponse": { + "fields": { + "comments": { + "description": "List of comments in the conversation.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "next_page_token": { + "description": "Token to get the next page of results.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dashboards.GenieListConversationMessagesRequest": { + "fields": { + "page_size": { + "description": "Maximum number of messages to return per page", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Token to get the next page of results", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dashboards.GenieListConversationMessagesResponse": { + "fields": { + "messages": { + "description": "List of messages in the conversation.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "The token to use for retrieving the next page of results.", + "launch_stage": "GA" + } + } + }, + "dashboards.GenieListConversationsRequest": { + "fields": { + "include_all": { + "description": "Include all conversations in the space across all users.\nRequires at least CAN MANAGE permission on the space.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_size": { + "description": "Maximum number of conversations to return per page", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Token to get the next page of results", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dashboards.GenieListConversationsResponse": { + "fields": { + "conversations": { + "description": "List of conversations in the Genie space", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Token to get the next page of results", + "launch_stage": "GA" + } + } + }, + "dashboards.GenieListEvalResultsRequest": { + "fields": { + "page_size": { + "description": "Maximum number of eval results to return per page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Opaque token to retrieve the next page of results.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dashboards.GenieListEvalResultsResponse": { + "fields": { + "eval_results": { + "description": "List of evaluation results for the specified run.", + "launch_stage": "PUBLIC_BETA" + }, + "next_page_token": { + "description": "The token to use for retrieving the next page of results.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "dashboards.GenieListEvalRunsRequest": { + "fields": { + "page_size": { + "description": "Maximum number of evaluation runs to return per page", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Token to get the next page of results", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dashboards.GenieListEvalRunsResponse": { + "fields": { + "eval_runs": { + "description": "List of evaluation runs for a space on provided page token and page size", + "launch_stage": "PUBLIC_BETA" + }, + "next_page_token": { + "description": "The token to use for retrieving the next page of results.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "dashboards.GenieListMessageCommentsRequest": { + "fields": { + "page_size": { + "description": "Maximum number of comments to return per page.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token for getting the next page of results.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dashboards.GenieListMessageCommentsResponse": { + "fields": { + "comments": { + "description": "List of comments on the message.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "next_page_token": { + "description": "Token to get the next page of results.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dashboards.GenieListSpacesRequest": { + "fields": { + "page_size": { + "description": "Maximum number of spaces to return per page", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token for getting the next page of results", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dashboards.GenieListSpacesResponse": { + "fields": { + "next_page_token": { + "description": "Token to get the next page of results", + "launch_stage": "GA" + }, + "spaces": { + "description": "List of Genie spaces", + "launch_stage": "GA" + } + } + }, + "dashboards.GenieMessage": { + "fields": { + "attachments": { + "description": "AI-generated response to the message", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "content": { + "description": "User message content", + "launch_stage": "GA" + }, + "conversation_id": { + "description": "Conversation ID", + "launch_stage": "GA" + }, + "created_timestamp": { + "description": "Timestamp when the message was created", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "error": { + "description": "Error message if Genie failed to respond to the message", + "ref": "dashboards.MessageError", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "feedback": { + "description": "User feedback for the message if provided", + "ref": "dashboards.GenieFeedback", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "id": { + "description": "Message ID.\nLegacy identifier, use message_id instead", + "deprecated": true, + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_updated_timestamp": { + "description": "Timestamp when the message was last updated", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "message_id": { + "description": "Message ID", + "launch_stage": "GA" + }, + "query_result": { + "description": "The result of SQL query if the message includes a query attachment.\nDeprecated. Use `query_result_metadata` in `GenieQueryAttachment` instead.", + "ref": "dashboards.Result", + "deprecated": true, + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "space_id": { + "description": "Genie space ID", + "launch_stage": "GA" + }, + "status": { + "ref": "dashboards.MessageStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "user_id": { + "description": "ID of the user who created the message", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "dashboards.GenieMessageComment": { + "description": "A comment on a Genie conversation message.", + "fields": { + "content": { + "description": "Comment text content", + "launch_stage": "PUBLIC_PREVIEW" + }, + "conversation_id": { + "description": "Conversation ID", + "launch_stage": "PUBLIC_PREVIEW" + }, + "created_timestamp": { + "description": "Timestamp when the comment was created", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "message_comment_id": { + "description": "Comment ID", + "launch_stage": "PUBLIC_PREVIEW" + }, + "message_id": { + "description": "Message ID", + "launch_stage": "PUBLIC_PREVIEW" + }, + "space_id": { + "description": "Genie space ID", + "launch_stage": "PUBLIC_PREVIEW" + }, + "user_id": { + "description": "ID of the user who created the comment", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "dashboards.GenieQueryAttachment": { + "fields": { + "description": { + "description": "Description of the query", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "id": { + "deprecated": true, + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_updated_timestamp": { + "description": "Time when the user updated the query last", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "parameters": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "query": { + "description": "AI generated SQL query", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "query_result_metadata": { + "description": "Metadata associated with the query result.", + "ref": "dashboards.GenieResultMetadata", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "statement_id": { + "description": "Statement Execution API statement id. Use [Get status, manifest, and result first chunk](:method:statementexecution/getstatement) to get the full result data.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "thoughts": { + "description": "Insights into how Genie came to generate the SQL.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "title": { + "description": "Name of the query", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dashboards.GenieResultMetadata": { + "fields": { + "is_truncated": { + "description": "Indicates whether the result set is truncated.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "row_count": { + "description": "The number of rows in the result set.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "dashboards.GenieSendMessageFeedbackRequest": { + "fields": { + "comment": { + "description": "Optional text feedback that will be stored as a comment.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "rating": { + "description": "The rating (POSITIVE, NEGATIVE, or NONE).", + "ref": "dashboards.GenieFeedbackRating", + "launch_stage": "GA" + } + } + }, + "dashboards.GenieSpace": { + "fields": { + "create_time": { + "description": "Time when the Genie space was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "Description of the Genie Space", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "etag": { + "description": "ETag for this space. Pass this value back in the update request to prevent overwriting\nconcurrent changes.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "parent_path": { + "description": "Parent folder path of the Genie Space", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "serialized_space": { + "description": "The contents of the Genie Space in serialized string form.\nThis field is excluded in List Genie spaces responses.\nUse the [Get Genie Space](:method:genie/getspace) API to retrieve an example response, which includes the `serialized_space` field.\nThis field provides the structure of the JSON string that represents the space's layout and components.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "space_id": { + "description": "Genie space ID", + "launch_stage": "GA" + }, + "title": { + "description": "Title of the Genie Space", + "launch_stage": "GA" + }, + "update_time": { + "description": "Time when the Genie space was last modified, matching the value shown in the Genie Agent UI.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "warehouse_id": { + "description": "Warehouse associated with the Genie Space", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dashboards.GenieStartConversationMessageRequest": { + "fields": { + "content": { + "description": "The text of the message that starts the conversation.", + "launch_stage": "GA" + }, + "enable_visualization": { + "description": "Enable visualization generation.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dashboards.GenieStartConversationResponse": { + "fields": { + "conversation": { + "ref": "dashboards.GenieConversation", + "launch_stage": "GA" + }, + "conversation_id": { + "description": "Conversation ID", + "launch_stage": "GA" + }, + "message": { + "ref": "dashboards.GenieMessage", + "launch_stage": "GA" + }, + "message_id": { + "description": "Message ID", + "launch_stage": "GA" + } + } + }, + "dashboards.GenieSuggestedQuestionsAttachment": { + "description": "Follow-up questions suggested by Genie", + "fields": { + "questions": { + "description": "The suggested follow-up questions", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "dashboards.GenieTrashSpaceRequest": {}, + "dashboards.GenieUpdateSpaceRequest": { + "fields": { + "description": { + "description": "Optional description", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "etag": { + "description": "ETag returned by a previous GET or UPDATE. When set, the update will fail if the space\nhas been modified since. Omit to apply the update unconditionally.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "parent_path": { + "description": "Parent workspace folder path to move this Genie space under.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "serialized_space": { + "description": "The contents of the Genie Space in serialized string form (full replacement).\nUse the [Get Genie Space](:method:genie/getspace) API to retrieve an example response, which includes the `serialized_space` field.\nThis field provides the structure of the JSON string that represents the space's layout and components.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "title": { + "description": "Optional title override", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "warehouse_id": { + "description": "Optional warehouse override", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dashboards.GenieVizAttachment": { + "description": "Visualization generated by Genie for a query result. Use the attachment ID\nwith the download visualization API to retrieve the rendered image.", + "fields": { + "query_attachment_id": { + "description": "The ID of the query attachment the visualization was generated from", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "title": { + "description": "Name of the visualization", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "dashboards.GetDashboardRequest": {}, + "dashboards.GetPublishedDashboardRequest": {}, + "dashboards.GetPublishedDashboardTokenInfoRequest": { + "fields": { + "external_value": { + "description": "Provided external value to be included in the custom claim.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "external_viewer_id": { + "description": "Provided external viewer id to be included in the custom claim.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dashboards.GetPublishedDashboardTokenInfoResponse": { + "fields": { + "authorization_details": { + "description": "Authorization constraints for accessing the published dashboard.\nCurrently includes `workspace_rule_set` and could be enriched with `unity_catalog_privileges` before\noAuth token generation.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "custom_claim": { + "description": "Custom claim generated from external_value and external_viewer_id.\nFormat: `urn:aibi:external_data:\u003cexternal_value\u003e:\u003cexternal_viewer_id\u003e:\u003cdashboard_id\u003e`", + "launch_stage": "PUBLIC_PREVIEW" + }, + "scope": { + "description": "Scope defining access permissions.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dashboards.GetScheduleRequest": {}, + "dashboards.GetSubscriptionRequest": {}, + "dashboards.LifecycleState": { + "enum": [ + "ACTIVE", + "TRASHED" + ], + "enum_launch_stages": { + "ACTIVE": "GA", + "TRASHED": "GA" + } + }, + "dashboards.ListDashboardsRequest": { + "fields": { + "page_size": { + "description": "The number of dashboards to return per page.", + "launch_stage": "GA" + }, + "page_token": { + "description": "A page token, received from a previous `ListDashboards` call.\nThis token can be used to retrieve the subsequent page.", + "launch_stage": "GA" + }, + "show_trashed": { + "description": "The flag to include dashboards located in the trash.\nIf unspecified, only active dashboards will be returned.", + "launch_stage": "GA" + }, + "view": { + "description": "`DASHBOARD_VIEW_BASIC` only includes summary metadata from the dashboard.", + "ref": "dashboards.DashboardView", + "launch_stage": "GA" + } + } + }, + "dashboards.ListDashboardsResponse": { + "fields": { + "dashboards": { + "launch_stage": "GA" + }, + "next_page_token": { + "description": "A token, which can be sent as `page_token` to retrieve the next page.\nIf this field is omitted, there are no subsequent dashboards.", + "launch_stage": "GA" + } + } + }, + "dashboards.ListSchedulesRequest": { + "fields": { + "page_size": { + "description": "The number of schedules to return per page.", + "launch_stage": "GA" + }, + "page_token": { + "description": "A page token, received from a previous `ListSchedules` call.\nUse this to retrieve the subsequent page.", + "launch_stage": "GA" + } + } + }, + "dashboards.ListSchedulesResponse": { + "fields": { + "next_page_token": { + "description": "A token that can be used as a `page_token` in subsequent requests to retrieve the next page of results.\nIf this field is omitted, there are no subsequent schedules.", + "launch_stage": "GA" + }, + "schedules": { + "launch_stage": "GA" + } + } + }, + "dashboards.ListSubscriptionsRequest": { + "fields": { + "page_size": { + "description": "The number of subscriptions to return per page.", + "launch_stage": "GA" + }, + "page_token": { + "description": "A page token, received from a previous `ListSubscriptions` call.\nUse this to retrieve the subsequent page.", + "launch_stage": "GA" + } + } + }, + "dashboards.ListSubscriptionsResponse": { + "fields": { + "next_page_token": { + "description": "A token that can be used as a `page_token` in subsequent requests to retrieve the next page of results.\nIf this field is omitted, there are no subsequent subscriptions.", + "launch_stage": "GA" + }, + "subscriptions": { + "launch_stage": "GA" + } + } + }, + "dashboards.MessageError": { + "fields": { + "error": { + "launch_stage": "GA" + }, + "type": { + "ref": "dashboards.MessageErrorType", + "launch_stage": "GA" + } + } + }, + "dashboards.MessageErrorType": { + "enum": [ + "UNEXPECTED_REPLY_PROCESS_EXCEPTION", + "GENERIC_CHAT_COMPLETION_EXCEPTION", + "CONTEXT_EXCEEDED_EXCEPTION", + "DEPLOYMENT_NOT_FOUND_EXCEPTION", + "FUNCTIONS_NOT_AVAILABLE_EXCEPTION", + "INVALID_COMPLETION_REQUEST_EXCEPTION", + "CONTENT_FILTER_EXCEPTION", + "FUNCTION_ARGUMENTS_INVALID_JSON_EXCEPTION", + "RETRYABLE_PROCESSING_EXCEPTION", + "INVALID_FUNCTION_CALL_EXCEPTION", + "LOCAL_CONTEXT_EXCEEDED_EXCEPTION", + "CHAT_COMPLETION_NETWORK_EXCEPTION", + "INVALID_CHAT_COMPLETION_JSON_EXCEPTION", + "GENERIC_CHAT_COMPLETION_SERVICE_EXCEPTION", + "WAREHOUSE_ACCESS_MISSING_EXCEPTION", + "WAREHOUSE_NOT_FOUND_EXCEPTION", + "NO_TABLES_TO_QUERY_EXCEPTION", + "SQL_EXECUTION_EXCEPTION", + "REPLY_PROCESS_TIMEOUT_EXCEPTION", + "COULD_NOT_GET_UC_SCHEMA_EXCEPTION", + "INVALID_TABLE_IDENTIFIER_EXCEPTION", + "TOO_MANY_TABLES_EXCEPTION", + "FUNCTION_ARGUMENTS_INVALID_EXCEPTION", + "GENERIC_SQL_EXEC_API_CALL_EXCEPTION", + "CHAT_COMPLETION_CLIENT_EXCEPTION", + "CHAT_COMPLETION_CLIENT_TIMEOUT_EXCEPTION", + "UNKNOWN_AI_MODEL", + "TABLES_MISSING_EXCEPTION", + "MESSAGE_DELETED_WHILE_EXECUTING_EXCEPTION", + "MESSAGE_UPDATED_WHILE_EXECUTING_EXCEPTION", + "BLOCK_MULTIPLE_EXECUTIONS_EXCEPTION", + "INVALID_CERTIFIED_ANSWER_IDENTIFIER_EXCEPTION", + "TOO_MANY_CERTIFIED_ANSWERS_EXCEPTION", + "RATE_LIMIT_EXCEEDED_GENERIC_EXCEPTION", + "RATE_LIMIT_EXCEEDED_SPECIFIED_WAIT_EXCEPTION", + "FUNCTION_CALL_MISSING_PARAMETER_EXCEPTION", + "INVALID_CERTIFIED_ANSWER_FUNCTION_EXCEPTION", + "ILLEGAL_PARAMETER_DEFINITION_EXCEPTION", + "NO_QUERY_TO_VISUALIZE_EXCEPTION", + "NO_DEPLOYMENTS_AVAILABLE_TO_WORKSPACE", + "STOP_PROCESS_DUE_TO_AUTO_REGENERATE", + "FUNCTION_ARGUMENTS_INVALID_TYPE_EXCEPTION", + "MESSAGE_CANCELLED_WHILE_EXECUTING_EXCEPTION", + "COULD_NOT_GET_MODEL_DEPLOYMENTS_EXCEPTION", + "GENERATED_SQL_QUERY_TOO_LONG_EXCEPTION", + "MISSING_SQL_QUERY_EXCEPTION", + "DESCRIBE_QUERY_UNEXPECTED_FAILURE", + "DESCRIBE_QUERY_TIMEOUT", + "DESCRIBE_QUERY_INVALID_SQL_ERROR", + "INVALID_SQL_UNKNOWN_TABLE_EXCEPTION", + "INVALID_SQL_MULTIPLE_STATEMENTS_EXCEPTION", + "INVALID_SQL_MULTIPLE_DATASET_REFERENCES_EXCEPTION", + "MESSAGE_ATTACHMENT_TOO_LONG_ERROR", + "INTERNAL_CATALOG_PATH_OVERLAP_EXCEPTION", + "INTERNAL_CATALOG_MISSING_UC_PATH_EXCEPTION", + "EXCEEDED_MAX_TOKEN_LENGTH_EXCEPTION", + "INTERNAL_CATALOG_ASSET_CREATION_ONGOING_EXCEPTION", + "INTERNAL_CATALOG_ASSET_CREATION_FAILED_EXCEPTION", + "INTERNAL_CATALOG_ASSET_CREATION_UNSUPPORTED_EXCEPTION", + "UNSUPPORTED_CONVERSATION_TYPE_EXCEPTION", + "COULD_NOT_GET_DASHBOARD_SCHEMA_EXCEPTION" + ], + "enum_launch_stages": { + "BLOCK_MULTIPLE_EXECUTIONS_EXCEPTION": "GA", + "CHAT_COMPLETION_CLIENT_EXCEPTION": "GA", + "CHAT_COMPLETION_CLIENT_TIMEOUT_EXCEPTION": "GA", + "CHAT_COMPLETION_NETWORK_EXCEPTION": "GA", + "CONTENT_FILTER_EXCEPTION": "GA", + "CONTEXT_EXCEEDED_EXCEPTION": "GA", + "COULD_NOT_GET_DASHBOARD_SCHEMA_EXCEPTION": "GA", + "COULD_NOT_GET_MODEL_DEPLOYMENTS_EXCEPTION": "GA", + "COULD_NOT_GET_UC_SCHEMA_EXCEPTION": "GA", + "DEPLOYMENT_NOT_FOUND_EXCEPTION": "GA", + "DESCRIBE_QUERY_INVALID_SQL_ERROR": "GA", + "DESCRIBE_QUERY_TIMEOUT": "GA", + "DESCRIBE_QUERY_UNEXPECTED_FAILURE": "GA", + "EXCEEDED_MAX_TOKEN_LENGTH_EXCEPTION": "GA", + "FUNCTIONS_NOT_AVAILABLE_EXCEPTION": "GA", + "FUNCTION_ARGUMENTS_INVALID_EXCEPTION": "GA", + "FUNCTION_ARGUMENTS_INVALID_JSON_EXCEPTION": "GA", + "FUNCTION_ARGUMENTS_INVALID_TYPE_EXCEPTION": "GA", + "FUNCTION_CALL_MISSING_PARAMETER_EXCEPTION": "GA", + "GENERATED_SQL_QUERY_TOO_LONG_EXCEPTION": "GA", + "GENERIC_CHAT_COMPLETION_EXCEPTION": "GA", + "GENERIC_CHAT_COMPLETION_SERVICE_EXCEPTION": "GA", + "GENERIC_SQL_EXEC_API_CALL_EXCEPTION": "GA", + "ILLEGAL_PARAMETER_DEFINITION_EXCEPTION": "GA", + "INTERNAL_CATALOG_ASSET_CREATION_FAILED_EXCEPTION": "GA", + "INTERNAL_CATALOG_ASSET_CREATION_ONGOING_EXCEPTION": "GA", + "INTERNAL_CATALOG_ASSET_CREATION_UNSUPPORTED_EXCEPTION": "GA", + "INTERNAL_CATALOG_MISSING_UC_PATH_EXCEPTION": "GA", + "INTERNAL_CATALOG_PATH_OVERLAP_EXCEPTION": "GA", + "INVALID_CERTIFIED_ANSWER_FUNCTION_EXCEPTION": "GA", + "INVALID_CERTIFIED_ANSWER_IDENTIFIER_EXCEPTION": "GA", + "INVALID_CHAT_COMPLETION_JSON_EXCEPTION": "GA", + "INVALID_COMPLETION_REQUEST_EXCEPTION": "GA", + "INVALID_FUNCTION_CALL_EXCEPTION": "GA", + "INVALID_SQL_MULTIPLE_DATASET_REFERENCES_EXCEPTION": "GA", + "INVALID_SQL_MULTIPLE_STATEMENTS_EXCEPTION": "GA", + "INVALID_SQL_UNKNOWN_TABLE_EXCEPTION": "GA", + "INVALID_TABLE_IDENTIFIER_EXCEPTION": "GA", + "LOCAL_CONTEXT_EXCEEDED_EXCEPTION": "GA", + "MESSAGE_ATTACHMENT_TOO_LONG_ERROR": "GA", + "MESSAGE_CANCELLED_WHILE_EXECUTING_EXCEPTION": "GA", + "MESSAGE_DELETED_WHILE_EXECUTING_EXCEPTION": "GA", + "MESSAGE_UPDATED_WHILE_EXECUTING_EXCEPTION": "GA", + "MISSING_SQL_QUERY_EXCEPTION": "GA", + "NO_DEPLOYMENTS_AVAILABLE_TO_WORKSPACE": "GA", + "NO_QUERY_TO_VISUALIZE_EXCEPTION": "GA", + "NO_TABLES_TO_QUERY_EXCEPTION": "GA", + "RATE_LIMIT_EXCEEDED_GENERIC_EXCEPTION": "GA", + "RATE_LIMIT_EXCEEDED_SPECIFIED_WAIT_EXCEPTION": "GA", + "REPLY_PROCESS_TIMEOUT_EXCEPTION": "GA", + "RETRYABLE_PROCESSING_EXCEPTION": "GA", + "SQL_EXECUTION_EXCEPTION": "GA", + "STOP_PROCESS_DUE_TO_AUTO_REGENERATE": "GA", + "TABLES_MISSING_EXCEPTION": "GA", + "TOO_MANY_CERTIFIED_ANSWERS_EXCEPTION": "GA", + "TOO_MANY_TABLES_EXCEPTION": "GA", + "UNEXPECTED_REPLY_PROCESS_EXCEPTION": "GA", + "UNKNOWN_AI_MODEL": "GA", + "UNSUPPORTED_CONVERSATION_TYPE_EXCEPTION": "GA", + "WAREHOUSE_ACCESS_MISSING_EXCEPTION": "GA", + "WAREHOUSE_NOT_FOUND_EXCEPTION": "GA" + } + }, + "dashboards.MessageStatus": { + "description": "MessageStatus.\nThe possible values are:\n* `FETCHING_METADATA`: Fetching metadata from the data sources.\n* `FILTERING_CONTEXT`: Running smart context step to determine relevant context.\n* `ASKING_AI`: Waiting for the LLM to respond to the user's question.\n* `PENDING_WAREHOUSE`: Waiting for warehouse before the SQL query can start executing.\n* `EXECUTING_QUERY`: Executing a generated SQL query. Get the SQL query result by calling [getMessageAttachmentQueryResult](:method:genie/getMessageAttachmentQueryResult) API.\n* `FAILED`: The response generation or query execution failed. See `error` field.\n* `COMPLETED`: Message processing is completed. Results are in the `attachments` field. Get the SQL query result by calling [getMessageAttachmentQueryResult](:method:genie/getMessageAttachmentQueryResult) API.\n* `SUBMITTED`: Message has been submitted.\n* `QUERY_RESULT_EXPIRED`: SQL result is not available anymore. The user needs to rerun the query. Rerun the SQL query result by calling [executeMessageAttachmentQuery](:method:genie/executeMessageAttachmentQuery) API.\n* `CANCELLED`: Message has been cancelled.", + "enum": [ + "FETCHING_METADATA", + "FILTERING_CONTEXT", + "ASKING_AI", + "PENDING_WAREHOUSE", + "EXECUTING_QUERY", + "FAILED", + "COMPLETED", + "SUBMITTED", + "QUERY_RESULT_EXPIRED", + "CANCELLED" + ], + "enum_launch_stages": { + "ASKING_AI": "GA", + "CANCELLED": "GA", + "COMPLETED": "GA", + "EXECUTING_QUERY": "GA", + "FAILED": "GA", + "FETCHING_METADATA": "GA", + "FILTERING_CONTEXT": "GA", + "PENDING_WAREHOUSE": "GA", + "QUERY_RESULT_EXPIRED": "GA", + "SUBMITTED": "GA" + }, + "enum_descriptions": { + "ASKING_AI": "Waiting for the LLM to respond to the user's question.", + "CANCELLED": "Message has been cancelled.", + "COMPLETED": "Message processing is completed. Results are in the `attachments` field. Get the SQL query result by calling [getMessageAttachmentQueryResult](:method:genie/getMessageAttachmentQueryResult) API.", + "EXECUTING_QUERY": "Executing a generated SQL query. Get the SQL query result by calling [getMessageAttachmentQueryResult](:method:genie/getMessageAttachmentQueryResult) API.", + "FAILED": "The response generation or query execution failed. See `error` field.", + "FETCHING_METADATA": "Fetching metadata from the data sources.", + "FILTERING_CONTEXT": "Running smart context step to determine relevant context.", + "PENDING_WAREHOUSE": "Waiting for warehouse before the SQL query can start executing.", + "QUERY_RESULT_EXPIRED": "SQL result is not available anymore. The user needs to rerun the query. Rerun the SQL query result by calling [executeMessageAttachmentQuery](:method:genie/executeMessageAttachmentQuery) API.", + "SUBMITTED": "Message has been submitted." + } + }, + "dashboards.MigrateDashboardRequest": { + "fields": { + "display_name": { + "description": "Display name for the new Lakeview dashboard.", + "launch_stage": "GA" + }, + "parent_path": { + "description": "The workspace path of the folder to contain the migrated Lakeview dashboard.", + "launch_stage": "GA" + }, + "source_dashboard_id": { + "description": "UUID of the dashboard to be migrated.", + "launch_stage": "GA" + }, + "update_parameter_syntax": { + "description": "Flag to indicate if mustache parameter syntax ({{ param }}) should be auto-updated\nto named syntax (:param) when converting datasets in the dashboard.", + "launch_stage": "GA" + } + } + }, + "dashboards.PublishRequest": { + "fields": { + "embed_credentials": { + "description": "Flag to indicate if the publisher's credentials should be embedded in the\npublished dashboard. These embedded credentials will be used to execute the\npublished dashboard's queries.", + "launch_stage": "GA" + }, + "warehouse_id": { + "description": "The ID of the warehouse that can be used to override the warehouse which\nwas set in the draft.", + "launch_stage": "GA" + } + } + }, + "dashboards.PublishedDashboard": { + "fields": { + "display_name": { + "description": "The display name of the published dashboard.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "embed_credentials": { + "description": "Indicates whether credentials are embedded in the published dashboard.", + "launch_stage": "GA" + }, + "revision_create_time": { + "description": "The timestamp of when the published dashboard was last revised.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "warehouse_id": { + "description": "The warehouse ID used to run the published dashboard.", + "launch_stage": "GA" + } + } + }, + "dashboards.QueryAttachmentParameter": { + "fields": { + "keyword": { + "launch_stage": "GA" + }, + "sql_type": { + "launch_stage": "GA" + }, + "value": { + "launch_stage": "GA" + } + } + }, + "dashboards.Result": { + "fields": { + "is_truncated": { + "description": "If result is truncated", + "launch_stage": "GA" + }, + "row_count": { + "description": "Row count of the result", + "launch_stage": "GA" + }, + "statement_id": { + "description": "Statement Execution API statement id. Use [Get status, manifest, and result first chunk](:method:statementexecution/getstatement) to get the full result data.", + "launch_stage": "GA" + }, + "statement_id_signature": { + "description": "JWT corresponding to the statement contained in this result", + "launch_stage": "GA" + } + } + }, + "dashboards.RevertDashboardRequest": { + "description": "Request to revert a dashboard draft to its last published state.", + "fields": { + "etag": { + "description": "The etag for the dashboard. Optionally, it can be provided to verify that the dashboard\nhas not been modified from its last retrieval.", + "launch_stage": "GA" + } + } + }, + "dashboards.RevertDashboardResponse": { + "description": "Response to revert a dashboard draft to its last published state.", + "fields": { + "dashboard": { + "description": "The reverted dashboard.", + "ref": "dashboards.Dashboard", + "launch_stage": "GA" + } + } + }, + "dashboards.Schedule": { + "fields": { + "create_time": { + "description": "A timestamp indicating when the schedule was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "cron_schedule": { + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "ref": "dashboards.CronSchedule", + "launch_stage": "GA" + }, + "dashboard_id": { + "description": "UUID identifying the dashboard to which the schedule belongs.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "display_name": { + "description": "The display name for schedule.", + "launch_stage": "GA" + }, + "etag": { + "description": "The etag for the schedule. Must be left empty on create, must be provided on updates to ensure\nthat the schedule has not been modified since the last read, and can be optionally provided on delete.", + "launch_stage": "GA" + }, + "pause_status": { + "description": "The status indicates whether this schedule is paused or not.", + "ref": "dashboards.SchedulePauseStatus", + "launch_stage": "GA" + }, + "schedule_id": { + "description": "UUID identifying the schedule.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "A timestamp indicating when the schedule was last updated.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "warehouse_id": { + "description": "The warehouse id to run the dashboard with for the schedule.", + "launch_stage": "GA" + } + } + }, + "dashboards.SchedulePauseStatus": { + "enum": [ + "UNPAUSED", + "PAUSED" + ], + "enum_launch_stages": { + "PAUSED": "GA", + "UNPAUSED": "GA" + } + }, + "dashboards.ScoreReason": { + "enum": [ + "EMPTY_RESULT", + "RESULT_MISSING_ROWS", + "RESULT_EXTRA_ROWS", + "RESULT_MISSING_COLUMNS", + "RESULT_EXTRA_COLUMNS", + "SINGLE_CELL_DIFFERENCE", + "EMPTY_GOOD_SQL", + "COLUMN_TYPE_DIFFERENCE", + "LLM_JUDGE_MISSING_JOIN", + "LLM_JUDGE_WRONG_FILTER", + "LLM_JUDGE_WRONG_AGGREGATION", + "LLM_JUDGE_WRONG_COLUMNS", + "LLM_JUDGE_SYNTAX_ERROR", + "LLM_JUDGE_SEMANTIC_ERROR", + "LLM_JUDGE_OTHER", + "LLM_JUDGE_MISSING_OR_INCORRECT_FILTER", + "LLM_JUDGE_INCOMPLETE_OR_PARTIAL_OUTPUT", + "LLM_JUDGE_MISINTERPRETATION_OF_USER_REQUEST", + "LLM_JUDGE_INSTRUCTION_COMPLIANCE_OR_MISSING_BUSINESS_LOGIC", + "LLM_JUDGE_INCORRECT_METRIC_CALCULATION", + "LLM_JUDGE_INCORRECT_TABLE_OR_FIELD_USAGE", + "LLM_JUDGE_INCORRECT_FUNCTION_USAGE", + "LLM_JUDGE_MISSING_OR_INCORRECT_JOIN", + "LLM_JUDGE_MISSING_OR_INCORRECT_AGGREGATION", + "LLM_JUDGE_FORMATTING_ERROR" + ], + "enum_launch_stages": { + "COLUMN_TYPE_DIFFERENCE": "PUBLIC_BETA", + "EMPTY_GOOD_SQL": "PUBLIC_BETA", + "EMPTY_RESULT": "PUBLIC_BETA", + "LLM_JUDGE_FORMATTING_ERROR": "PUBLIC_BETA", + "LLM_JUDGE_INCOMPLETE_OR_PARTIAL_OUTPUT": "PUBLIC_BETA", + "LLM_JUDGE_INCORRECT_FUNCTION_USAGE": "PUBLIC_BETA", + "LLM_JUDGE_INCORRECT_METRIC_CALCULATION": "PUBLIC_BETA", + "LLM_JUDGE_INCORRECT_TABLE_OR_FIELD_USAGE": "PUBLIC_BETA", + "LLM_JUDGE_INSTRUCTION_COMPLIANCE_OR_MISSING_BUSINESS_LOGIC": "PUBLIC_BETA", + "LLM_JUDGE_MISINTERPRETATION_OF_USER_REQUEST": "PUBLIC_BETA", + "LLM_JUDGE_MISSING_JOIN": "PUBLIC_BETA", + "LLM_JUDGE_MISSING_OR_INCORRECT_AGGREGATION": "PUBLIC_BETA", + "LLM_JUDGE_MISSING_OR_INCORRECT_FILTER": "PUBLIC_BETA", + "LLM_JUDGE_MISSING_OR_INCORRECT_JOIN": "PUBLIC_BETA", + "LLM_JUDGE_OTHER": "PUBLIC_BETA", + "LLM_JUDGE_SEMANTIC_ERROR": "PUBLIC_BETA", + "LLM_JUDGE_SYNTAX_ERROR": "PUBLIC_BETA", + "LLM_JUDGE_WRONG_AGGREGATION": "PUBLIC_BETA", + "LLM_JUDGE_WRONG_COLUMNS": "PUBLIC_BETA", + "LLM_JUDGE_WRONG_FILTER": "PUBLIC_BETA", + "RESULT_EXTRA_COLUMNS": "PUBLIC_BETA", + "RESULT_EXTRA_ROWS": "PUBLIC_BETA", + "RESULT_MISSING_COLUMNS": "PUBLIC_BETA", + "RESULT_MISSING_ROWS": "PUBLIC_BETA", + "SINGLE_CELL_DIFFERENCE": "PUBLIC_BETA" + } + }, + "dashboards.Subscriber": { + "fields": { + "destination_subscriber": { + "description": "The destination to receive the subscription email.\nThis parameter is mutually exclusive with `user_subscriber`.", + "ref": "dashboards.SubscriptionSubscriberDestination", + "launch_stage": "GA" + }, + "user_subscriber": { + "description": "The user to receive the subscription email.\nThis parameter is mutually exclusive with `destination_subscriber`.", + "ref": "dashboards.SubscriptionSubscriberUser", + "launch_stage": "GA" + } + } + }, + "dashboards.Subscription": { + "fields": { + "create_time": { + "description": "A timestamp indicating when the subscription was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by_user_id": { + "description": "UserId of the user who adds subscribers (users or notification destinations) to the dashboard's schedule.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "dashboard_id": { + "description": "UUID identifying the dashboard to which the subscription belongs.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "etag": { + "description": "The etag for the subscription. Must be left empty on create, can be optionally provided on delete\nto ensure that the subscription has not been deleted since the last read.", + "launch_stage": "GA" + }, + "schedule_id": { + "description": "UUID identifying the schedule to which the subscription belongs.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "skip_notify": { + "description": "Controls whether notifications are sent to the subscriber for scheduled dashboard refreshes.\nIf not defined, defaults to false in the backend to match the current behavior (refresh and notify)", + "launch_stage": "GA" + }, + "subscriber": { + "description": "Subscriber details for users and destinations to be added as subscribers to the schedule.", + "ref": "dashboards.Subscriber", + "launch_stage": "GA" + }, + "subscription_id": { + "description": "UUID identifying the subscription.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "A timestamp indicating when the subscription was last updated.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "dashboards.SubscriptionSubscriberDestination": { + "fields": { + "destination_id": { + "description": "The canonical identifier of the destination to receive email notification.", + "launch_stage": "GA" + } + } + }, + "dashboards.SubscriptionSubscriberUser": { + "fields": { + "user_id": { + "description": "UserId of the subscriber.", + "launch_stage": "GA" + } + } + }, + "dashboards.TextAttachment": { + "description": "A text response on a conversation message: the answer, the final summary, or a\nclarifying follow-up question, along with optional phase and verification metadata.", + "fields": { + "content": { + "description": "AI generated message", + "launch_stage": "GA" + }, + "id": { + "launch_stage": "GA" + }, + "purpose": { + "description": "Purpose of this text attachment. A completed message may contain more than\none text attachment (for example a clarifying follow-up question alongside\nthe final answer); use this field to tell them apart. `TEXT_ATTACHMENT_PURPOSE_ANSWER`\nmarks the final answer/summary and `FOLLOW_UP_QUESTION` marks a clarifying question.", + "ref": "dashboards.TextAttachmentPurpose", + "launch_stage": "GA" + } + } + }, + "dashboards.TextAttachmentPurpose": { + "description": "Purpose/intent of a text attachment", + "enum": [ + "FOLLOW_UP_QUESTION", + "TEXT_ATTACHMENT_PURPOSE_ANSWER" + ], + "enum_launch_stages": { + "FOLLOW_UP_QUESTION": "GA", + "TEXT_ATTACHMENT_PURPOSE_ANSWER": "GA" + } + }, + "dashboards.Thought": { + "description": "A single thought in the AI's reasoning process for a query.", + "fields": { + "content": { + "description": "The md formatted content for this thought.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "thought_type": { + "description": "The category of this thought.\nThe possible values are:\n* `THOUGHT_TYPE_DESCRIPTION`: A high-level description of how the question was interpreted.\n* `THOUGHT_TYPE_UNDERSTANDING`: How ambiguous parts of the question were resolved.\n* `THOUGHT_TYPE_DATA_SOURCING`: Which tables or datasets were identified as relevant.\n* `THOUGHT_TYPE_INSTRUCTIONS`: Which author-defined instructions were referenced.\n* `THOUGHT_TYPE_STEPS`: The logical steps taken to compute the answer.", + "ref": "dashboards.ThoughtType", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "dashboards.ThoughtType": { + "description": "ThoughtType.\nThe possible values are:\n* `THOUGHT_TYPE_UNSPECIFIED`: Default value that should not be used.\n* `THOUGHT_TYPE_DESCRIPTION`: A high-level description of how the question was interpreted.\n* `THOUGHT_TYPE_UNDERSTANDING`: How ambiguous parts of the question were resolved.\n* `THOUGHT_TYPE_DATA_SOURCING`: Which tables or datasets were identified as relevant.\n* `THOUGHT_TYPE_INSTRUCTIONS`: Which author-defined instructions were referenced.\n* `THOUGHT_TYPE_STEPS`: The logical steps taken to compute the answer.\nThe category of a Thought.\nAdditional values may be added in the future.", + "enum": [ + "THOUGHT_TYPE_DESCRIPTION", + "THOUGHT_TYPE_UNDERSTANDING", + "THOUGHT_TYPE_DATA_SOURCING", + "THOUGHT_TYPE_INSTRUCTIONS", + "THOUGHT_TYPE_STEPS" + ], + "enum_launch_stages": { + "THOUGHT_TYPE_DATA_SOURCING": "PUBLIC_PREVIEW", + "THOUGHT_TYPE_DESCRIPTION": "PUBLIC_PREVIEW", + "THOUGHT_TYPE_INSTRUCTIONS": "PUBLIC_PREVIEW", + "THOUGHT_TYPE_STEPS": "PUBLIC_PREVIEW", + "THOUGHT_TYPE_UNDERSTANDING": "PUBLIC_PREVIEW" + }, + "enum_descriptions": { + "THOUGHT_TYPE_DATA_SOURCING": "Which tables or datasets were identified as relevant.", + "THOUGHT_TYPE_DESCRIPTION": "A high-level description of how the question was interpreted.", + "THOUGHT_TYPE_INSTRUCTIONS": "Which author-defined instructions were referenced.", + "THOUGHT_TYPE_STEPS": "The logical steps taken to compute the answer.", + "THOUGHT_TYPE_UNDERSTANDING": "How ambiguous parts of the question were resolved." + } + }, + "dashboards.TrashDashboardRequest": {}, + "dashboards.TrashDashboardResponse": {}, + "dashboards.UnpublishDashboardRequest": {}, + "dashboards.UnpublishDashboardResponse": {}, + "dashboards.UpdateDashboardRequest": { + "fields": { + "dashboard": { + "ref": "dashboards.Dashboard", + "launch_stage": "GA" + }, + "dataset_catalog": { + "description": "Sets the default catalog for all datasets in this dashboard.\nDoes not impact table references that use fully qualified catalog names (ex: samples.nyctaxi.trips).\nLeave blank to keep each dataset’s existing configuration.", + "launch_stage": "GA" + }, + "dataset_schema": { + "description": "Sets the default schema for all datasets in this dashboard.\nDoes not impact table references that use fully qualified schema names (ex: nyctaxi.trips).\nLeave blank to keep each dataset’s existing configuration.", + "launch_stage": "GA" + } + } + }, + "dashboards.UpdateScheduleRequest": { + "fields": { + "schedule": { + "description": "The schedule to update.", + "ref": "dashboards.Schedule", + "launch_stage": "GA" + } + } + }, + "database.CreateDatabaseCatalogRequest": { + "fields": { + "catalog": { + "ref": "database.DatabaseCatalog", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "database.CreateDatabaseInstanceRequest": { + "fields": { + "database_instance": { + "description": "Instance to create.", + "ref": "database.DatabaseInstance", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "database.CreateDatabaseInstanceRoleRequest": { + "fields": { + "database_instance_name": { + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "database_instance_role": { + "ref": "database.DatabaseInstanceRole", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "database.CreateDatabaseTableRequest": { + "fields": { + "table": { + "ref": "database.DatabaseTable", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "database.CreateSyncedDatabaseTableRequest": { + "fields": { + "synced_table": { + "ref": "database.SyncedDatabaseTable", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "database.CustomTag": { + "fields": { + "key": { + "description": "The key of the custom tag.", + "launch_stage": "PUBLIC_BETA" + }, + "value": { + "description": "The value of the custom tag.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "database.DatabaseCatalog": { + "fields": { + "create_database_if_not_exists": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "database_instance_name": { + "description": "The name of the DatabaseInstance housing the database.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "database_name": { + "description": "The name of the database (in an instance) associated with the catalog.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "The name of the catalog in UC.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "uid": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "database.DatabaseCredential": { + "fields": { + "expiration_time": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "database.DatabaseInstance": { + "description": "A DatabaseInstance represents a logical Postgres instance, comprised of both compute and storage.", + "fields": { + "capacity": { + "description": "The sku of the instance. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "child_instance_refs": { + "description": "The refs of the child instances. This is only available if the instance is\nparent instance.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "creation_time": { + "description": "The timestamp when the instance was created.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "creator": { + "description": "The email of the creator of the instance.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "custom_tags": { + "description": "Custom tags associated with the instance. This field is only included on create and update responses.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "effective_capacity": { + "description": "Deprecated. The sku of the instance; this field will always match the value of capacity.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "deprecated": true, + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_custom_tags": { + "description": "The recorded custom tags associated with the instance.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_enable_pg_native_login": { + "description": "Whether the instance has PG native password login enabled.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_enable_readable_secondaries": { + "description": "Whether secondaries serving read-only traffic are enabled. Defaults to false.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_node_count": { + "description": "The number of nodes in the instance, composed of 1 primary and 0 or more secondaries. Defaults to\n1 primary and 0 secondaries.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_retention_window_in_days": { + "description": "The retention window for the instance. This is the time window in days\nfor which the historical data is retained.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_stopped": { + "description": "Whether the instance is stopped.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_usage_policy_id": { + "description": "The policy that is applied to the instance.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "enable_pg_native_login": { + "description": "Whether to enable PG native password login on the instance. Defaults to false.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "enable_readable_secondaries": { + "description": "Whether to enable secondaries to serve read-only traffic. Defaults to false.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "name": { + "description": "The name of the instance. This is the unique identifier for the instance.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "node_count": { + "description": "The number of nodes in the instance, composed of 1 primary and 0 or more secondaries. Defaults to\n1 primary and 0 secondaries. This field is input only, see effective_node_count for the output.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "parent_instance_ref": { + "description": "The ref of the parent instance. This is only available if the instance is\nchild instance.\nInput: For specifying the parent instance to create a child instance. Optional.\nOutput: Only populated if provided as input to create a child instance.", + "ref": "database.DatabaseInstanceRef", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "pg_version": { + "description": "The version of Postgres running on the instance.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "read_only_dns": { + "description": "The DNS endpoint to connect to the instance for read only access. This is only available if\nenable_readable_secondaries is true.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "read_write_dns": { + "description": "The DNS endpoint to connect to the instance for read+write access.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "retention_window_in_days": { + "description": "The retention window for the instance. This is the time window in days\nfor which the historical data is retained. The default value is 7 days.\nValid values are 2 to 35 days.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "state": { + "description": "The current state of the instance.", + "ref": "database.DatabaseInstanceState", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "stopped": { + "description": "Whether to stop the instance. An input only param, see effective_stopped for the output.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "uid": { + "description": "An immutable UUID identifier for the instance.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "usage_policy_id": { + "description": "The desired usage policy to associate with the instance.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + } + } + }, + "database.DatabaseInstanceRef": { + "description": "DatabaseInstanceRef is a reference to a database instance. It is used in the\nDatabaseInstance object to refer to the parent instance of an instance and\nto refer the child instances of an instance.\nTo specify as a parent instance during creation of an instance,\nthe lsn and branch_time fields are optional. If not specified, the child\ninstance will be created from the latest lsn of the parent.\nIf both lsn and branch_time are specified, the lsn will be used to create\nthe child instance.", + "fields": { + "branch_time": { + "description": "Branch time of the ref database instance.\nFor a parent ref instance, this is the point in time on the parent instance from which the\ninstance was created.\nFor a child ref instance, this is the point in time on the instance from which the child\ninstance was created.\nInput: For specifying the point in time to create a child instance. Optional.\nOutput: Only populated if provided as input to create a child instance.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "effective_lsn": { + "description": "For a parent ref instance, this is the LSN on the parent instance from which the\ninstance was created.\nFor a child ref instance, this is the LSN on the instance from which the child instance\nwas created.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "lsn": { + "description": "User-specified WAL LSN of the ref database instance.\n\nInput: For specifying the WAL LSN to create a child instance. Optional.\nOutput: Only populated if provided as input to create a child instance.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "name": { + "description": "Name of the ref database instance.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "uid": { + "description": "Id of the ref database instance.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "database.DatabaseInstanceRole": { + "description": "A DatabaseInstanceRole represents a Postgres role in a database instance.", + "fields": { + "attributes": { + "description": "The desired API-exposed Postgres role attribute to associate with the role. Optional.", + "ref": "database.DatabaseInstanceRoleAttributes", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "effective_attributes": { + "description": "The attributes that are applied to the role.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "ref": "database.DatabaseInstanceRoleAttributes", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "identity_type": { + "description": "The type of the role.", + "ref": "database.DatabaseInstanceRoleIdentityType", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "instance_name": { + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "membership_role": { + "description": "An enum value for a standard role that this role is a member of.", + "ref": "database.DatabaseInstanceRoleMembershipRole", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "The name of the role. This is the unique identifier for the role in an instance.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "database.DatabaseInstanceRoleAttributes": { + "description": "Attributes that can be granted to a Postgres role. We are only implementing a subset for now, see xref:\nhttps://www.postgresql.org/docs/16/sql-createrole.html\nThe values follow Postgres keyword naming e.g. CREATEDB, BYPASSRLS, etc. which is why they don't include typical\nunderscores between words. We were requested to make this a nested object/struct representation since these are\nknobs from an external spec.", + "fields": { + "bypassrls": { + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "createdb": { + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "createrole": { + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "database.DatabaseInstanceRoleIdentityType": { + "enum": [ + "PG_ONLY", + "USER", + "SERVICE_PRINCIPAL", + "GROUP" + ], + "enum_launch_stages": { + "GROUP": "PRIVATE_PREVIEW", + "PG_ONLY": "PRIVATE_PREVIEW", + "SERVICE_PRINCIPAL": "PRIVATE_PREVIEW", + "USER": "PRIVATE_PREVIEW" + } + }, + "database.DatabaseInstanceRoleMembershipRole": { + "description": "Roles that the DatabaseInstanceRole can be a member of.", + "enum": [ + "DATABRICKS_SUPERUSER" + ], + "enum_launch_stages": { + "DATABRICKS_SUPERUSER": "PRIVATE_PREVIEW" + } + }, + "database.DatabaseInstanceState": { + "enum": [ + "STARTING", + "AVAILABLE", + "DELETING", + "STOPPED", + "UPDATING", + "FAILING_OVER" + ], + "enum_launch_stages": { + "AVAILABLE": "PUBLIC_PREVIEW", + "DELETING": "PUBLIC_PREVIEW", + "FAILING_OVER": "PUBLIC_PREVIEW", + "STARTING": "PUBLIC_PREVIEW", + "STOPPED": "PUBLIC_PREVIEW", + "UPDATING": "PUBLIC_PREVIEW" + } + }, + "database.DatabaseTable": { + "fields": { + "database_instance_name": { + "description": "Name of the target database instance. This is required when creating database tables in standard catalogs.\nThis is optional when creating database tables in registered catalogs. If this field is specified\nwhen creating database tables in registered catalogs, the database instance name MUST\nmatch that of the registered catalog (or the request will be rejected).", + "launch_stage": "PUBLIC_PREVIEW" + }, + "logical_database_name": { + "description": "Target Postgres database object (logical database) name for this table.\n\nWhen creating a table in a standard catalog, this field is required.\nIn this scenario, specifying this field will allow targeting an arbitrary postgres database.\n\nRegistration of database tables via /database/tables is currently only supported in standard catalogs.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "Full three-part (catalog, schema, table) name of the table.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "database.DeleteDatabaseCatalogRequest": {}, + "database.DeleteDatabaseInstanceRequest": { + "fields": { + "force": { + "description": "By default, an instance cannot be deleted if it has descendant instances created via PITR. If\nthis flag is specified as true, all descendent instances will be deleted as well.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "purge": { + "description": "Deprecated. Omitting the field or setting it to true will result in the field being hard deleted. Setting a value\nof false will throw a bad request.", + "deprecated": true, + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "database.DeleteDatabaseInstanceRoleRequest": { + "fields": { + "allow_missing": { + "description": "This is the AIP standard name for the equivalent of Postgres' `IF EXISTS` option", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "reassign_owned_to": { + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "database.DeleteDatabaseTableRequest": {}, + "database.DeleteSyncedDatabaseTableRequest": { + "fields": { + "purge_data": { + "description": "Optional. When set to true, the actual PostgreSQL table will be dropped from the database.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "database.DeltaTableSyncInfo": { + "fields": { + "delta_commit_timestamp": { + "description": "The timestamp when the above Delta version was committed in the source Delta table.\nNote: This is the Delta commit time, not the time the data was written to the synced table.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "delta_commit_version": { + "description": "The Delta Lake commit version that was last successfully synced.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "database.FindDatabaseInstanceByUidRequest": { + "fields": { + "uid": { + "description": "UID of the cluster to get.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "database.GenerateDatabaseCredentialRequest": { + "description": "Generates a credential that can be used to access database instances", + "fields": { + "claims": { + "description": "A set of UC permissions to add to the credential. We verify that the caller has the necessary\npermissions in UC and include a reference in the token. Postgres uses that token to give the\nconnecting user additional grants to the Postgres resources that correspond to the UC resources.\nThe UC resources need to be something that have a Postgres counterpart. For example, a synced table or\na table in a UC database catalog.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "instance_names": { + "description": "Instances to request a credential for. At least one of instance_names or claims must be specified.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "request_id": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "database.GetDatabaseCatalogRequest": {}, + "database.GetDatabaseInstanceRequest": {}, + "database.GetDatabaseInstanceRoleRequest": {}, + "database.GetDatabaseTableRequest": {}, + "database.GetSyncedDatabaseTableRequest": {}, + "database.ListDatabaseCatalogsRequest": { + "fields": { + "page_size": { + "description": "Upper bound for items returned.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token to go to the next page of synced database tables. Requests first page if absent.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "database.ListDatabaseCatalogsResponse": { + "fields": { + "database_catalogs": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "next_page_token": { + "description": "Pagination token to request the next page of database catalogs.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "database.ListDatabaseInstanceRolesRequest": { + "fields": { + "page_size": { + "description": "Upper bound for items returned.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token to go to the next page of Database Instances. Requests first page if absent.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "database.ListDatabaseInstanceRolesResponse": { + "fields": { + "database_instance_roles": { + "description": "List of database instance roles.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "next_page_token": { + "description": "Pagination token to request the next page of instances.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "database.ListDatabaseInstancesRequest": { + "fields": { + "page_size": { + "description": "Upper bound for items returned. The maximum value is 100.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token to go to the next page of Database Instances. Requests first page if absent.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "database.ListDatabaseInstancesResponse": { + "fields": { + "database_instances": { + "description": "List of instances.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "next_page_token": { + "description": "Pagination token to request the next page of instances.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "database.ListSyncedDatabaseTablesRequest": { + "fields": { + "page_size": { + "description": "Upper bound for items returned.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token to go to the next page of synced database tables. Requests first page if absent.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "database.ListSyncedDatabaseTablesResponse": { + "fields": { + "next_page_token": { + "description": "Pagination token to request the next page of synced tables.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "synced_tables": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "database.NewPipelineSpec": { + "description": "Custom fields that user can set for pipeline while creating SyncedDatabaseTable.\nNote that other fields of pipeline are still inferred by table def internally", + "fields": { + "budget_policy_id": { + "description": "Budget policy to set on the newly created pipeline.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "storage_catalog": { + "description": "This field needs to be specified if the destination catalog is a managed postgres catalog.\n\nUC catalog for the pipeline to store intermediate files (checkpoints, event logs etc).\nThis needs to be a standard catalog where the user has permissions to create Delta tables.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "storage_schema": { + "description": "This field needs to be specified if the destination catalog is a managed postgres catalog.\n\nUC schema for the pipeline to store intermediate files (checkpoints, event logs etc).\nThis needs to be in the standard catalog where the user has permissions to create Delta tables.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "database.ProvisioningInfoState": { + "enum": [ + "PROVISIONING", + "ACTIVE", + "FAILED", + "DELETING", + "UPDATING", + "DEGRADED" + ], + "enum_launch_stages": { + "ACTIVE": "PUBLIC_PREVIEW", + "DEGRADED": "PUBLIC_PREVIEW", + "DELETING": "PUBLIC_PREVIEW", + "FAILED": "PUBLIC_PREVIEW", + "PROVISIONING": "PUBLIC_PREVIEW", + "UPDATING": "PUBLIC_PREVIEW" + } + }, + "database.ProvisioningPhase": { + "enum": [ + "PROVISIONING_PHASE_MAIN", + "PROVISIONING_PHASE_INDEX_SCAN", + "PROVISIONING_PHASE_INDEX_SORT" + ], + "enum_launch_stages": { + "PROVISIONING_PHASE_INDEX_SCAN": "PUBLIC_PREVIEW", + "PROVISIONING_PHASE_INDEX_SORT": "PUBLIC_PREVIEW", + "PROVISIONING_PHASE_MAIN": "PUBLIC_PREVIEW" + } + }, + "database.RequestedClaims": { + "fields": { + "permission_set": { + "ref": "database.RequestedClaimsPermissionSet", + "launch_stage": "PUBLIC_PREVIEW" + }, + "resources": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "database.RequestedClaimsPermissionSet": { + "description": "Might add WRITE in the future", + "enum": [ + "READ_ONLY" + ], + "enum_launch_stages": { + "READ_ONLY": "PUBLIC_PREVIEW" + } + }, + "database.RequestedResource": { + "fields": { + "table_name": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "unspecified_resource_name": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "database.SyncedDatabaseTable": { + "fields": { + "data_synchronization_status": { + "description": "Synced Table data synchronization status", + "ref": "database.SyncedTableStatus", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "database_instance_name": { + "description": "Name of the target database instance. This is required when creating synced database tables in standard catalogs.\nThis is optional when creating synced database tables in registered catalogs. If this field is specified\nwhen creating synced database tables in registered catalogs, the database instance name MUST\nmatch that of the registered catalog (or the request will be rejected).", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "effective_database_instance_name": { + "description": "The name of the database instance that this table is registered to. This field is always returned, and for\ntables inside database catalogs is inferred database instance associated with the catalog.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_logical_database_name": { + "description": "The name of the logical database that this table is registered to.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "logical_database_name": { + "description": "Target Postgres database object (logical database) name for this table.\n\nWhen creating a synced table in a registered Postgres catalog, the\ntarget Postgres database name is inferred to be that of the registered catalog.\nIf this field is specified in this scenario, the Postgres database name MUST\nmatch that of the registered catalog (or the request will be rejected).\n\nWhen creating a synced table in a standard catalog, this field is required.\nIn this scenario, specifying this field will allow targeting an arbitrary postgres database.\nNote that this has implications for the `create_database_objects_is_missing` field in `spec`.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "name": { + "description": "Full three-part (catalog, schema, table) name of the table.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "spec": { + "ref": "database.SyncedTableSpec", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "unity_catalog_provisioning_state": { + "description": "The provisioning state of the synced table entity in Unity Catalog. This is distinct from the\nstate of the data synchronization pipeline (i.e. the table may be in \"ACTIVE\" but the pipeline\nmay be in \"PROVISIONING\" as it runs asynchronously).", + "ref": "database.ProvisioningInfoState", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "database.SyncedTableContinuousUpdateStatus": { + "description": "Detailed status of a synced table. Shown if the synced table is in the SYNCED_CONTINUOUS_UPDATE\nor the SYNCED_UPDATING_PIPELINE_RESOURCES state.", + "fields": { + "initial_pipeline_sync_progress": { + "description": "Progress of the initial data synchronization.", + "ref": "database.SyncedTablePipelineProgress", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_processed_commit_version": { + "description": "The last source table Delta version that was successfully synced to the synced table.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "timestamp": { + "description": "The end timestamp of the last time any data was synchronized from the source table to the synced\ntable. This is when the data is available in the synced table.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "database.SyncedTableFailedStatus": { + "description": "Detailed status of a synced table. Shown if the synced table is in the OFFLINE_FAILED or the\nSYNCED_PIPELINE_FAILED state.", + "fields": { + "last_processed_commit_version": { + "description": "The last source table Delta version that was successfully synced to the synced table.\nThe last source table Delta version that was synced to the synced table.\nOnly populated if the table is still\nsynced and available for serving.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "timestamp": { + "description": "The end timestamp of the last time any data was synchronized from the source table to the synced\ntable. Only populated if the table is still synced and available for serving.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "database.SyncedTablePipelineProgress": { + "description": "Progress information of the Synced Table data synchronization pipeline.", + "fields": { + "estimated_completion_time_seconds": { + "description": "The estimated time remaining to complete this update in seconds.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "latest_version_currently_processing": { + "description": "The source table Delta version that was last processed by the pipeline. The pipeline may not\nhave completely processed this version yet.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "provisioning_phase": { + "description": "The current phase of the data synchronization pipeline.", + "ref": "database.ProvisioningPhase", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "sync_progress_completion": { + "description": "The completion ratio of this update. This is a number between 0 and 1.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "synced_row_count": { + "description": "The number of rows that have been synced in this update.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "total_row_count": { + "description": "The total number of rows that need to be synced in this update. This number may be an estimate.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "database.SyncedTablePosition": { + "fields": { + "delta_table_sync_info": { + "ref": "database.DeltaTableSyncInfo", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "sync_end_timestamp": { + "description": "The end timestamp of the most recent successful synchronization.\nThis is the time when the data is available in the synced table.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "sync_start_timestamp": { + "description": "The starting timestamp of the most recent successful synchronization from the source table\nto the destination (synced) table.\nNote this is the starting timestamp of the sync operation, not the end time.\nE.g., for a batch, this is the time when the sync operation started.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "database.SyncedTableProvisioningStatus": { + "description": "Detailed status of a synced table. Shown if the synced table is in the\nPROVISIONING_PIPELINE_RESOURCES or the PROVISIONING_INITIAL_SNAPSHOT state.", + "fields": { + "initial_pipeline_sync_progress": { + "description": "Details about initial data synchronization. Only populated when in the\nPROVISIONING_INITIAL_SNAPSHOT state.", + "ref": "database.SyncedTablePipelineProgress", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "database.SyncedTableSchedulingPolicy": { + "enum": [ + "CONTINUOUS", + "TRIGGERED", + "SNAPSHOT" + ], + "enum_launch_stages": { + "CONTINUOUS": "PUBLIC_PREVIEW", + "SNAPSHOT": "PUBLIC_PREVIEW", + "TRIGGERED": "PUBLIC_PREVIEW" + } + }, + "database.SyncedTableSpec": { + "description": "Specification of a synced database table.", + "fields": { + "accelerated_sync": { + "description": "When true, enables accelerated sync mode for the initial data load.\nThis significantly improves performance for large tables.\nRequires workspace-level enablement.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "create_database_objects_if_missing": { + "description": "If true, the synced table's logical database and schema resources in PG\nwill be created if they do not already exist.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "existing_pipeline_id": { + "description": "At most one of existing_pipeline_id and new_pipeline_spec should be defined.\n\nIf existing_pipeline_id is defined, the synced table will be bin packed into the existing pipeline\nreferenced. This avoids creating a new pipeline and allows sharing existing compute.\nIn this case, the scheduling_policy of this synced table must match the scheduling policy of the existing pipeline.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "new_pipeline_spec": { + "description": "At most one of existing_pipeline_id and new_pipeline_spec should be defined.\n\nIf new_pipeline_spec is defined, a new pipeline is created for this synced table. The location pointed to is used\nto store intermediate files (checkpoints, event logs etc). The caller must have write permissions to create Delta\ntables in the specified catalog and schema. Again, note this requires write permissions, whereas the source table\nonly requires read permissions.", + "ref": "database.NewPipelineSpec", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "primary_key_columns": { + "description": "Primary Key columns to be used for data insert/update in the destination.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "scheduling_policy": { + "description": "Scheduling policy of the underlying pipeline.", + "ref": "database.SyncedTableSchedulingPolicy", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "source_table_full_name": { + "description": "Three-part (catalog, schema, table) name of the source Delta table.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "timeseries_key": { + "description": "Time series key to deduplicate (tie-break) rows with the same primary key.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "type_overrides": { + "description": "Override the default Delta-\u003ePG type mapping for specific columns.\nA TypeOverride with PG_SPECIFIC_TYPE_UNSPECIFIED is rejected; a valid pg_type must be set.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "database.SyncedTableSpecPgSpecificType": { + "description": "PostgreSQL-specific target types that can override the default Delta-to-PG mapping.", + "enum": [ + "PG_SPECIFIC_TYPE_VECTOR", + "PG_SPECIFIC_TYPE_HALFVEC", + "PG_SPECIFIC_TYPE_VARCHAR" + ], + "enum_launch_stages": { + "PG_SPECIFIC_TYPE_HALFVEC": "PRIVATE_PREVIEW", + "PG_SPECIFIC_TYPE_VARCHAR": "PRIVATE_PREVIEW", + "PG_SPECIFIC_TYPE_VECTOR": "PRIVATE_PREVIEW" + } + }, + "database.SyncedTableSpecTypeOverride": { + "description": "Overrides the default Delta-to-PostgreSQL type mapping for a single column.", + "fields": { + "column_name": { + "description": "Name of the source column whose target PostgreSQL type should be overridden.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "pg_type": { + "description": "PostgreSQL-specific target type to use for the column.", + "ref": "database.SyncedTableSpecPgSpecificType", + "launch_stage": "PRIVATE_PREVIEW" + }, + "size": { + "description": "Size parameter for the target type, for types that take one (e.g. vector\ndimension, varchar length). Required when the chosen pg_type needs a size.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "database.SyncedTableState": { + "description": "The state of a synced table.", + "enum": [ + "SYNCED_TABLE_PROVISIONING", + "SYNCED_TABLE_PROVISIONING_PIPELINE_RESOURCES", + "SYNCED_TABLE_PROVISIONING_INITIAL_SNAPSHOT", + "SYNCED_TABLE_ONLINE", + "SYNCED_TABLE_ONLINE_CONTINUOUS_UPDATE", + "SYNCED_TABLE_ONLINE_TRIGGERED_UPDATE", + "SYNCED_TABLE_ONLINE_NO_PENDING_UPDATE", + "SYNCED_TABLED_OFFLINE", + "SYNCED_TABLE_OFFLINE_FAILED", + "SYNCED_TABLE_ONLINE_PIPELINE_FAILED", + "SYNCED_TABLE_ONLINE_UPDATING_PIPELINE_RESOURCES" + ], + "enum_launch_stages": { + "SYNCED_TABLED_OFFLINE": "PUBLIC_PREVIEW", + "SYNCED_TABLE_OFFLINE_FAILED": "PUBLIC_PREVIEW", + "SYNCED_TABLE_ONLINE": "PUBLIC_PREVIEW", + "SYNCED_TABLE_ONLINE_CONTINUOUS_UPDATE": "PUBLIC_PREVIEW", + "SYNCED_TABLE_ONLINE_NO_PENDING_UPDATE": "PUBLIC_PREVIEW", + "SYNCED_TABLE_ONLINE_PIPELINE_FAILED": "PUBLIC_PREVIEW", + "SYNCED_TABLE_ONLINE_TRIGGERED_UPDATE": "PUBLIC_PREVIEW", + "SYNCED_TABLE_ONLINE_UPDATING_PIPELINE_RESOURCES": "PUBLIC_PREVIEW", + "SYNCED_TABLE_PROVISIONING": "PUBLIC_PREVIEW", + "SYNCED_TABLE_PROVISIONING_INITIAL_SNAPSHOT": "PUBLIC_PREVIEW", + "SYNCED_TABLE_PROVISIONING_PIPELINE_RESOURCES": "PUBLIC_PREVIEW" + } + }, + "database.SyncedTableStatus": { + "description": "Status of a synced table.", + "fields": { + "continuous_update_status": { + "ref": "database.SyncedTableContinuousUpdateStatus", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "detailed_state": { + "description": "The state of the synced table.", + "ref": "database.SyncedTableState", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "failed_status": { + "ref": "database.SyncedTableFailedStatus", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "last_sync": { + "description": "Summary of the last successful synchronization from source to destination.\n\nWill always be present if there has been a successful sync. Even if the most recent syncs have failed.\n\nLimitation:\nThe only exception is if the synced table is doing a FULL REFRESH, then the last sync information\nwill not be available until the full refresh is complete. This limitation will be addressed in a future version.\n\nThis top-level field is a convenience for consumers who want easy access to last sync information\nwithout having to traverse detailed_status.", + "ref": "database.SyncedTablePosition", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "message": { + "description": "A text description of the current state of the synced table.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "pipeline_id": { + "description": "ID of the associated pipeline. The pipeline ID may have been provided by the client\n(in the case of bin packing), or generated by the server (when creating a new pipeline).", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "provisioning_status": { + "ref": "database.SyncedTableProvisioningStatus", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "triggered_update_status": { + "ref": "database.SyncedTableTriggeredUpdateStatus", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "database.SyncedTableTriggeredUpdateStatus": { + "description": "Detailed status of a synced table. Shown if the synced table is in the SYNCED_TRIGGERED_UPDATE\nor the SYNCED_NO_PENDING_UPDATE state.", + "fields": { + "last_processed_commit_version": { + "description": "The last source table Delta version that was successfully synced to the synced table.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "timestamp": { + "description": "The end timestamp of the last time any data was synchronized from the source table to the synced\ntable. This is when the data is available in the synced table.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "triggered_update_progress": { + "description": "Progress of the active data synchronization pipeline.", + "ref": "database.SyncedTablePipelineProgress", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "database.UpdateDatabaseCatalogRequest": { + "fields": { + "database_catalog": { + "description": "Note that updating a database catalog is not yet supported.", + "ref": "database.DatabaseCatalog", + "launch_stage": "PRIVATE_PREVIEW" + }, + "update_mask": { + "description": "The list of fields to update. Setting this field is not yet supported.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "database.UpdateDatabaseInstanceRequest": { + "fields": { + "database_instance": { + "ref": "database.DatabaseInstance", + "launch_stage": "PUBLIC_PREVIEW" + }, + "update_mask": { + "description": "The list of fields to update. If unspecified, all fields will be updated when possible. To wipe out custom_tags,\nspecify custom_tags in the update_mask with an empty custom_tags map.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "database.UpdateSyncedDatabaseTableRequest": { + "fields": { + "synced_table": { + "description": "Note that updating a synced database table is not yet supported.", + "ref": "database.SyncedDatabaseTable", + "launch_stage": "PRIVATE_PREVIEW" + }, + "update_mask": { + "description": "The list of fields to update. Setting this field is not yet supported.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "dataclassification.AutoTaggingConfig": { + "description": "Auto-tagging configuration for a classification tag.\nWhen enabled, detected columns are automatically tagged with Unity Catalog\ntags.", + "fields": { + "auto_tagging_mode": { + "description": "Whether auto-tagging is enabled or disabled for this classification tag.", + "ref": "dataclassification.AutoTaggingConfigAutoTaggingMode", + "launch_stage": "PUBLIC_PREVIEW" + }, + "classification_tag": { + "description": "The Classification Tag. For built-in classes this is a system tag (e.g., \"class.name\",\n\"class.location\"); for custom classes it is a user-defined governance tag key.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dataclassification.AutoTaggingConfigAutoTaggingMode": { + "description": "Auto-tagging mode.", + "enum": [ + "AUTO_TAGGING_DISABLED", + "AUTO_TAGGING_ENABLED" + ], + "enum_launch_stages": { + "AUTO_TAGGING_DISABLED": "PUBLIC_PREVIEW", + "AUTO_TAGGING_ENABLED": "PUBLIC_PREVIEW" + } + }, + "dataclassification.CatalogConfig": { + "description": "Data Classification configuration for a Unity Catalog catalog. This message follows the \"At Most One Resource\" pattern: at most one CatalogConfig exists per catalog.\n- Full CRUD operations are supported: Create enables Data Classification, Delete disables it\n- It has no unique identifier of its own and uses its parent catalog's identifier (catalog_name)", + "fields": { + "auto_tag_configs": { + "description": "List of auto-tagging configurations for this catalog.\nEmpty list means no auto-tagging is enabled.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "excluded_schemas": { + "description": "Schemas to exclude from the scan, each named relative to the parent catalog.\nIf specified, all schemas except the specified ones will be scanned.\nMutually exclusive with `included_schemas`: only one may be set per request.\nIf neither `included_schemas` nor `excluded_schemas` is set, all schemas are scanned.", + "ref": "dataclassification.CatalogConfigSchemaNames", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "included_schemas": { + "description": "Schemas to include in the scan, each named relative to the parent catalog.\nIf specified, only listed schemas will be scanned.\nMutually exclusive with `excluded_schemas`: only one may be set per request.\nIf neither `included_schemas` nor `excluded_schemas` is set, all schemas are scanned.", + "ref": "dataclassification.CatalogConfigSchemaNames", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Resource name in the format: catalogs/{catalog_name}/config.", + "launch_stage": "GA" + } + } + }, + "dataclassification.CatalogConfigSchemaNames": { + "description": "Wrapper message for a list of schema names.", + "fields": { + "names": { + "description": "Schema names, each relative to the parent catalog. Must not be empty.", + "launch_stage": "GA" + } + } + }, + "dataclassification.CreateCatalogConfigRequest": { + "fields": { + "catalog_config": { + "description": "The configuration to create.", + "ref": "dataclassification.CatalogConfig", + "launch_stage": "GA" + } + } + }, + "dataclassification.DeleteCatalogConfigRequest": {}, + "dataclassification.GetCatalogConfigRequest": {}, + "dataclassification.UpdateCatalogConfigRequest": { + "fields": { + "catalog_config": { + "description": "The configuration to apply to the catalog.\nThe name field in catalog_config identifies which resource to update.", + "ref": "dataclassification.CatalogConfig", + "launch_stage": "GA" + }, + "update_mask": { + "description": "Field mask specifying which fields to update.", + "launch_stage": "GA" + } + } + }, + "dataquality.AggregationGranularity": { + "description": "The granularity for aggregating data into time windows based on their timestamp.", + "enum": [ + "AGGREGATION_GRANULARITY_5_MINUTES", + "AGGREGATION_GRANULARITY_30_MINUTES", + "AGGREGATION_GRANULARITY_1_HOUR", + "AGGREGATION_GRANULARITY_1_DAY", + "AGGREGATION_GRANULARITY_1_WEEK", + "AGGREGATION_GRANULARITY_2_WEEKS", + "AGGREGATION_GRANULARITY_3_WEEKS", + "AGGREGATION_GRANULARITY_4_WEEKS", + "AGGREGATION_GRANULARITY_1_MONTH", + "AGGREGATION_GRANULARITY_1_YEAR" + ], + "enum_launch_stages": { + "AGGREGATION_GRANULARITY_1_DAY": "PUBLIC_PREVIEW", + "AGGREGATION_GRANULARITY_1_HOUR": "PUBLIC_PREVIEW", + "AGGREGATION_GRANULARITY_1_MONTH": "PUBLIC_PREVIEW", + "AGGREGATION_GRANULARITY_1_WEEK": "PUBLIC_PREVIEW", + "AGGREGATION_GRANULARITY_1_YEAR": "PUBLIC_PREVIEW", + "AGGREGATION_GRANULARITY_2_WEEKS": "PUBLIC_PREVIEW", + "AGGREGATION_GRANULARITY_30_MINUTES": "PUBLIC_PREVIEW", + "AGGREGATION_GRANULARITY_3_WEEKS": "PUBLIC_PREVIEW", + "AGGREGATION_GRANULARITY_4_WEEKS": "PUBLIC_PREVIEW", + "AGGREGATION_GRANULARITY_5_MINUTES": "PUBLIC_PREVIEW" + } + }, + "dataquality.AnomalyDetectionConfig": { + "description": "Anomaly Detection Configurations.", + "fields": { + "excluded_table_full_names": { + "description": "List of fully qualified table names to exclude from anomaly detection.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dataquality.CancelRefreshRequest": { + "description": "Request to cancel a refresh." + }, + "dataquality.CancelRefreshResponse": { + "description": "Response to cancelling a refresh.", + "fields": { + "refresh": { + "description": "The refresh to cancel.", + "ref": "dataquality.Refresh", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "dataquality.CreateMonitorRequest": { + "fields": { + "monitor": { + "description": "The monitor to create.", + "ref": "dataquality.Monitor", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dataquality.CreateRefreshRequest": { + "fields": { + "refresh": { + "description": "The refresh to create", + "ref": "dataquality.Refresh", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dataquality.CronSchedule": { + "description": "The data quality monitoring workflow cron schedule.", + "fields": { + "pause_status": { + "description": "Read only field that indicates whether the schedule is paused or not.", + "ref": "dataquality.CronSchedulePauseStatus", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "quartz_cron_expression": { + "description": "The expression that determines when to run the monitor. See [examples](https://www.quartz-scheduler.org/documentation/quartz-2.3.0/tutorials/crontrigger.html).", + "launch_stage": "PUBLIC_PREVIEW" + }, + "timezone_id": { + "description": "A Java timezone id. The schedule for a job will be resolved with respect to this timezone.\nSee `Java TimeZone \u003chttp://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html\u003e`_ for details.\nThe timezone id (e.g., ``America/Los_Angeles``) in which to evaluate the quartz expression.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dataquality.CronSchedulePauseStatus": { + "description": "The data quality monitoring workflow cron schedule pause status.", + "enum": [ + "CRON_SCHEDULE_PAUSE_STATUS_UNPAUSED", + "CRON_SCHEDULE_PAUSE_STATUS_PAUSED" + ], + "enum_launch_stages": { + "CRON_SCHEDULE_PAUSE_STATUS_PAUSED": "PUBLIC_PREVIEW", + "CRON_SCHEDULE_PAUSE_STATUS_UNPAUSED": "PUBLIC_PREVIEW" + } + }, + "dataquality.DataProfilingConfig": { + "description": "Data Profiling Configurations.", + "fields": { + "assets_dir": { + "description": "Field for specifying the absolute path to a custom directory to store data-monitoring\nassets. Normally prepopulated to a default user location via UI and Python APIs.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "baseline_table_name": { + "description": "Baseline table name.\nBaseline data is used to compute drift from the data in the monitored `table_name`.\nThe baseline table and the monitored table shall have the same schema.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "custom_metrics": { + "description": "Custom metrics.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "dashboard_id": { + "description": "Id of dashboard that visualizes the computed metrics.\nThis can be empty if the monitor is in PENDING state.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "drift_metrics_table_name": { + "description": "Table that stores drift metrics data. Format: `catalog.schema.table_name`.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_warehouse_id": { + "description": "The warehouse for dashboard creation", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "inference_log": { + "description": "`Analysis Configuration` for monitoring inference log tables.", + "ref": "dataquality.InferenceLogConfig", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "latest_monitor_failure_message": { + "description": "The latest error message for a monitor failure.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "monitor_version": { + "description": "Represents the current monitor configuration version in use. The version will be represented in a\nnumeric fashion (1,2,3...). The field has flexibility to take on negative values, which can indicate corrupted\nmonitor_version numbers.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "monitored_table_name": { + "description": "Unity Catalog table to monitor. Format: `catalog.schema.table_name`", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "notification_settings": { + "description": "Field for specifying notification settings.", + "ref": "dataquality.NotificationSettings", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "output_schema_id": { + "description": "ID of the schema where output tables are created.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "profile_metrics_table_name": { + "description": "Table that stores profile metrics data. Format: `catalog.schema.table_name`.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "schedule": { + "description": "The cron schedule.", + "ref": "dataquality.CronSchedule", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "skip_builtin_dashboard": { + "description": "Whether to skip creating a default dashboard summarizing data quality metrics.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "slicing_exprs": { + "description": "List of column expressions to slice data with for targeted analysis. The data is grouped by\neach expression independently, resulting in a separate slice for each predicate and its\ncomplements. For example `slicing_exprs=[“col_1”, “col_2 \u003e 10”]` will generate the following\nslices: two slices for `col_2 \u003e 10` (True and False), and one slice per unique value in\n`col1`. For high-cardinality columns, only the top 100 unique values by frequency will\ngenerate slices.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "snapshot": { + "description": "`Analysis Configuration` for monitoring snapshot tables.", + "ref": "dataquality.SnapshotConfig", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "status": { + "description": "The data profiling monitor status.", + "ref": "dataquality.DataProfilingStatus", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "time_series": { + "description": "`Analysis Configuration` for monitoring time series tables.", + "ref": "dataquality.TimeSeriesConfig", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "warehouse_id": { + "description": "Optional argument to specify the warehouse for dashboard creation. If not specified, the first running\nwarehouse will be used.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dataquality.DataProfilingCustomMetric": { + "description": "Custom metric definition.", + "fields": { + "definition": { + "description": "Jinja template for a SQL expression that specifies how to compute the metric. See [create metric definition](https://docs.databricks.com/en/lakehouse-monitoring/custom-metrics.html#create-definition).", + "launch_stage": "PUBLIC_PREVIEW" + }, + "input_columns": { + "description": "A list of column names in the input table the metric should be computed for.\nCan use ``\":table\"`` to indicate that the metric needs information from multiple columns.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "Name of the metric in the output tables.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "output_data_type": { + "description": "The output type of the custom metric.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "type": { + "description": "The type of the custom metric.", + "ref": "dataquality.DataProfilingCustomMetricType", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dataquality.DataProfilingCustomMetricType": { + "description": "The custom metric type.", + "enum": [ + "DATA_PROFILING_CUSTOM_METRIC_TYPE_AGGREGATE", + "DATA_PROFILING_CUSTOM_METRIC_TYPE_DERIVED", + "DATA_PROFILING_CUSTOM_METRIC_TYPE_DRIFT" + ], + "enum_launch_stages": { + "DATA_PROFILING_CUSTOM_METRIC_TYPE_AGGREGATE": "PUBLIC_PREVIEW", + "DATA_PROFILING_CUSTOM_METRIC_TYPE_DERIVED": "PUBLIC_PREVIEW", + "DATA_PROFILING_CUSTOM_METRIC_TYPE_DRIFT": "PUBLIC_PREVIEW" + } + }, + "dataquality.DataProfilingStatus": { + "description": "The status of the data profiling monitor.", + "enum": [ + "DATA_PROFILING_STATUS_ACTIVE", + "DATA_PROFILING_STATUS_PENDING", + "DATA_PROFILING_STATUS_DELETE_PENDING", + "DATA_PROFILING_STATUS_ERROR", + "DATA_PROFILING_STATUS_FAILED" + ], + "enum_launch_stages": { + "DATA_PROFILING_STATUS_ACTIVE": "PUBLIC_PREVIEW", + "DATA_PROFILING_STATUS_DELETE_PENDING": "PUBLIC_PREVIEW", + "DATA_PROFILING_STATUS_ERROR": "PUBLIC_PREVIEW", + "DATA_PROFILING_STATUS_FAILED": "PUBLIC_PREVIEW", + "DATA_PROFILING_STATUS_PENDING": "PUBLIC_PREVIEW" + } + }, + "dataquality.DeleteMonitorRequest": {}, + "dataquality.DeleteRefreshRequest": {}, + "dataquality.GetMonitorRequest": {}, + "dataquality.GetRefreshRequest": {}, + "dataquality.InferenceLogConfig": { + "description": "Inference log configuration.", + "fields": { + "granularities": { + "description": "List of granularities to use when aggregating data into time windows based on their timestamp.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "label_column": { + "description": "Column for the label.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "model_id_column": { + "description": "Column for the model identifier.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "prediction_column": { + "description": "Column for the prediction.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "problem_type": { + "description": "Problem type the model aims to solve.", + "ref": "dataquality.InferenceProblemType", + "launch_stage": "PUBLIC_PREVIEW" + }, + "timestamp_column": { + "description": "Column for the timestamp.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dataquality.InferenceProblemType": { + "description": "Inference problem type the model aims to solve.", + "enum": [ + "INFERENCE_PROBLEM_TYPE_CLASSIFICATION", + "INFERENCE_PROBLEM_TYPE_REGRESSION" + ], + "enum_launch_stages": { + "INFERENCE_PROBLEM_TYPE_CLASSIFICATION": "PUBLIC_PREVIEW", + "INFERENCE_PROBLEM_TYPE_REGRESSION": "PUBLIC_PREVIEW" + } + }, + "dataquality.ListMonitorRequest": { + "fields": { + "page_size": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dataquality.ListMonitorResponse": { + "description": "Response for listing Monitors.", + "fields": { + "monitors": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "next_page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dataquality.ListRefreshRequest": { + "fields": { + "page_size": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dataquality.ListRefreshResponse": { + "description": "Response for listing refreshes.", + "fields": { + "next_page_token": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "refreshes": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dataquality.Monitor": { + "description": "Monitor for the data quality of unity catalog entities such as schema or table.", + "fields": { + "anomaly_detection_config": { + "description": "Anomaly Detection Configuration, applicable to `schema` object types.", + "ref": "dataquality.AnomalyDetectionConfig", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "data_profiling_config": { + "description": "Data Profiling Configuration, applicable to `table` object types. Exactly one `Analysis Configuration`\nmust be present.", + "ref": "dataquality.DataProfilingConfig", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "object_id": { + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "object_type": { + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dataquality.NotificationDestination": { + "description": "Destination of the data quality monitoring notification.", + "fields": { + "email_addresses": { + "description": "The list of email addresses to send the notification to. A maximum of 5 email addresses is supported.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dataquality.NotificationSettings": { + "description": "Settings for sending notifications on the data quality monitoring.", + "fields": { + "on_failure": { + "description": "Destinations to send notifications on failure/timeout.", + "ref": "dataquality.NotificationDestination", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "dataquality.Refresh": { + "description": "The Refresh object gives information on a refresh of the data quality monitoring pipeline.", + "fields": { + "end_time_ms": { + "description": "Time when the refresh ended (milliseconds since 1/1/1970 UTC).", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "message": { + "description": "An optional message to give insight into the current state of the refresh (e.g. FAILURE messages).", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "object_id": { + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "object_type": { + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "refresh_id": { + "description": "Unique id of the refresh operation.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "start_time_ms": { + "description": "Time when the refresh started (milliseconds since 1/1/1970 UTC).", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "state": { + "description": "The current state of the refresh.", + "ref": "dataquality.RefreshState", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "trigger": { + "description": "What triggered the refresh.", + "ref": "dataquality.RefreshTrigger", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "dataquality.RefreshState": { + "description": "The state of the refresh.", + "enum": [ + "MONITOR_REFRESH_STATE_UNKNOWN", + "MONITOR_REFRESH_STATE_PENDING", + "MONITOR_REFRESH_STATE_RUNNING", + "MONITOR_REFRESH_STATE_SUCCESS", + "MONITOR_REFRESH_STATE_FAILED", + "MONITOR_REFRESH_STATE_CANCELED" + ], + "enum_launch_stages": { + "MONITOR_REFRESH_STATE_CANCELED": "PUBLIC_PREVIEW", + "MONITOR_REFRESH_STATE_FAILED": "PUBLIC_PREVIEW", + "MONITOR_REFRESH_STATE_PENDING": "PUBLIC_PREVIEW", + "MONITOR_REFRESH_STATE_RUNNING": "PUBLIC_PREVIEW", + "MONITOR_REFRESH_STATE_SUCCESS": "PUBLIC_PREVIEW", + "MONITOR_REFRESH_STATE_UNKNOWN": "PUBLIC_PREVIEW" + } + }, + "dataquality.RefreshTrigger": { + "description": "The trigger of the refresh.", + "enum": [ + "MONITOR_REFRESH_TRIGGER_UNKNOWN", + "MONITOR_REFRESH_TRIGGER_MANUAL", + "MONITOR_REFRESH_TRIGGER_SCHEDULE", + "MONITOR_REFRESH_TRIGGER_DATA_CHANGE" + ], + "enum_launch_stages": { + "MONITOR_REFRESH_TRIGGER_DATA_CHANGE": "PUBLIC_PREVIEW", + "MONITOR_REFRESH_TRIGGER_MANUAL": "PUBLIC_PREVIEW", + "MONITOR_REFRESH_TRIGGER_SCHEDULE": "PUBLIC_PREVIEW", + "MONITOR_REFRESH_TRIGGER_UNKNOWN": "PUBLIC_PREVIEW" + } + }, + "dataquality.SnapshotConfig": { + "description": "Snapshot analysis configuration." + }, + "dataquality.TimeSeriesConfig": { + "description": "Time series analysis configuration.", + "fields": { + "granularities": { + "description": "List of granularities to use when aggregating data into time windows based on their timestamp.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "timestamp_column": { + "description": "Column for the timestamp.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dataquality.UpdateMonitorRequest": { + "fields": { + "monitor": { + "description": "The monitor to update.", + "ref": "dataquality.Monitor", + "launch_stage": "PUBLIC_PREVIEW" + }, + "update_mask": { + "description": "The field mask to specify which fields to update as a comma-separated list.\nExample value: `data_profiling_config.custom_metrics,data_profiling_config.schedule.quartz_cron_expression`", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "dataquality.UpdateRefreshRequest": { + "fields": { + "refresh": { + "description": "The refresh to update.", + "ref": "dataquality.Refresh", + "launch_stage": "PUBLIC_PREVIEW" + }, + "update_mask": { + "description": "The field mask to specify which fields to update.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "disasterrecovery.CreateFailoverGroupRequest": { + "fields": { + "failover_group": { + "description": "The failover group to create.", + "ref": "disasterrecovery.FailoverGroup", + "launch_stage": "GA" + }, + "failover_group_id": { + "description": "Client-provided identifier for the failover group. Used to construct the\nresource name as {parent}/failover-groups/{failover_group_id}.", + "launch_stage": "GA" + }, + "validate_only": { + "description": "When true, validates the request without creating the failover group.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "disasterrecovery.CreateStableUrlRequest": { + "fields": { + "stable_url": { + "description": "The stable URL to create.", + "ref": "disasterrecovery.StableUrl", + "launch_stage": "GA" + }, + "stable_url_id": { + "description": "Client-provided identifier for the stable URL. Used to construct the\nresource name as {parent}/stable-urls/{stable_url_id}.", + "launch_stage": "GA" + }, + "validate_only": { + "description": "When true, validates the request without creating the stable URL.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "disasterrecovery.DeleteFailoverGroupRequest": { + "fields": { + "etag": { + "description": "Opaque version string for optimistic locking. If provided, must match the\ncurrent etag. If omitted, the delete proceeds without an etag check.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "disasterrecovery.DeleteStableUrlRequest": {}, + "disasterrecovery.FailoverFailoverGroupRequest": { + "description": "Request to failover a failover group to a new primary region.", + "fields": { + "etag": { + "description": "Opaque version string for optimistic locking. If provided, must match the\ncurrent etag. If omitted, the failover proceeds regardless of current state.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "failover_type": { + "description": "The type of failover to perform.", + "ref": "disasterrecovery.FailoverFailoverGroupRequestFailoverType", + "launch_stage": "GA" + }, + "target_primary_region": { + "description": "The target primary region. Must be one of the participating regions and different\nfrom the current effective_primary_region. Serves as an idempotency check.", + "launch_stage": "GA" + } + } + }, + "disasterrecovery.FailoverFailoverGroupRequestFailoverType": { + "description": "The type of failover to perform.", + "enum": [ + "FORCED" + ], + "enum_launch_stages": { + "FORCED": "GA" + } + }, + "disasterrecovery.FailoverGroup": { + "description": "A failover group manages disaster recovery across workspace sets,\ncoordinating Unity Catalog and workspace assets replication.", + "fields": { + "create_time": { + "description": "Time at which this failover group was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_primary_region": { + "description": "Current effective primary region. Replication flows FROM workspaces in this region.\nChanges after a successful failover.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "etag": { + "description": "Opaque version string for optimistic locking. Server-generated and returned in responses.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "has_replication_point_blocking_errors": { + "description": "True if errors currently block the replication point.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "initial_primary_region": { + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "INPUT_ONLY" + ] + }, + "initial_replication_progress": { + "description": "Initial replication progress of all in-scope assets. Set only when the FailoverGroup is in INITIAL_REPLICATION state.", + "ref": "disasterrecovery.InitialReplicationProgress", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Fully qualified resource name in the format\naccounts/{account_id}/failover-groups/{failover_group_id}.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "regions": { + "description": "List of all regions participating in this failover group.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "replication_point": { + "description": "The latest point in time to which data has been replicated.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "state": { + "description": "Aggregate state of the failover group.", + "ref": "disasterrecovery.FailoverGroupState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "unity_catalog_assets": { + "description": "Unity Catalog replication configuration.", + "ref": "disasterrecovery.UcReplicationConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "update_time": { + "description": "Time at which this failover group was last modified.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "workspace_sets": { + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "launch_stage": "GA" + } + } + }, + "disasterrecovery.FailoverGroupState": { + "description": "The aggregate state of a FailoverGroup.", + "enum": [ + "CREATING", + "CREATION_FAILED", + "INITIAL_REPLICATION", + "ACTIVE", + "FAILING_OVER", + "DELETING", + "FAILOVER_FAILED", + "DELETION_FAILED" + ], + "enum_launch_stages": { + "ACTIVE": "GA", + "CREATING": "GA", + "CREATION_FAILED": "GA", + "DELETING": "GA", + "DELETION_FAILED": "GA", + "FAILING_OVER": "GA", + "FAILOVER_FAILED": "GA", + "INITIAL_REPLICATION": "GA" + } + }, + "disasterrecovery.GetFailoverGroupRequest": {}, + "disasterrecovery.GetStableUrlRequest": {}, + "disasterrecovery.InitialReplicationProgress": { + "description": "Progress of the initial replication of all in-scope assets (Unity Catalog and\nworkspace assets) of a FailoverGroup. Populated only while the FailoverGroup\nis in INITIAL_REPLICATION.", + "fields": { + "completed": { + "description": "Percent complete, 0-100.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "disasterrecovery.ListFailoverGroupsRequest": { + "fields": { + "page_size": { + "description": "Maximum number of failover groups to return per page:\n- when set to a value greater than 0, the page length is the minimum of this value\nand a server configured value;\n- when set to 0 or unset, the page length is set to a server configured value\n(recommended);\n- when set to a value less than 0, an invalid parameter error is returned.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Page token received from a previous ListFailoverGroups call.\nProvide this to retrieve the subsequent page.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "disasterrecovery.ListFailoverGroupsResponse": { + "description": "Response for listing failover groups.", + "fields": { + "failover_groups": { + "description": "The failover groups for this account.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "A token that can be sent as page_token to retrieve the next page.\nIf omitted, there are no subsequent pages.", + "launch_stage": "GA" + } + } + }, + "disasterrecovery.ListStableUrlsRequest": { + "fields": { + "page_size": { + "description": "Maximum number of stable URLs to return per page:\n- when set to a value greater than 0, the page length is the minimum of this value\nand a server configured value;\n- when set to 0 or unset, the page length is set to a server configured value\n(recommended);\n- when set to a value less than 0, an invalid parameter error is returned.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Page token received from a previous ListStableUrls call.\nProvide this to retrieve the subsequent page.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "disasterrecovery.ListStableUrlsResponse": { + "description": "Response for listing stable URLs.", + "fields": { + "next_page_token": { + "description": "A token that can be sent as page_token to retrieve the next page.\nIf omitted, there are no subsequent pages.", + "launch_stage": "GA" + }, + "stable_urls": { + "description": "The stable URLs for this account.", + "launch_stage": "GA" + } + } + }, + "disasterrecovery.LocationMapping": { + "description": "A location mapping identified by a name, with URIs per region.\nThe system derives replication direction from effective_primary_region.", + "fields": { + "name": { + "description": "Resource name for this location.", + "launch_stage": "GA" + }, + "uri_by_region": { + "description": "URI for each region. Each entry maps a region name to a storage URI.", + "launch_stage": "GA" + } + } + }, + "disasterrecovery.LocationMappingEntry": { + "description": "A single entry in a location mapping, mapping a region to a storage URI.\nUsed instead of map\u003cstring, string\u003e for proto2 compatibility.", + "fields": { + "region": { + "description": "The region name.", + "launch_stage": "GA" + }, + "uri": { + "description": "The storage URI for this region.", + "launch_stage": "GA" + } + } + }, + "disasterrecovery.StableUrl": { + "description": "A stable URL provides a failover-aware endpoint for accessing a workspace.\nIts lifecycle is independent of any failover group.", + "fields": { + "effective_workspace_id": { + "description": "The workspace this stable URL currently routes to. Set to\n`initial_workspace_id` at creation, advanced to the failover group's primary\nwhile attached (including across a failover), and preserved when the stable\nURL is detached from its failover group. Read this to see where an unattached\nstable URL points: after a failover followed by a detach it reflects the\npost-failover primary, not `initial_workspace_id`.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "failover_group_name": { + "description": "Fully qualified resource name of the FailoverGroup this stable URL is\ncurrently linked to, in the format\n`accounts/{account_id}/failover-groups/{failover_group_id}`. Empty when\nthe stable URL is not attached to any failover group.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "initial_workspace_id": { + "description": "The workspace this stable URL is initially bound to. Used only in Create\nrequests to associate the stable URL with a workspace. Not returned in\nresponses.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "INPUT_ONLY" + ] + }, + "name": { + "description": "Fully qualified resource name.\nFormat: accounts/{account_id}/stable-urls/{stable_url_id}.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "stable_workspace_id": { + "description": "The stable workspace ID for this stable URL. Generated on creation and\nimmutable thereafter; identifies the URL across failovers and is the same\nvalue embedded in the `url` (as the `w=` query parameter for SPOG URLs,\nor in the `conn-\u003cid\u003e` hostname for Private-Link URLs).", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + }, + "url": { + "description": "The stable URL endpoint. Generated on creation and\nimmutable thereafter. For non-Private-Link workspaces this is\n`https://\u003cspog_host\u003e/?w=\u003cconnection_id\u003e`. For Private-Link workspaces\nthis is the per-connection hostname.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + } + } + }, + "disasterrecovery.UcCatalog": { + "description": "A Unity Catalog catalog to replicate.", + "fields": { + "name": { + "description": "The name of the UC catalog to replicate.", + "launch_stage": "GA" + } + } + }, + "disasterrecovery.UcReplicationConfig": { + "description": "Unity Catalog replication configuration (top-level, not per-set).", + "fields": { + "catalogs": { + "description": "UC catalogs to replicate.", + "launch_stage": "GA" + }, + "data_replication_workspace_set": { + "description": "The workspace set whose workspaces will be used for data replication\nof all UC catalogs' underlying storage.", + "launch_stage": "GA" + }, + "location_mappings": { + "description": "Location mappings - storage URI per region for each location.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "disasterrecovery.UpdateFailoverGroupRequest": { + "fields": { + "etag": { + "description": "Optional opaque version string for optimistic locking, obtained from a prior read of\nthe failover group. If provided, the update is rejected unless it matches the failover\ngroup's current etag. If omitted, the update proceeds without an optimistic-lock check.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "failover_group": { + "description": "The failover group with updated fields. The name field identifies the resource\nand is populated from the URL path.", + "ref": "disasterrecovery.FailoverGroup", + "launch_stage": "GA" + }, + "update_mask": { + "description": "Comma-separated list of fields to update.", + "launch_stage": "GA" + } + } + }, + "disasterrecovery.WorkspaceSet": { + "description": "A set of workspaces that replicate to each other across regions.", + "fields": { + "name": { + "description": "Resource name for this workspace set.", + "launch_stage": "GA" + }, + "replicate_workspace_assets": { + "description": "Whether to enable control plane DR (notebooks, jobs, clusters, etc.) for this set.\nDefaults to false.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "stable_url_names": { + "description": "Resource names of stable URLs associated with this workspace set.\nFormat: accounts/{account_id}/stable-urls/{stable_url_id}.\nThe referenced stable URLs must already exist (via CreateStableUrl).", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "workspace_ids": { + "description": "Workspace IDs in this set. The system derives and validates regions.\nAll workspaces must be in the Mission Critical tier.", + "launch_stage": "GA" + } + } + }, + "domains.CreateDomainRequest": { + "fields": { + "domain": { + "ref": "domains.Domain", + "launch_stage": "PUBLIC_BETA" + }, + "domain_id": { + "description": "Client-supplied resource ID for the new domain. If omitted, the server\ngenerates one.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "domains.DeleteDomainRequest": { + "fields": { + "force": { + "description": "When false (default), DeleteDomain is rejected with FAILED_PRECONDITION if\nthe domain still has Glossary pages. When true, those pages are deleted\nfirst and then the domain is removed.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + } + } + }, + "domains.Domain": { + "fields": { + "business_owner_ids": { + "description": "Principal IDs of the business owners (users, groups, or service principals).", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "create_time": { + "description": "Timestamp when the domain was created.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "Full description (max 4096 chars)", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "domain_id": { + "description": "Unique identifier for the domain. If omitted at Create, the server\ngenerates one.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "draft": { + "description": "Whether to mark the domain as a draft. If omitted on Create, the server\napplies a default; the resolved value is returned in `effective_draft`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "effective_draft": { + "description": "Resolved draft state of the domain.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "icon": { + "description": "Icon to display for the domain.", + "ref": "domains.DomainIcon", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Full resource name of the domain. The primary identifier for this resource.\nFormat: `domains/{domain_id}`\nIdentifies the domain on get, update, and delete. Not an input on\ncreate — to choose the id, set `CreateDomainRequest.domain_id`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "parent_domain_id": { + "description": "Domain ID of the parent. If absent, this is a top-level domain.\nIf present, this domain is a subdomain of the specified parent.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "subtitle": { + "description": "Short description (max 280 chars)", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "tag_key": { + "description": "Governed tag key associated with this domain.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "technical_owner_ids": { + "description": "Principal IDs of the technical owners (users, groups, or service principals).", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "update_time": { + "description": "Timestamp when the domain was last updated.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "domains.DomainIcon": { + "description": "Icon configuration for a domain.", + "fields": { + "color": { + "description": "Hex color code with # prefix (e.g., \"#FF5733\").", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "ref": "domains.DomainIconName", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "domains.DomainIconName": { + "description": "Available icon names for a domain.", + "enum": [ + "ADDRESS_BOOK", + "ALARM", + "ARROWS_IN", + "ATOM", + "BALLOON", + "BANK", + "BARRICADE", + "BASKET", + "BRIDGE", + "CACTUS", + "CALL_BELL", + "CARROT", + "CHART_PIE_SLICE", + "CITY", + "CLOUD", + "COINS", + "COMPASS_ROSE", + "CRANE_TOWER", + "CROWN", + "CUBE_TRANSPARENT", + "FADERS", + "FLAG_BANNER_FOLD", + "FLAG_CHECKERED", + "GAVEL", + "HAMBURGER", + "HEAD_CIRCUIT", + "HOURGLASS_HIGH", + "INTERSECT_THREE", + "MICROSCOPE", + "MOON_STARS", + "PACKAGE", + "PARACHUTE", + "PEPPER", + "PIGGY_BANK", + "PILL", + "PLANET", + "PLANT", + "PLUGS_CONNECTED", + "POPCORN", + "PRESENTATION_CHART", + "PUZZLE_PIECE", + "RAINBOW", + "RANKING", + "RECEIPT", + "ROCKET", + "RULER", + "SAILBOAT", + "SCALES", + "SCAN_SMILEY", + "SCROLL", + "SHIELD_CHECKERED", + "SNEAKER", + "SNOWFLAKE", + "SOLAR_ROOF", + "SPEEDOMETER", + "STAMP", + "STEPS", + "STRATEGY", + "SWORD", + "TELEVISION_SIMPLE", + "TENT", + "TICKET", + "TRACTOR", + "TRAFFIC_CONE", + "TRAIN", + "TREE_EVERGREEN", + "TREE_STRUCTURE", + "TROLLEY_SUITCASE", + "TROPHY", + "TRUCK_TRAILER", + "USERS_THREE", + "VECTOR_THREE" + ], + "enum_launch_stages": { + "ADDRESS_BOOK": "PUBLIC_BETA", + "ALARM": "PUBLIC_BETA", + "ARROWS_IN": "PUBLIC_BETA", + "ATOM": "PUBLIC_BETA", + "BALLOON": "PUBLIC_BETA", + "BANK": "PUBLIC_BETA", + "BARRICADE": "PUBLIC_BETA", + "BASKET": "PUBLIC_BETA", + "BRIDGE": "PUBLIC_BETA", + "CACTUS": "PUBLIC_BETA", + "CALL_BELL": "PUBLIC_BETA", + "CARROT": "PUBLIC_BETA", + "CHART_PIE_SLICE": "PUBLIC_BETA", + "CITY": "PUBLIC_BETA", + "CLOUD": "PUBLIC_BETA", + "COINS": "PUBLIC_BETA", + "COMPASS_ROSE": "PUBLIC_BETA", + "CRANE_TOWER": "PUBLIC_BETA", + "CROWN": "PUBLIC_BETA", + "CUBE_TRANSPARENT": "PUBLIC_BETA", + "FADERS": "PUBLIC_BETA", + "FLAG_BANNER_FOLD": "PUBLIC_BETA", + "FLAG_CHECKERED": "PUBLIC_BETA", + "GAVEL": "PUBLIC_BETA", + "HAMBURGER": "PUBLIC_BETA", + "HEAD_CIRCUIT": "PUBLIC_BETA", + "HOURGLASS_HIGH": "PUBLIC_BETA", + "INTERSECT_THREE": "PUBLIC_BETA", + "MICROSCOPE": "PUBLIC_BETA", + "MOON_STARS": "PUBLIC_BETA", + "PACKAGE": "PUBLIC_BETA", + "PARACHUTE": "PUBLIC_BETA", + "PEPPER": "PUBLIC_BETA", + "PIGGY_BANK": "PUBLIC_BETA", + "PILL": "PUBLIC_BETA", + "PLANET": "PUBLIC_BETA", + "PLANT": "PUBLIC_BETA", + "PLUGS_CONNECTED": "PUBLIC_BETA", + "POPCORN": "PUBLIC_BETA", + "PRESENTATION_CHART": "PUBLIC_BETA", + "PUZZLE_PIECE": "PUBLIC_BETA", + "RAINBOW": "PUBLIC_BETA", + "RANKING": "PUBLIC_BETA", + "RECEIPT": "PUBLIC_BETA", + "ROCKET": "PUBLIC_BETA", + "RULER": "PUBLIC_BETA", + "SAILBOAT": "PUBLIC_BETA", + "SCALES": "PUBLIC_BETA", + "SCAN_SMILEY": "PUBLIC_BETA", + "SCROLL": "PUBLIC_BETA", + "SHIELD_CHECKERED": "PUBLIC_BETA", + "SNEAKER": "PUBLIC_BETA", + "SNOWFLAKE": "PUBLIC_BETA", + "SOLAR_ROOF": "PUBLIC_BETA", + "SPEEDOMETER": "PUBLIC_BETA", + "STAMP": "PUBLIC_BETA", + "STEPS": "PUBLIC_BETA", + "STRATEGY": "PUBLIC_BETA", + "SWORD": "PUBLIC_BETA", + "TELEVISION_SIMPLE": "PUBLIC_BETA", + "TENT": "PUBLIC_BETA", + "TICKET": "PUBLIC_BETA", + "TRACTOR": "PUBLIC_BETA", + "TRAFFIC_CONE": "PUBLIC_BETA", + "TRAIN": "PUBLIC_BETA", + "TREE_EVERGREEN": "PUBLIC_BETA", + "TREE_STRUCTURE": "PUBLIC_BETA", + "TROLLEY_SUITCASE": "PUBLIC_BETA", + "TROPHY": "PUBLIC_BETA", + "TRUCK_TRAILER": "PUBLIC_BETA", + "USERS_THREE": "PUBLIC_BETA", + "VECTOR_THREE": "PUBLIC_BETA" + } + }, + "domains.GetDomainRequest": {}, + "domains.ListDomainsRequest": { + "fields": { + "page_size": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "parent_domain_id": { + "description": "Filter by parent domain.\n- Absent: return all domains regardless of hierarchy.\n- Present: return only direct children of the specified domain.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "domains.ListDomainsResponse": { + "fields": { + "domains": { + "launch_stage": "PUBLIC_BETA" + }, + "next_page_token": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "domains.UpdateDomainRequest": { + "fields": { + "domain": { + "ref": "domains.Domain", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "environments.BaseEnvironmentType": { + "description": "If changed, also update estore/namespaces/defaultbaseenvironments/latest.proto", + "enum": [ + "CPU", + "GPU" + ], + "enum_launch_stages": { + "CPU": "GA", + "GPU": "GA" + } + }, + "environments.CreateWorkspaceBaseEnvironmentRequest": { + "fields": { + "request_id": { + "description": "A unique identifier for this request. A random UUID is recommended.\nThis request is only idempotent if a request_id is provided.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "workspace_base_environment": { + "description": "Required. The workspace base environment to create.", + "ref": "environments.WorkspaceBaseEnvironment", + "launch_stage": "GA" + }, + "workspace_base_environment_id": { + "description": "The ID to use for the workspace base environment, which will become the final component of\nthe resource name.\nThis value should be 4-63 characters, and valid characters are /[a-z][0-9]-/.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "environments.DatabricksServiceExceptionWithDetailsProto": { + "description": "Databricks Error that is returned by all Databricks APIs.", + "fields": { + "details": { + "launch_stage": "GA" + }, + "error_code": { + "ref": "environments.ErrorCode", + "launch_stage": "GA" + }, + "message": { + "launch_stage": "GA" + }, + "stack_trace": { + "launch_stage": "GA" + } + } + }, + "environments.DefaultWorkspaceBaseEnvironment": { + "description": "A singleton resource representing the default workspace base environment configuration.\nThis resource contains the workspace base environments that are used as defaults\nfor serverless notebooks and jobs in the workspace, for both CPU and GPU compute types.", + "fields": { + "cpu_workspace_base_environment": { + "description": "The default workspace base environment for CPU compute.\nFormat: workspace-base-environments/{workspace_base_environment}", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "gpu_workspace_base_environment": { + "description": "The default workspace base environment for GPU compute.\nFormat: workspace-base-environments/{workspace_base_environment}", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "The resource name of this singleton resource.\nFormat: default-workspace-base-environment", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + } + } + }, + "environments.DeleteWorkspaceBaseEnvironmentRequest": {}, + "environments.EnvironmentSpec": { + "description": "Environment specification for a WorkspaceBaseEnvironment.\nContains the environment version and dependencies configuration.", + "fields": { + "dependencies": { + "description": "List of pip dependencies, as supported by the version of pip in this environment.\nEach dependency is a valid pip requirements file line per https://pip.pypa.io/en/stable/reference/requirements-file-format/.\nAllowed dependencies include a requirement specifier, an archive URL, a local project path (such as WSFS or UC Volumes in Databricks), or a VCS project URL.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "environment_version": { + "description": "Environment version used by the environment.\nEach version comes with a specific Python version and a set of Python packages.\nThe version is a string, consisting of an integer.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "environments.ErrorCode": { + "description": "Error codes returned by Databricks APIs to indicate specific failure conditions.", + "enum": [ + "UNKNOWN", + "INTERNAL_ERROR", + "TEMPORARILY_UNAVAILABLE", + "IO_ERROR", + "BAD_REQUEST", + "SERVICE_UNDER_MAINTENANCE", + "WORKSPACE_TEMPORARILY_UNAVAILABLE", + "DEADLINE_EXCEEDED", + "CANCELLED", + "RESOURCE_EXHAUSTED", + "ABORTED", + "NOT_FOUND", + "ALREADY_EXISTS", + "UNAUTHENTICATED", + "UNAVAILABLE", + "INVALID_PARAMETER_VALUE", + "ENDPOINT_NOT_FOUND", + "MALFORMED_REQUEST", + "INVALID_STATE", + "PERMISSION_DENIED", + "FEATURE_DISABLED", + "CUSTOMER_UNAUTHORIZED", + "REQUEST_LIMIT_EXCEEDED", + "RESOURCE_CONFLICT", + "UNPARSEABLE_HTTP_ERROR", + "NOT_IMPLEMENTED", + "DATA_LOSS", + "INVALID_STATE_TRANSITION", + "COULD_NOT_ACQUIRE_LOCK", + "RESOURCE_ALREADY_EXISTS", + "RESOURCE_DOES_NOT_EXIST", + "QUOTA_EXCEEDED", + "MAX_BLOCK_SIZE_EXCEEDED", + "MAX_READ_SIZE_EXCEEDED", + "PARTIAL_DELETE", + "MAX_LIST_SIZE_EXCEEDED", + "DRY_RUN_FAILED", + "RESOURCE_LIMIT_EXCEEDED", + "DIRECTORY_NOT_EMPTY", + "DIRECTORY_PROTECTED", + "MAX_NOTEBOOK_SIZE_EXCEEDED", + "MAX_CHILD_NODE_SIZE_EXCEEDED", + "SEARCH_QUERY_TOO_LONG", + "SEARCH_QUERY_TOO_SHORT", + "MANAGED_RESOURCE_GROUP_DOES_NOT_EXIST", + "PERMISSION_NOT_PROPAGATED", + "DEPLOYMENT_TIMEOUT", + "GIT_CONFLICT", + "GIT_UNKNOWN_REF", + "GIT_SENSITIVE_TOKEN_DETECTED", + "GIT_URL_NOT_ON_ALLOW_LIST", + "GIT_REMOTE_ERROR", + "PROJECTS_OPERATION_TIMEOUT", + "IPYNB_FILE_IN_REPO", + "INSECURE_PARTNER_RESPONSE", + "MALFORMED_PARTNER_RESPONSE", + "METASTORE_DOES_NOT_EXIST", + "DAC_DOES_NOT_EXIST", + "CATALOG_DOES_NOT_EXIST", + "SCHEMA_DOES_NOT_EXIST", + "TABLE_DOES_NOT_EXIST", + "SHARE_DOES_NOT_EXIST", + "RECIPIENT_DOES_NOT_EXIST", + "STORAGE_CREDENTIAL_DOES_NOT_EXIST", + "EXTERNAL_LOCATION_DOES_NOT_EXIST", + "PRINCIPAL_DOES_NOT_EXIST", + "PROVIDER_DOES_NOT_EXIST", + "METASTORE_ALREADY_EXISTS", + "DAC_ALREADY_EXISTS", + "CATALOG_ALREADY_EXISTS", + "SCHEMA_ALREADY_EXISTS", + "TABLE_ALREADY_EXISTS", + "SHARE_ALREADY_EXISTS", + "RECIPIENT_ALREADY_EXISTS", + "STORAGE_CREDENTIAL_ALREADY_EXISTS", + "EXTERNAL_LOCATION_ALREADY_EXISTS", + "PROVIDER_ALREADY_EXISTS", + "CATALOG_NOT_EMPTY", + "SCHEMA_NOT_EMPTY", + "METASTORE_NOT_EMPTY", + "PROVIDER_SHARE_NOT_ACCESSIBLE" + ], + "enum_launch_stages": { + "ABORTED": "GA", + "ALREADY_EXISTS": "GA", + "BAD_REQUEST": "GA", + "CANCELLED": "GA", + "CATALOG_ALREADY_EXISTS": "GA", + "CATALOG_DOES_NOT_EXIST": "GA", + "CATALOG_NOT_EMPTY": "GA", + "COULD_NOT_ACQUIRE_LOCK": "GA", + "CUSTOMER_UNAUTHORIZED": "GA", + "DAC_ALREADY_EXISTS": "GA", + "DAC_DOES_NOT_EXIST": "GA", + "DATA_LOSS": "GA", + "DEADLINE_EXCEEDED": "GA", + "DEPLOYMENT_TIMEOUT": "GA", + "DIRECTORY_NOT_EMPTY": "GA", + "DIRECTORY_PROTECTED": "GA", + "DRY_RUN_FAILED": "GA", + "ENDPOINT_NOT_FOUND": "GA", + "EXTERNAL_LOCATION_ALREADY_EXISTS": "GA", + "EXTERNAL_LOCATION_DOES_NOT_EXIST": "GA", + "FEATURE_DISABLED": "GA", + "GIT_CONFLICT": "GA", + "GIT_REMOTE_ERROR": "GA", + "GIT_SENSITIVE_TOKEN_DETECTED": "GA", + "GIT_UNKNOWN_REF": "GA", + "GIT_URL_NOT_ON_ALLOW_LIST": "GA", + "INSECURE_PARTNER_RESPONSE": "GA", + "INTERNAL_ERROR": "GA", + "INVALID_PARAMETER_VALUE": "GA", + "INVALID_STATE": "GA", + "INVALID_STATE_TRANSITION": "GA", + "IO_ERROR": "GA", + "IPYNB_FILE_IN_REPO": "GA", + "MALFORMED_PARTNER_RESPONSE": "GA", + "MALFORMED_REQUEST": "GA", + "MANAGED_RESOURCE_GROUP_DOES_NOT_EXIST": "GA", + "MAX_BLOCK_SIZE_EXCEEDED": "GA", + "MAX_CHILD_NODE_SIZE_EXCEEDED": "GA", + "MAX_LIST_SIZE_EXCEEDED": "GA", + "MAX_NOTEBOOK_SIZE_EXCEEDED": "GA", + "MAX_READ_SIZE_EXCEEDED": "GA", + "METASTORE_ALREADY_EXISTS": "GA", + "METASTORE_DOES_NOT_EXIST": "GA", + "METASTORE_NOT_EMPTY": "GA", + "NOT_FOUND": "GA", + "NOT_IMPLEMENTED": "GA", + "PARTIAL_DELETE": "GA", + "PERMISSION_DENIED": "GA", + "PERMISSION_NOT_PROPAGATED": "GA", + "PRINCIPAL_DOES_NOT_EXIST": "GA", + "PROJECTS_OPERATION_TIMEOUT": "GA", + "PROVIDER_ALREADY_EXISTS": "GA", + "PROVIDER_DOES_NOT_EXIST": "GA", + "PROVIDER_SHARE_NOT_ACCESSIBLE": "GA", + "QUOTA_EXCEEDED": "GA", + "RECIPIENT_ALREADY_EXISTS": "GA", + "RECIPIENT_DOES_NOT_EXIST": "GA", + "REQUEST_LIMIT_EXCEEDED": "GA", + "RESOURCE_ALREADY_EXISTS": "GA", + "RESOURCE_CONFLICT": "GA", + "RESOURCE_DOES_NOT_EXIST": "GA", + "RESOURCE_EXHAUSTED": "GA", + "RESOURCE_LIMIT_EXCEEDED": "GA", + "SCHEMA_ALREADY_EXISTS": "GA", + "SCHEMA_DOES_NOT_EXIST": "GA", + "SCHEMA_NOT_EMPTY": "GA", + "SEARCH_QUERY_TOO_LONG": "GA", + "SEARCH_QUERY_TOO_SHORT": "GA", + "SERVICE_UNDER_MAINTENANCE": "GA", + "SHARE_ALREADY_EXISTS": "GA", + "SHARE_DOES_NOT_EXIST": "GA", + "STORAGE_CREDENTIAL_ALREADY_EXISTS": "GA", + "STORAGE_CREDENTIAL_DOES_NOT_EXIST": "GA", + "TABLE_ALREADY_EXISTS": "GA", + "TABLE_DOES_NOT_EXIST": "GA", + "TEMPORARILY_UNAVAILABLE": "GA", + "UNAUTHENTICATED": "GA", + "UNAVAILABLE": "GA", + "UNKNOWN": "GA", + "UNPARSEABLE_HTTP_ERROR": "GA", + "WORKSPACE_TEMPORARILY_UNAVAILABLE": "GA" + } + }, + "environments.GetDefaultWorkspaceBaseEnvironmentRequest": {}, + "environments.GetOperationRequest": {}, + "environments.GetWorkspaceBaseEnvironmentRequest": {}, + "environments.ListWorkspaceBaseEnvironmentsRequest": { + "fields": { + "page_size": { + "description": "The maximum number of environments to return per page.\nDefault is 1000.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Page token for pagination. Received from a previous ListWorkspaceBaseEnvironments call.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "environments.ListWorkspaceBaseEnvironmentsResponse": { + "description": "Response message for ListWorkspaceBaseEnvironments.", + "fields": { + "next_page_token": { + "description": "Token to retrieve the next page of results.\nEmpty if there are no more results.", + "launch_stage": "GA" + }, + "workspace_base_environments": { + "description": "The list of workspace base environments.", + "launch_stage": "GA" + } + } + }, + "environments.Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "fields": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "launch_stage": "GA" + }, + "error": { + "description": "The error result of the operation in case of failure or cancellation.", + "ref": "environments.DatabricksServiceExceptionWithDetailsProto", + "launch_stage": "GA" + }, + "metadata": { + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata.", + "launch_stage": "GA" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should be a resource name ending with `operations/{unique_id}`.", + "launch_stage": "GA" + }, + "response": { + "description": "The normal, successful response of the operation.", + "launch_stage": "GA" + } + } + }, + "environments.RefreshWorkspaceBaseEnvironmentRequest": { + "description": "Request message for RefreshWorkspaceBaseEnvironments." + }, + "environments.UpdateDefaultWorkspaceBaseEnvironmentRequest": { + "fields": { + "default_workspace_base_environment": { + "description": "Required. The default workspace base environment configuration to update.", + "ref": "environments.DefaultWorkspaceBaseEnvironment", + "launch_stage": "GA" + }, + "update_mask": { + "description": "Field mask specifying which fields to update. Use comma as the separator for multiple fields (no space).\nThe special value '*' indicates that all fields should be updated (full replacement).\nValid field paths: cpu_workspace_base_environment, gpu_workspace_base_environment\n\nTo unset one or both defaults, include the field path(s) in the mask and omit them from the request body.\nTo unset both, you must list both paths explicitly — the wildcard '*' cannot be used to unset fields.", + "launch_stage": "GA" + } + } + }, + "environments.UpdateWorkspaceBaseEnvironmentRequest": { + "fields": { + "workspace_base_environment": { + "description": "Required. The workspace base environment with updated fields.\nThe name field is used to identify the environment to update.", + "ref": "environments.WorkspaceBaseEnvironment", + "launch_stage": "GA" + } + } + }, + "environments.WorkspaceBaseEnvironment": { + "description": "A WorkspaceBaseEnvironment defines a workspace-level environment configuration\nconsisting of an environment version and a list of dependencies.", + "fields": { + "base_environment_type": { + "description": "The type of base environment (CPU or GPU).", + "ref": "environments.BaseEnvironmentType", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "create_time": { + "description": "Timestamp when the environment was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "creator_user_id": { + "description": "User ID of the creator.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "display_name": { + "description": "Human-readable display name for the workspace base environment.", + "launch_stage": "GA" + }, + "filepath": { + "description": "The WSFS or UC Volumes path to the environment YAML file.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "is_default": { + "description": "Whether this is the default environment for the workspace.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_updated_user_id": { + "description": "User ID of the last user who updated the environment.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "message": { + "description": "Status message providing additional details about the environment status.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "The resource name of the workspace base environment.\nFormat: workspace-base-environments/{workspace-base-environment}", + "launch_stage": "GA" + }, + "spec": { + "description": "The environment specification containing version and dependencies.", + "ref": "environments.EnvironmentSpec", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "status": { + "description": "The status of the materialized workspace base environment.", + "ref": "environments.WorkspaceBaseEnvironmentCacheStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "Timestamp when the environment was last updated.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "environments.WorkspaceBaseEnvironmentCacheStatus": { + "description": "Status of the environment materialization.", + "enum": [ + "PENDING", + "CREATED", + "FAILED", + "EXPIRED", + "INVALID", + "REFRESHING" + ], + "enum_launch_stages": { + "CREATED": "GA", + "EXPIRED": "GA", + "FAILED": "GA", + "INVALID": "GA", + "PENDING": "GA", + "REFRESHING": "GA" + } + }, + "environments.WorkspaceBaseEnvironmentOperationMetadata": { + "description": "Metadata for the WorkspaceBaseEnvironment long-running operations.\nThis message tracks the progress of the workspace base environment long-running process." + }, + "files.AddBlock": { + "fields": { + "data": { + "description": "The base64-encoded data to append to the stream. This has a limit of 1 MB.", + "launch_stage": "GA" + }, + "handle": { + "description": "The handle on an open stream.", + "launch_stage": "GA" + } + } + }, + "files.AddBlockResponse": {}, + "files.Close": { + "fields": { + "handle": { + "description": "The handle on an open stream.", + "launch_stage": "GA" + } + } + }, + "files.CloseResponse": {}, + "files.Create": { + "fields": { + "overwrite": { + "description": "The flag that specifies whether to overwrite existing file/files.", + "launch_stage": "GA" + }, + "path": { + "description": "The path of the new file. The path should be the absolute DBFS path.", + "launch_stage": "GA" + } + } + }, + "files.CreateDirectoryRequest": {}, + "files.CreateResponse": { + "fields": { + "handle": { + "description": "Handle which should subsequently be passed into the AddBlock and Close calls when writing to a file through a stream.", + "launch_stage": "GA" + } + } + }, + "files.Delete": { + "fields": { + "path": { + "description": "The path of the file or directory to delete. The path should be the absolute DBFS path.", + "launch_stage": "GA" + }, + "recursive": { + "description": "Whether or not to recursively delete the directory's contents. Deleting empty directories can be done without providing the recursive flag.", + "launch_stage": "GA" + } + } + }, + "files.DeleteDirectoryRequest": {}, + "files.DeleteFileRequest": {}, + "files.DeleteResponse": {}, + "files.DirectoryEntry": { + "fields": { + "file_size": { + "description": "The length of the file in bytes. This field is omitted for directories.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "is_directory": { + "description": "True if the path is a directory.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "last_modified": { + "description": "Last modification time of given file in milliseconds since unix epoch.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "The name of the file or directory. This is the last component of the path.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "path": { + "description": "The absolute path of the file or directory.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "files.DownloadRequest": {}, + "files.DownloadResponse": { + "fields": { + "contents": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "files.FileInfo": { + "fields": { + "file_size": { + "description": "The length of the file in bytes. Set to 0 for directories.", + "launch_stage": "GA" + }, + "is_dir": { + "description": "True if the path is a directory.", + "launch_stage": "GA" + }, + "modification_time": { + "description": "Last modification time of given file in milliseconds since epoch.", + "launch_stage": "GA" + }, + "path": { + "description": "The absolute path of the file or directory.", + "launch_stage": "GA" + } + } + }, + "files.GetDirectoryMetadataRequest": {}, + "files.GetMetadataRequest": {}, + "files.GetMetadataResponse": {}, + "files.GetStatusRequest": { + "fields": { + "path": { + "description": "The path of the file or directory. The path should be the absolute DBFS path.", + "launch_stage": "GA" + } + } + }, + "files.ListDbfsRequest": { + "fields": { + "path": { + "description": "The path of the file or directory. The path should be the absolute DBFS path.", + "launch_stage": "GA" + } + } + }, + "files.ListDirectoryContentsRequest": { + "fields": { + "page_size": { + "description": "The maximum number of directory entries to return. The response may contain fewer\nentries. If the response contains a `next_page_token`, there may be more entries,\neven if fewer than `page_size` entries are in the response.\n\nWe recommend not to set this value unless you are intentionally listing less than\nthe complete directory contents.\n\nIf unspecified, at most 1000 directory entries will be returned.\nThe maximum value is 1000. Values above 1000 will be coerced to 1000.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "page_token": { + "description": "An opaque page token which was the `next_page_token` in the response of the previous\nrequest to list the contents of this directory. Provide this token to retrieve the\nnext page of directory entries.\nWhen providing a `page_token`, all other parameters provided to the request must match\nthe previous request.\nTo list all of the entries in a directory, it is necessary to continue requesting\npages of entries until the response contains no `next_page_token`. Note that the\nnumber of entries returned must not be used to determine when the listing is complete.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "files.ListDirectoryResponse": { + "fields": { + "contents": { + "description": "Array of DirectoryEntry.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "next_page_token": { + "description": "A token, which can be sent as `page_token` to retrieve the next page.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "files.ListStatusResponse": { + "fields": { + "files": { + "description": "A list of FileInfo's that describe contents of directory or file. See example above.", + "launch_stage": "GA" + } + } + }, + "files.MkDirs": { + "fields": { + "path": { + "description": "The path of the new directory. The path should be the absolute DBFS path.", + "launch_stage": "GA" + } + } + }, + "files.MkDirsResponse": {}, + "files.Move": { + "fields": { + "destination_path": { + "description": "The destination path of the file or directory. The path should be the absolute DBFS path.", + "launch_stage": "GA" + }, + "source_path": { + "description": "The source path of the file or directory. The path should be the absolute DBFS path.", + "launch_stage": "GA" + } + } + }, + "files.MoveResponse": {}, + "files.Put": { + "fields": { + "contents": { + "description": "This parameter might be absent, and instead a posted file will be used.", + "launch_stage": "GA" + }, + "overwrite": { + "description": "The flag that specifies whether to overwrite existing file/files.", + "launch_stage": "GA" + }, + "path": { + "description": "The path of the new file. The path should be the absolute DBFS path.", + "launch_stage": "GA" + } + } + }, + "files.PutResponse": {}, + "files.ReadDbfsRequest": { + "fields": { + "length": { + "description": "The number of bytes to read starting from the offset. This has a limit of 1 MB, and a default\nvalue of 0.5 MB.", + "launch_stage": "GA" + }, + "offset": { + "description": "The offset to read from in bytes.", + "launch_stage": "GA" + }, + "path": { + "description": "The path of the file to read. The path should be the absolute DBFS path.", + "launch_stage": "GA" + } + } + }, + "files.ReadResponse": { + "fields": { + "bytes_read": { + "description": "The number of bytes read (could be less than ``length`` if we hit end of file). This refers to\nnumber of bytes read in unencoded version (response data is base64-encoded).", + "launch_stage": "GA" + }, + "data": { + "description": "The base64-encoded contents of the file read.", + "launch_stage": "GA" + } + } + }, + "files.UploadRequest": { + "fields": { + "contents": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "overwrite": { + "description": "If true or unspecified, an existing file will be overwritten. If false, an error will be returned if the path points to an existing file.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.AccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "iam.PermissionLevel", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "iam.AccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "iam.AccountGroup": { + "fields": { + "account_id": { + "description": "Databricks account ID", + "launch_stage": "GA" + }, + "displayName": { + "description": "String that represents a human-readable group name", + "launch_stage": "GA" + }, + "externalId": { + "description": "external_id should be unique for identifying groups", + "launch_stage": "GA" + }, + "id": { + "description": "Databricks group ID", + "launch_stage": "GA" + }, + "members": { + "launch_stage": "GA" + }, + "meta": { + "description": "Container for the group identifier. Workspace local versus account.", + "ref": "iam.ResourceMeta", + "launch_stage": "PRIVATE_PREVIEW" + }, + "roles": { + "description": "Indicates if the group has the admin role.", + "launch_stage": "GA" + } + } + }, + "iam.AccountServicePrincipal": { + "fields": { + "account_id": { + "description": "Databricks account ID", + "launch_stage": "GA" + }, + "active": { + "description": "If this user is active", + "launch_stage": "GA" + }, + "applicationId": { + "description": "UUID relating to the service principal", + "launch_stage": "GA" + }, + "displayName": { + "description": "String that represents a concatenation of given and family names.", + "launch_stage": "GA" + }, + "externalId": { + "launch_stage": "GA" + }, + "id": { + "description": "Databricks service principal ID.", + "launch_stage": "GA" + }, + "roles": { + "description": "Indicates if the group has the admin role.", + "launch_stage": "GA" + } + } + }, + "iam.AccountUser": { + "fields": { + "account_id": { + "description": "Databricks account ID", + "launch_stage": "GA" + }, + "active": { + "description": "If this user is active", + "launch_stage": "GA" + }, + "displayName": { + "description": "String that represents a concatenation of given and family names. For example `John Smith`.", + "launch_stage": "GA" + }, + "emails": { + "description": "All the emails associated with the Databricks user. This attribute cannot be updated through the SCIM PATCH or PUT APIs; any supplied change is ignored.", + "launch_stage": "GA" + }, + "externalId": { + "description": "External ID is not currently supported. It is reserved for future use.", + "launch_stage": "GA" + }, + "id": { + "description": "Databricks user ID.", + "launch_stage": "GA" + }, + "name": { + "ref": "iam.Name", + "launch_stage": "GA" + }, + "roles": { + "description": "Indicates if the group has the admin role.", + "launch_stage": "GA" + }, + "userName": { + "description": "Email address of the Databricks user. This attribute cannot be updated through the SCIM PATCH or PUT APIs; any supplied change is ignored.", + "launch_stage": "GA" + } + } + }, + "iam.Actor": { + "description": "represents an identity trying to access a resource - user or a service principal\ngroup can be a principal of a permission set assignment but an actor is always a user or a service principal", + "fields": { + "actor_id": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "iam.AutoscopeState": { + "description": "State of inferred scope collection (autoscope) for an external PAT.\nMirrored in databricks.identity.AutoscopeState in common/principal-context/api/proto/tokendetails.proto.\nToken store and token management proto can depend on this.\nPrincipal context proto should NOT depend on this proto definitions because too many services depend on the principal context proto.", + "enum": [ + "AUTOSCOPE_STATE_DISABLED", + "AUTOSCOPE_STATE_RUNNING", + "AUTOSCOPE_STATE_COMPLETED", + "AUTOSCOPE_STATE_BACKFILLED", + "AUTOSCOPE_STATE_USER_SELECTED", + "AUTOSCOPE_STATE_API_NOT_COVERED" + ], + "enum_launch_stages": { + "AUTOSCOPE_STATE_API_NOT_COVERED": "PRIVATE_PREVIEW", + "AUTOSCOPE_STATE_BACKFILLED": "PRIVATE_PREVIEW", + "AUTOSCOPE_STATE_COMPLETED": "PRIVATE_PREVIEW", + "AUTOSCOPE_STATE_DISABLED": "PRIVATE_PREVIEW", + "AUTOSCOPE_STATE_RUNNING": "PRIVATE_PREVIEW", + "AUTOSCOPE_STATE_USER_SELECTED": "PRIVATE_PREVIEW" + } + }, + "iam.CheckPolicyRequest": { + "fields": { + "actor": { + "ref": "iam.Actor", + "launch_stage": "PRIVATE_PREVIEW" + }, + "authz_identity": { + "ref": "iam.RequestAuthzIdentity", + "launch_stage": "PRIVATE_PREVIEW" + }, + "consistency_token": { + "ref": "iam.ConsistencyToken", + "launch_stage": "PRIVATE_PREVIEW" + }, + "permission": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "resource": { + "description": "Ex: (servicePrincipal/use, accounts/\u003caccount-id\u003e/servicePrincipals/\u003csp-id\u003e)\nEx: (servicePrincipal.ruleSet/update, accounts/\u003caccount-id\u003e/servicePrincipals/\u003csp-id\u003e/ruleSets/default)", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "resource_info": { + "ref": "iam.ResourceInfo", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "iam.CheckPolicyResponse": { + "fields": { + "consistency_token": { + "ref": "iam.ConsistencyToken", + "launch_stage": "PRIVATE_PREVIEW" + }, + "is_permitted": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "iam.ComplexValue": { + "fields": { + "$ref": { + "launch_stage": "GA" + }, + "display": { + "launch_stage": "GA" + }, + "primary": { + "launch_stage": "GA" + }, + "type": { + "launch_stage": "GA" + }, + "value": { + "launch_stage": "GA" + } + } + }, + "iam.ConsistencyToken": { + "fields": { + "value": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "iam.CreateAccountGroupRequest": { + "fields": { + "displayName": { + "description": "String that represents a human-readable group name", + "launch_stage": "GA" + }, + "externalId": { + "launch_stage": "GA" + }, + "id": { + "description": "Databricks group ID", + "launch_stage": "GA" + }, + "members": { + "launch_stage": "GA" + }, + "meta": { + "description": "Container for the group identifier. Workspace local versus account.", + "ref": "iam.ResourceMeta", + "launch_stage": "PRIVATE_PREVIEW" + }, + "roles": { + "description": "Indicates if the group has the admin role.", + "launch_stage": "GA" + } + } + }, + "iam.CreateAccountServicePrincipalRequest": { + "fields": { + "active": { + "description": "If this user is active", + "launch_stage": "GA" + }, + "applicationId": { + "description": "UUID relating to the service principal", + "launch_stage": "GA" + }, + "displayName": { + "description": "String that represents a concatenation of given and family names.", + "launch_stage": "GA" + }, + "externalId": { + "launch_stage": "GA" + }, + "id": { + "description": "Databricks service principal ID.", + "launch_stage": "GA" + }, + "roles": { + "description": "Indicates if the group has the admin role.", + "launch_stage": "GA" + } + } + }, + "iam.CreateAccountUserRequest": { + "fields": { + "active": { + "description": "If this user is active", + "launch_stage": "GA" + }, + "displayName": { + "description": "String that represents a concatenation of given and family names. For example `John Smith`.", + "launch_stage": "GA" + }, + "emails": { + "description": "All the emails associated with the Databricks user.", + "launch_stage": "GA" + }, + "externalId": { + "description": "External ID is not currently supported. It is reserved for future use.", + "launch_stage": "GA" + }, + "id": { + "description": "Databricks user ID.", + "launch_stage": "GA" + }, + "name": { + "ref": "iam.Name", + "launch_stage": "GA" + }, + "roles": { + "description": "Indicates if the group has the admin role.", + "launch_stage": "GA" + }, + "userName": { + "description": "Email address of the Databricks user.", + "launch_stage": "GA" + } + } + }, + "iam.CreateGroupRequest": { + "fields": { + "displayName": { + "description": "String that represents a human-readable group name", + "launch_stage": "PUBLIC_PREVIEW" + }, + "entitlements": { + "description": "Entitlements assigned to the group. See [assigning entitlements](https://docs.databricks.com/administration-guide/users-groups/index.html#assigning-entitlements) for a full list of supported values.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "externalId": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "groups": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "id": { + "description": "Databricks group ID", + "launch_stage": "PUBLIC_PREVIEW" + }, + "members": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "meta": { + "description": "Container for the group identifier. Workspace local versus account.", + "ref": "iam.ResourceMeta", + "launch_stage": "PRIVATE_PREVIEW" + }, + "roles": { + "description": "Corresponds to AWS instance profile/arn role.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "The schema of the group.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.CreateServicePrincipalRequest": { + "fields": { + "active": { + "description": "If this user is active", + "launch_stage": "PUBLIC_PREVIEW" + }, + "applicationId": { + "description": "UUID relating to the service principal", + "launch_stage": "PUBLIC_PREVIEW" + }, + "displayName": { + "description": "String that represents a concatenation of given and family names.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "entitlements": { + "description": "Entitlements assigned to the service principal. See [assigning entitlements](https://docs.databricks.com/administration-guide/users-groups/index.html#assigning-entitlements) for a full list of supported values.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "externalId": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "groups": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "id": { + "description": "Databricks service principal ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "roles": { + "description": "Corresponds to AWS instance profile/arn role.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "The schema of the List response.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.CreateUserRequest": { + "fields": { + "active": { + "description": "If this user is active", + "launch_stage": "PUBLIC_PREVIEW" + }, + "displayName": { + "description": "String that represents a concatenation of given and family names. For example `John Smith`. This field cannot be updated through the Workspace SCIM APIs when [identity federation is enabled](https://docs.databricks.com/administration-guide/users-groups/best-practices.html#enable-identity-federation). Use Account SCIM APIs to update `displayName`.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "emails": { + "description": "All the emails associated with the Databricks user.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "entitlements": { + "description": "Entitlements assigned to the user. See [assigning entitlements](https://docs.databricks.com/administration-guide/users-groups/index.html#assigning-entitlements) for a full list of supported values.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "externalId": { + "description": "External ID is not currently supported. It is reserved for future use.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "groups": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "id": { + "description": "Databricks user ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "ref": "iam.Name", + "launch_stage": "PUBLIC_PREVIEW" + }, + "roles": { + "description": "Corresponds to AWS instance profile/arn role.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "The schema of the user.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "userName": { + "description": "Email address of the Databricks user.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.DeleteAccountGroupRequest": {}, + "iam.DeleteAccountServicePrincipalRequest": {}, + "iam.DeleteAccountUserRequest": {}, + "iam.DeleteGroupRequest": {}, + "iam.DeleteServicePrincipalRequest": {}, + "iam.DeleteUserRequest": {}, + "iam.DeleteWorkspaceAssignmentRequest": {}, + "iam.DeleteWorkspacePermissionAssignmentResponse": {}, + "iam.GetAccountGroupRequest": {}, + "iam.GetAccountServicePrincipalRequest": {}, + "iam.GetAccountUserRequest": { + "fields": { + "attributes": { + "description": "Comma-separated list of attributes to return in response.", + "launch_stage": "GA" + }, + "count": { + "description": "Desired number of results per page. Default is 10000.", + "launch_stage": "GA" + }, + "excludedAttributes": { + "description": "Comma-separated list of attributes to exclude in response.", + "launch_stage": "GA" + }, + "filter": { + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "launch_stage": "GA" + }, + "sortBy": { + "description": "Attribute to sort the results. Multi-part paths are supported. For example, `userName`, `name.givenName`, and `emails`.", + "launch_stage": "GA" + }, + "sortOrder": { + "description": "The order to sort the results.", + "ref": "iam.GetSortOrder", + "launch_stage": "GA" + }, + "startIndex": { + "description": "Specifies the index of the first result. First item is number 1.", + "launch_stage": "GA" + } + } + }, + "iam.GetAssignableRolesForResourceRequest": { + "fields": { + "resource": { + "description": "The resource name for which assignable roles will be listed.\n\nExamples | Summary\n:--- | :---\n`resource=accounts/\u003cACCOUNT_ID\u003e` | A resource name for the account.\n`resource=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e` | A resource name for the group.\n`resource=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSP_ID\u003e` | A resource name for the service principal.\n`resource=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e` | A resource name for the tag policy.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.GetAssignableRolesForResourceResponse": { + "fields": { + "roles": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.GetGroupRequest": {}, + "iam.GetPasswordPermissionLevelsRequest": {}, + "iam.GetPasswordPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.GetPasswordPermissionsRequest": {}, + "iam.GetPermissionLevelsRequest": {}, + "iam.GetPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "GA" + } + } + }, + "iam.GetPermissionRequest": {}, + "iam.GetRuleSetRequest": { + "fields": { + "etag": { + "description": "Etag used for versioning. The response is at least as fresh as the eTag provided. Etag is used for optimistic\nconcurrency control as a way to help prevent simultaneous updates of a rule set from overwriting each other. It is\nstrongly suggested that systems make use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set\nupdates in order to avoid race conditions that is get an etag from a GET rule set request, and pass it with the\nPUT update request to identify the rule set version you are updating.\n\nExamples | Summary\n:--- | :---\n`etag=` | An empty etag can only be used in GET to indicate no freshness requirements.\n`etag=RENUAAABhSweA4NvVmmUYdiU717H3Tgy0UJdor3gE4a+mq/oj9NjAf8ZsQ==` | An etag encoded a specific version of the rule set to get or to be updated.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "The ruleset name associated with the request.\n\nExamples | Summary\n:--- | :---\n`name=accounts/\u003cACCOUNT_ID\u003e/ruleSets/default` | A name for a rule set on the account.\n`name=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e/ruleSets/default` | A name for a rule set on the group.\n`name=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSERVICE_PRINCIPAL_APPLICATION_ID\u003e/ruleSets/default` | A name for a rule set on the service principal.\n`name=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e/ruleSets/default` | A name for a rule set on the tag policy.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.GetServicePrincipalRequest": {}, + "iam.GetSortOrder": { + "enum": [ + "ascending", + "descending" + ], + "enum_launch_stages": { + "ascending": "GA", + "descending": "GA" + } + }, + "iam.GetUserRequest": { + "fields": { + "attributes": { + "description": "Comma-separated list of attributes to return in response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "count": { + "description": "Desired number of results per page.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "excludedAttributes": { + "description": "Comma-separated list of attributes to exclude in response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "filter": { + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "sortBy": { + "description": "Attribute to sort the results. Multi-part paths are supported. For example, `userName`, `name.givenName`, and `emails`.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "sortOrder": { + "description": "The order to sort the results.", + "ref": "iam.GetSortOrder", + "launch_stage": "PUBLIC_PREVIEW" + }, + "startIndex": { + "description": "Specifies the index of the first result. First item is number 1.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.GetWorkspaceAssignmentRequest": {}, + "iam.GrantRule": { + "fields": { + "principals": { + "description": "Principals this grant rule applies to.\nA principal can be a user (for end users), a service principal (for applications and\ncompute workloads), or an account group. Each principal has its own identifier format:\n* users/\u003cUSERNAME\u003e\n* groups/\u003cGROUP_NAME\u003e\n* servicePrincipals/\u003cSERVICE_PRINCIPAL_APPLICATION_ID\u003e", + "launch_stage": "PUBLIC_PREVIEW" + }, + "role": { + "description": "Role that is assigned to the list of principals.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.Group": { + "fields": { + "displayName": { + "description": "String that represents a human-readable group name", + "launch_stage": "PUBLIC_PREVIEW" + }, + "entitlements": { + "description": "Entitlements assigned to the group. See [assigning entitlements](https://docs.databricks.com/administration-guide/users-groups/index.html#assigning-entitlements) for a full list of supported values.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "externalId": { + "description": "external_id should be unique for identifying groups", + "launch_stage": "PUBLIC_PREVIEW" + }, + "groups": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "id": { + "description": "Databricks group ID", + "launch_stage": "PUBLIC_PREVIEW" + }, + "members": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "meta": { + "description": "Container for the group identifier. Workspace local versus account.", + "ref": "iam.ResourceMeta", + "launch_stage": "PRIVATE_PREVIEW" + }, + "roles": { + "description": "Corresponds to AWS instance profile/arn role.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "The schema of the group.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.GroupSchema": { + "enum": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "enum_launch_stages": { + "urn:ietf:params:scim:schemas:core:2.0:Group": "PUBLIC_PREVIEW" + } + }, + "iam.ListAccountGroupsRequest": { + "fields": { + "attributes": { + "description": "Comma-separated list of attributes to return in response.", + "launch_stage": "GA" + }, + "count": { + "description": "Desired number of results per page. Default is 10000.", + "launch_stage": "GA" + }, + "excludedAttributes": { + "description": "Comma-separated list of attributes to exclude in response.", + "launch_stage": "GA" + }, + "filter": { + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "launch_stage": "GA" + }, + "sortBy": { + "description": "Attribute to sort the results.", + "launch_stage": "GA" + }, + "sortOrder": { + "description": "The order to sort the results.", + "ref": "iam.ListSortOrder", + "launch_stage": "GA" + }, + "startIndex": { + "description": "Specifies the index of the first result. First item is number 1.", + "launch_stage": "GA" + } + } + }, + "iam.ListAccountGroupsResponse": { + "fields": { + "Resources": { + "description": "User objects returned in the response.", + "launch_stage": "GA" + }, + "itemsPerPage": { + "description": "Total results returned in the response.", + "launch_stage": "GA" + }, + "startIndex": { + "description": "Starting index of all the results that matched the request filters. First item is number 1.", + "launch_stage": "GA" + }, + "totalResults": { + "description": "Total results that match the request filters.", + "launch_stage": "GA" + } + } + }, + "iam.ListAccountServicePrincipalsRequest": { + "fields": { + "attributes": { + "description": "Comma-separated list of attributes to return in response.", + "launch_stage": "GA" + }, + "count": { + "description": "Desired number of results per page. Default is 10000.", + "launch_stage": "GA" + }, + "excludedAttributes": { + "description": "Comma-separated list of attributes to exclude in response.", + "launch_stage": "GA" + }, + "filter": { + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "launch_stage": "GA" + }, + "sortBy": { + "description": "Attribute to sort the results.", + "launch_stage": "GA" + }, + "sortOrder": { + "description": "The order to sort the results.", + "ref": "iam.ListSortOrder", + "launch_stage": "GA" + }, + "startIndex": { + "description": "Specifies the index of the first result. First item is number 1.", + "launch_stage": "GA" + } + } + }, + "iam.ListAccountServicePrincipalsResponse": { + "fields": { + "Resources": { + "description": "User objects returned in the response.", + "launch_stage": "GA" + }, + "itemsPerPage": { + "description": "Total results returned in the response.", + "launch_stage": "GA" + }, + "startIndex": { + "description": "Starting index of all the results that matched the request filters. First item is number 1.", + "launch_stage": "GA" + }, + "totalResults": { + "description": "Total results that match the request filters.", + "launch_stage": "GA" + } + } + }, + "iam.ListAccountUsersRequest": { + "fields": { + "attributes": { + "description": "Comma-separated list of attributes to return in response.", + "launch_stage": "GA" + }, + "count": { + "description": "Desired number of results per page. Default is 10000.", + "launch_stage": "GA" + }, + "excludedAttributes": { + "description": "Comma-separated list of attributes to exclude in response.", + "launch_stage": "GA" + }, + "filter": { + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "launch_stage": "GA" + }, + "sortBy": { + "description": "Attribute to sort the results. Multi-part paths are supported. For example, `userName`, `name.givenName`, and `emails`.", + "launch_stage": "GA" + }, + "sortOrder": { + "description": "The order to sort the results.", + "ref": "iam.ListSortOrder", + "launch_stage": "GA" + }, + "startIndex": { + "description": "Specifies the index of the first result. First item is number 1.", + "launch_stage": "GA" + } + } + }, + "iam.ListAccountUsersResponse": { + "fields": { + "Resources": { + "description": "User objects returned in the response.", + "launch_stage": "GA" + }, + "itemsPerPage": { + "description": "Total results returned in the response.", + "launch_stage": "GA" + }, + "startIndex": { + "description": "Starting index of all the results that matched the request filters. First item is number 1.", + "launch_stage": "GA" + }, + "totalResults": { + "description": "Total results that match the request filters.", + "launch_stage": "GA" + } + } + }, + "iam.ListGroupsRequest": { + "fields": { + "attributes": { + "description": "Comma-separated list of attributes to return in response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "count": { + "description": "Desired number of results per page.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "excludedAttributes": { + "description": "Comma-separated list of attributes to exclude in response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "filter": { + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "sortBy": { + "description": "Attribute to sort the results.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "sortOrder": { + "description": "The order to sort the results.", + "ref": "iam.ListSortOrder", + "launch_stage": "PUBLIC_PREVIEW" + }, + "startIndex": { + "description": "Specifies the index of the first result. First item is number 1.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.ListGroupsResponse": { + "fields": { + "Resources": { + "description": "User objects returned in the response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "itemsPerPage": { + "description": "Total results returned in the response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "The schema of the service principal.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "startIndex": { + "description": "Starting index of all the results that matched the request filters. First item is number 1.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "totalResults": { + "description": "Total results that match the request filters.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.ListResponseSchema": { + "enum": [ + "urn:ietf:params:scim:api:messages:2.0:ListResponse" + ], + "enum_launch_stages": { + "urn:ietf:params:scim:api:messages:2.0:ListResponse": "PUBLIC_PREVIEW" + } + }, + "iam.ListServicePrincipalResponse": { + "fields": { + "Resources": { + "description": "User objects returned in the response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "itemsPerPage": { + "description": "Total results returned in the response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "The schema of the List response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "startIndex": { + "description": "Starting index of all the results that matched the request filters. First item is number 1.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "totalResults": { + "description": "Total results that match the request filters.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.ListServicePrincipalsRequest": { + "fields": { + "attributes": { + "description": "Comma-separated list of attributes to return in response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "count": { + "description": "Desired number of results per page.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "excludedAttributes": { + "description": "Comma-separated list of attributes to exclude in response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "filter": { + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "sortBy": { + "description": "Attribute to sort the results.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "sortOrder": { + "description": "The order to sort the results.", + "ref": "iam.ListSortOrder", + "launch_stage": "PUBLIC_PREVIEW" + }, + "startIndex": { + "description": "Specifies the index of the first result. First item is number 1.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.ListSortOrder": { + "enum": [ + "ascending", + "descending" + ], + "enum_launch_stages": { + "ascending": "GA", + "descending": "GA" + } + }, + "iam.ListUsersRequest": { + "fields": { + "attributes": { + "description": "Comma-separated list of attributes to return in response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "count": { + "description": "Desired number of results per page.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "excludedAttributes": { + "description": "Comma-separated list of attributes to exclude in response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "filter": { + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "sortBy": { + "description": "Attribute to sort the results. Multi-part paths are supported. For example, `userName`, `name.givenName`, and `emails`.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "sortOrder": { + "description": "The order to sort the results.", + "ref": "iam.ListSortOrder", + "launch_stage": "PUBLIC_PREVIEW" + }, + "startIndex": { + "description": "Specifies the index of the first result. First item is number 1.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.ListUsersResponse": { + "fields": { + "Resources": { + "description": "User objects returned in the response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "itemsPerPage": { + "description": "Total results returned in the response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "The schema of the List response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "startIndex": { + "description": "Starting index of all the results that matched the request filters. First item is number 1.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "totalResults": { + "description": "Total results that match the request filters.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.ListWorkspaceAssignmentRequest": {}, + "iam.MeRequest": { + "fields": { + "attributes": { + "description": "Comma-separated list of attributes to return in response.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "excludedAttributes": { + "description": "Comma-separated list of attributes to exclude in response.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iam.MigratePermissionsRequest": { + "fields": { + "from_workspace_group_name": { + "description": "The name of the workspace group that permissions will be migrated from.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "size": { + "description": "The maximum number of permissions that will be migrated.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "to_account_group_name": { + "description": "The name of the account group that permissions will be migrated to.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "workspace_id": { + "description": "WorkspaceId of the associated workspace where the permission migration will occur.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "iam.MigratePermissionsResponse": { + "fields": { + "permissions_migrated": { + "description": "Number of permissions migrated.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "iam.Name": { + "fields": { + "familyName": { + "description": "Family name of the Databricks user.", + "launch_stage": "GA" + }, + "givenName": { + "description": "Given name of the Databricks user.", + "launch_stage": "GA" + } + } + }, + "iam.ObjectPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "launch_stage": "GA" + }, + "object_type": { + "launch_stage": "GA" + } + } + }, + "iam.PasswordAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "PUBLIC_PREVIEW" + }, + "permission_level": { + "description": "Permission level", + "ref": "iam.PasswordPermissionLevel", + "launch_stage": "PUBLIC_PREVIEW" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "PUBLIC_PREVIEW" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.PasswordAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "PUBLIC_PREVIEW" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.PasswordPermission": { + "fields": { + "inherited": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "inherited_from_object": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "permission_level": { + "description": "Permission level", + "ref": "iam.PasswordPermissionLevel", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.PasswordPermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_USE" + ], + "enum_launch_stages": { + "CAN_USE": "PUBLIC_PREVIEW" + } + }, + "iam.PasswordPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "object_id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "object_type": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.PasswordPermissionsDescription": { + "fields": { + "description": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "permission_level": { + "description": "Permission level", + "ref": "iam.PasswordPermissionLevel", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.PasswordPermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.Patch": { + "fields": { + "op": { + "description": "Type of patch operation.", + "ref": "iam.PatchOp", + "launch_stage": "GA" + }, + "path": { + "description": "Selection of patch operation", + "launch_stage": "GA" + }, + "value": { + "description": "Value to modify", + "launch_stage": "GA" + } + } + }, + "iam.PatchAccountGroupRequest": { + "fields": { + "Operations": { + "launch_stage": "GA" + }, + "schemas": { + "description": "The schema of the patch request. Must be [\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"].", + "launch_stage": "GA" + } + } + }, + "iam.PatchAccountServicePrincipalRequest": { + "fields": { + "Operations": { + "launch_stage": "GA" + }, + "schemas": { + "description": "The schema of the patch request. Must be [\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"].", + "launch_stage": "GA" + } + } + }, + "iam.PatchAccountUserRequest": { + "fields": { + "Operations": { + "launch_stage": "GA" + }, + "schemas": { + "description": "The schema of the patch request. Must be [\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"].", + "launch_stage": "GA" + } + } + }, + "iam.PatchGroupRequest": { + "fields": { + "Operations": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "The schema of the patch request. Must be [\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"].", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.PatchOp": { + "description": "Type of patch operation.", + "enum": [ + "add", + "remove", + "replace" + ], + "enum_launch_stages": { + "add": "GA", + "remove": "GA", + "replace": "GA" + } + }, + "iam.PatchSchema": { + "enum": [ + "urn:ietf:params:scim:api:messages:2.0:PatchOp" + ], + "enum_launch_stages": { + "urn:ietf:params:scim:api:messages:2.0:PatchOp": "GA" + } + }, + "iam.PatchServicePrincipalRequest": { + "fields": { + "Operations": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "The schema of the patch request. Must be [\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"].", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.PatchUserRequest": { + "fields": { + "Operations": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "The schema of the patch request. Must be [\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"].", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.Permission": { + "fields": { + "inherited": { + "launch_stage": "GA" + }, + "inherited_from_object": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "iam.PermissionLevel", + "launch_stage": "GA" + } + } + }, + "iam.PermissionAssignment": { + "description": "The output format for existing workspace PermissionAssignment records, which contains some info for\nuser consumption.", + "fields": { + "error": { + "description": "Error response associated with a workspace permission assignment, if any.", + "launch_stage": "GA" + }, + "permissions": { + "description": "The permissions level of the principal.", + "launch_stage": "GA" + }, + "principal": { + "description": "Information about the principal assigned to the workspace.", + "ref": "iam.PrincipalOutput", + "launch_stage": "GA" + } + } + }, + "iam.PermissionAssignments": { + "fields": { + "permission_assignments": { + "description": "Array of permissions assignments defined for a workspace.", + "launch_stage": "GA" + } + } + }, + "iam.PermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_MANAGE", + "CAN_RESTART", + "CAN_ATTACH_TO", + "IS_OWNER", + "CAN_MANAGE_RUN", + "CAN_VIEW", + "CAN_READ", + "CAN_RUN", + "CAN_EDIT", + "CAN_USE", + "CAN_MANAGE_STAGING_VERSIONS", + "CAN_MANAGE_PRODUCTION_VERSIONS", + "CAN_EDIT_METADATA", + "CAN_VIEW_METADATA", + "CAN_BIND", + "CAN_QUERY", + "CAN_MONITOR", + "CAN_CREATE", + "CAN_MONITOR_ONLY", + "CAN_CREATE_APP" + ], + "enum_launch_stages": { + "CAN_ATTACH_TO": "GA", + "CAN_BIND": "GA", + "CAN_CREATE": "GA", + "CAN_CREATE_APP": "PRIVATE_PREVIEW", + "CAN_EDIT": "GA", + "CAN_EDIT_METADATA": "GA", + "CAN_MANAGE": "GA", + "CAN_MANAGE_PRODUCTION_VERSIONS": "GA", + "CAN_MANAGE_RUN": "GA", + "CAN_MANAGE_STAGING_VERSIONS": "GA", + "CAN_MONITOR": "GA", + "CAN_MONITOR_ONLY": "PRIVATE_PREVIEW", + "CAN_QUERY": "GA", + "CAN_READ": "GA", + "CAN_RESTART": "GA", + "CAN_RUN": "GA", + "CAN_USE": "GA", + "CAN_VIEW": "GA", + "CAN_VIEW_METADATA": "GA", + "IS_OWNER": "GA" + } + }, + "iam.PermissionOutput": { + "fields": { + "description": { + "description": "The results of a permissions query.", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "iam.WorkspacePermission", + "launch_stage": "GA" + } + } + }, + "iam.PermissionsDescription": { + "fields": { + "description": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "iam.PermissionLevel", + "launch_stage": "GA" + } + } + }, + "iam.PrincipalOutput": { + "description": "Information about the principal assigned to the workspace.", + "fields": { + "display_name": { + "description": "The display name of the principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "The group name of the group. Present only if the principal is a group.", + "launch_stage": "GA" + }, + "principal_id": { + "description": "The unique, opaque id of the principal.", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "The name of the service principal. Present only if the principal is a service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "The username of the user. Present only if the principal is a user.", + "launch_stage": "GA" + } + } + }, + "iam.RequestAuthzIdentity": { + "description": "Defines the identity to be used for authZ of the request on the server side. See one pager for\nfor more information: http://go/acl/service-identity", + "enum": [ + "REQUEST_AUTHZ_IDENTITY_USER_CONTEXT", + "REQUEST_AUTHZ_IDENTITY_SERVICE_IDENTITY" + ], + "enum_launch_stages": { + "REQUEST_AUTHZ_IDENTITY_SERVICE_IDENTITY": "PRIVATE_PREVIEW", + "REQUEST_AUTHZ_IDENTITY_USER_CONTEXT": "PRIVATE_PREVIEW" + } + }, + "iam.ResourceInfo": { + "fields": { + "id": { + "description": "Id of the current resource.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "legacy_acl_path": { + "description": "The legacy acl path of the current resource.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "parent_resource_info": { + "description": "Parent resource info for the current resource. The parent may have another parent.", + "ref": "iam.ResourceInfo", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "iam.ResourceMeta": { + "fields": { + "resourceType": { + "description": "Identifier for group type. Can be local workspace group (`WorkspaceGroup`) or account group (`Group`).", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "iam.Role": { + "fields": { + "name": { + "description": "Role to assign to a principal or a list of principals on a resource.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.RuleSetResponse": { + "fields": { + "etag": { + "description": "Identifies the version of the rule set returned.\nEtag used for versioning. The response is at least as fresh as the eTag provided.\nEtag is used for optimistic concurrency control as a way to help prevent simultaneous\nupdates of a rule set from overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set updates in\norder to avoid race conditions that is get an etag from a GET rule set request, and pass it\nwith the PUT update request to identify the rule set version you are updating.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "grant_rules": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "Name of the rule set.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.RuleSetUpdateRequest": { + "fields": { + "etag": { + "description": "Identifies the version of the rule set returned.\nEtag used for versioning. The response is at least as fresh as the eTag provided.\nEtag is used for optimistic concurrency control as a way to help prevent simultaneous\nupdates of a rule set from overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set updates in\norder to avoid race conditions that is get an etag from a GET rule set request, and pass it\nwith the PUT update request to identify the rule set version you are updating.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "grant_rules": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "Name of the rule set.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.ServicePrincipal": { + "fields": { + "active": { + "description": "If this user is active", + "launch_stage": "PUBLIC_PREVIEW" + }, + "applicationId": { + "description": "UUID relating to the service principal", + "launch_stage": "PUBLIC_PREVIEW" + }, + "displayName": { + "description": "String that represents a concatenation of given and family names.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "entitlements": { + "description": "Entitlements assigned to the service principal. See [assigning entitlements](https://docs.databricks.com/administration-guide/users-groups/index.html#assigning-entitlements) for a full list of supported values.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "externalId": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "groups": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "id": { + "description": "Databricks service principal ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "roles": { + "description": "Corresponds to AWS instance profile/arn role.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "The schema of the List response.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.ServicePrincipalSchema": { + "enum": [ + "urn:ietf:params:scim:schemas:core:2.0:ServicePrincipal" + ], + "enum_launch_stages": { + "urn:ietf:params:scim:schemas:core:2.0:ServicePrincipal": "PUBLIC_PREVIEW" + } + }, + "iam.SetObjectPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "iam.UpdateAccountGroupRequest": { + "fields": { + "displayName": { + "description": "String that represents a human-readable group name", + "launch_stage": "GA" + }, + "externalId": { + "launch_stage": "GA" + }, + "members": { + "launch_stage": "GA" + }, + "meta": { + "description": "Container for the group identifier. Workspace local versus account.", + "ref": "iam.ResourceMeta", + "launch_stage": "PRIVATE_PREVIEW" + }, + "roles": { + "description": "Indicates if the group has the admin role.", + "launch_stage": "GA" + } + } + }, + "iam.UpdateAccountServicePrincipalRequest": { + "fields": { + "active": { + "description": "If this user is active", + "launch_stage": "GA" + }, + "applicationId": { + "description": "UUID relating to the service principal", + "launch_stage": "GA" + }, + "displayName": { + "description": "String that represents a concatenation of given and family names.", + "launch_stage": "GA" + }, + "externalId": { + "launch_stage": "GA" + }, + "roles": { + "description": "Indicates if the group has the admin role.", + "launch_stage": "GA" + } + } + }, + "iam.UpdateAccountUserRequest": { + "fields": { + "active": { + "description": "If this user is active", + "launch_stage": "GA" + }, + "displayName": { + "description": "String that represents a concatenation of given and family names. For example `John Smith`.", + "launch_stage": "GA" + }, + "emails": { + "description": "All the emails associated with the Databricks user. This attribute cannot be updated through the SCIM PATCH or PUT APIs; any supplied change is ignored.", + "launch_stage": "GA" + }, + "externalId": { + "description": "External ID is not currently supported. It is reserved for future use.", + "launch_stage": "GA" + }, + "name": { + "ref": "iam.Name", + "launch_stage": "GA" + }, + "roles": { + "description": "Indicates if the group has the admin role.", + "launch_stage": "GA" + }, + "userName": { + "description": "Email address of the Databricks user. This attribute cannot be updated through the SCIM PATCH or PUT APIs; any supplied change is ignored.", + "launch_stage": "GA" + } + } + }, + "iam.UpdateGroupRequest": { + "fields": { + "displayName": { + "description": "String that represents a human-readable group name", + "launch_stage": "PUBLIC_PREVIEW" + }, + "entitlements": { + "description": "Entitlements assigned to the group. See [assigning entitlements](https://docs.databricks.com/administration-guide/users-groups/index.html#assigning-entitlements) for a full list of supported values.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "externalId": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "groups": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "members": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "meta": { + "description": "Container for the group identifier. Workspace local versus account.", + "ref": "iam.ResourceMeta", + "launch_stage": "PRIVATE_PREVIEW" + }, + "roles": { + "description": "Corresponds to AWS instance profile/arn role.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "The schema of the group.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.UpdateObjectPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "iam.UpdateRuleSetRequest": { + "fields": { + "name": { + "description": "Name of the rule set.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "rule_set": { + "ref": "iam.RuleSetUpdateRequest", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.UpdateServicePrincipalRequest": { + "fields": { + "active": { + "description": "If this user is active", + "launch_stage": "PUBLIC_PREVIEW" + }, + "applicationId": { + "description": "UUID relating to the service principal", + "launch_stage": "PUBLIC_PREVIEW" + }, + "displayName": { + "description": "String that represents a concatenation of given and family names.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "entitlements": { + "description": "Entitlements assigned to the service principal. See [assigning entitlements](https://docs.databricks.com/administration-guide/users-groups/index.html#assigning-entitlements) for a full list of supported values.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "externalId": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "groups": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "roles": { + "description": "Corresponds to AWS instance profile/arn role.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "The schema of the List response.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.UpdateUserRequest": { + "fields": { + "active": { + "description": "If this user is active", + "launch_stage": "PUBLIC_PREVIEW" + }, + "displayName": { + "description": "String that represents a concatenation of given and family names. For example `John Smith`. This field cannot be updated through the Workspace SCIM APIs when [identity federation is enabled](https://docs.databricks.com/administration-guide/users-groups/best-practices.html#enable-identity-federation). Use Account SCIM APIs to update `displayName`.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "emails": { + "description": "All the emails associated with the Databricks user. This attribute cannot be updated through the SCIM PATCH or PUT APIs; any supplied change is ignored.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "entitlements": { + "description": "Entitlements assigned to the user. See [assigning entitlements](https://docs.databricks.com/administration-guide/users-groups/index.html#assigning-entitlements) for a full list of supported values.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "externalId": { + "description": "External ID is not currently supported. It is reserved for future use.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "groups": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "ref": "iam.Name", + "launch_stage": "PUBLIC_PREVIEW" + }, + "roles": { + "description": "Corresponds to AWS instance profile/arn role.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "The schema of the user.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "userName": { + "description": "Email address of the Databricks user. This attribute cannot be updated through the SCIM PATCH or PUT APIs; any supplied change is ignored.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.UpdateWorkspaceAssignments": { + "fields": { + "permissions": { + "description": "Array of permissions assignments to update on the workspace.\nValid values are \"USER\" and \"ADMIN\" (case-sensitive).\nIf both \"USER\" and \"ADMIN\" are provided, \"ADMIN\" takes precedence.\nOther values will be ignored.\nNote that excluding this field, or providing unsupported values, will have the same effect as providing an empty list, which will result in the deletion of all permissions for the principal.", + "launch_stage": "GA" + } + } + }, + "iam.User": { + "fields": { + "active": { + "description": "If this user is active", + "launch_stage": "PUBLIC_PREVIEW" + }, + "displayName": { + "description": "String that represents a concatenation of given and family names. For example `John Smith`. This field cannot be updated through the Workspace SCIM APIs when [identity federation is enabled](https://docs.databricks.com/administration-guide/users-groups/best-practices.html#enable-identity-federation). Use Account SCIM APIs to update `displayName`.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "emails": { + "description": "All the emails associated with the Databricks user. This attribute cannot be updated through the SCIM PATCH or PUT APIs; any supplied change is ignored.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "entitlements": { + "description": "Entitlements assigned to the user. See [assigning entitlements](https://docs.databricks.com/administration-guide/users-groups/index.html#assigning-entitlements) for a full list of supported values.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "externalId": { + "description": "External ID is not currently supported. It is reserved for future use.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "groups": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "id": { + "description": "Databricks user ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "ref": "iam.Name", + "launch_stage": "PUBLIC_PREVIEW" + }, + "roles": { + "description": "Corresponds to AWS instance profile/arn role.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schemas": { + "description": "The schema of the user.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "userName": { + "description": "Email address of the Databricks user. This attribute cannot be updated through the SCIM PATCH or PUT APIs; any supplied change is ignored.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "iam.UserSchema": { + "enum": [ + "urn:ietf:params:scim:schemas:core:2.0:User", + "urn:ietf:params:scim:schemas:extension:workspace:2.0:User" + ], + "enum_launch_stages": { + "urn:ietf:params:scim:schemas:core:2.0:User": "PUBLIC_PREVIEW", + "urn:ietf:params:scim:schemas:extension:workspace:2.0:User": "PUBLIC_PREVIEW" + } + }, + "iam.WorkspacePermission": { + "enum": [ + "UNKNOWN", + "USER", + "ADMIN" + ], + "enum_launch_stages": { + "ADMIN": "GA", + "UNKNOWN": "GA", + "USER": "GA" + } + }, + "iam.WorkspacePermissions": { + "fields": { + "permissions": { + "description": "Array of permissions defined for a workspace.", + "launch_stage": "GA" + } + } + }, + "iamv2.CreateDirectGroupMemberProxyRequest": { + "fields": { + "direct_group_member": { + "description": "Required. The group membership to create.", + "ref": "iamv2.DirectGroupMember", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.CreateDirectGroupMemberRequest": { + "fields": { + "direct_group_member": { + "description": "Required. The direct group member to be added to the group.", + "ref": "iamv2.DirectGroupMember", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.CreateGroupProxyRequest": { + "fields": { + "group": { + "description": "Required. Group to be created in Databricks", + "ref": "iamv2.Group", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.CreateGroupRequest": { + "fields": { + "group": { + "description": "Required. Group to be created in Databricks", + "ref": "iamv2.Group", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.CreateIdentityVisibilityFilterRequest": { + "fields": { + "identity_visibility_filter": { + "description": "Required. The filter to create. Set `principal_type` to `GROUP` and specify exactly one of\n`exact` or `prefix`. The server assigns the resource name; any supplied `name` is ignored.", + "ref": "iamv2.IdentityVisibilityFilter", + "launch_stage": "GA" + }, + "identity_visibility_filter_id": { + "description": "Optional. The ID to use for the filter, which becomes the final component of its resource name.\nIf not specified or empty, the server generates one. Must not contain `/`.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.CreateServicePrincipalProxyRequest": { + "fields": { + "service_principal": { + "description": "Required. Service principal to be created in Databricks", + "ref": "iamv2.ServicePrincipal", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.CreateServicePrincipalRequest": { + "fields": { + "service_principal": { + "description": "Required. Service principal to be created in Databricks", + "ref": "iamv2.ServicePrincipal", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.CreateUserProxyRequest": { + "fields": { + "user": { + "description": "Required. User to be created in Databricks", + "ref": "iamv2.User", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.CreateUserRequest": { + "fields": { + "user": { + "description": "Required. User to be created in Databricks", + "ref": "iamv2.User", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.CreateWorkspaceAssignmentDetailProxyRequest": { + "fields": { + "workspace_assignment_detail": { + "description": "Required. Workspace assignment detail to be created in Databricks.", + "ref": "iamv2.WorkspaceAssignmentDetail", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "iamv2.CreateWorkspaceAssignmentDetailRequest": { + "fields": { + "workspace_assignment_detail": { + "description": "Required. Workspace assignment detail to be created in Databricks.", + "ref": "iamv2.WorkspaceAssignmentDetail", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "iamv2.CreateWorkspaceAssignmentProxyRequest": { + "fields": { + "workspace_assignment": { + "description": "Required. Workspace assignment to be created in Databricks.", + "ref": "iamv2.WorkspaceAssignment", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.CreateWorkspaceAssignmentRequest": { + "fields": { + "workspace_assignment": { + "description": "Required. Workspace assignment to be created in Databricks.", + "ref": "iamv2.WorkspaceAssignment", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.DeleteDirectGroupMemberProxyRequest": {}, + "iamv2.DeleteDirectGroupMemberRequest": {}, + "iamv2.DeleteGroupProxyRequest": {}, + "iamv2.DeleteGroupRequest": {}, + "iamv2.DeleteIdentityVisibilityFilterRequest": {}, + "iamv2.DeleteServicePrincipalProxyRequest": {}, + "iamv2.DeleteServicePrincipalRequest": {}, + "iamv2.DeleteUserProxyRequest": {}, + "iamv2.DeleteUserRequest": {}, + "iamv2.DeleteWorkspaceAssignmentDetailProxyRequest": {}, + "iamv2.DeleteWorkspaceAssignmentDetailRequest": {}, + "iamv2.DeleteWorkspaceAssignmentProxyRequest": {}, + "iamv2.DeleteWorkspaceAssignmentRequest": {}, + "iamv2.DirectGroupMember": { + "description": "Represents a principal that is a direct member of a group, with its source of membership.", + "fields": { + "display_name": { + "description": "Display name of the principal.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "external_id": { + "description": "The external ID of the principal in Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "group_id": { + "description": "The internal ID of the group this member belongs to.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL", + "OUTPUT_ONLY" + ] + }, + "membership_source": { + "description": "The source of group membership (internal or from identity provider).", + "ref": "iamv2.GroupMembershipSource", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "principal_id": { + "description": "Internal ID of the principal in Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "principal_type": { + "description": "The type of the principal (user/service principal/group).", + "ref": "iamv2.PrincipalType", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "iamv2.Entitlement": { + "enum": [ + "WORKSPACE_ACCESS", + "WORKSPACE_CONSUME", + "DATABRICKS_SQL_ACCESS", + "WORKSPACE_ADMIN", + "ALLOW_CLUSTER_CREATE", + "ALLOW_INSTANCE_POOL_CREATE" + ], + "enum_launch_stages": { + "ALLOW_CLUSTER_CREATE": "PUBLIC_BETA", + "ALLOW_INSTANCE_POOL_CREATE": "PUBLIC_BETA", + "DATABRICKS_SQL_ACCESS": "PUBLIC_BETA", + "WORKSPACE_ACCESS": "PUBLIC_BETA", + "WORKSPACE_ADMIN": "PUBLIC_BETA", + "WORKSPACE_CONSUME": "PUBLIC_BETA" + } + }, + "iamv2.ExactMatchRule": { + "description": "An exact-match rule that matches a group's external ID from the identity provider.", + "fields": { + "external_id": { + "description": "The identity provider's external ID for the group to match. This is not the Databricks group ID.\nThe value must be non-empty and is matched exactly, including case.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + } + } + }, + "iamv2.ExternalGroup": { + "description": "An external group from the customer's Identity Provider, resolved into\nDatabricks. This is a read-only resource keyed by the IdP external ID.\nThe Get method may trigger an idempotent sync from the customer's IdP to\nprovision or refresh the group's data in Databricks.", + "fields": { + "account_id": { + "description": "The parent account ID, from Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "display_name": { + "description": "Display name of the group from the customer's IdP.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "external_group_id": { + "description": "The external ID of the group in the customer's IdP.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "internal_id": { + "description": "Internal groupId of the group in Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "The resource name of the external group. The format depends on the API that\nreturned it:\n- Account-scoped: accounts/{account_id}/external-groups/{external_group_id}\n- Workspace-scoped: external-groups/{external_group_id}", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "iamv2.ExternalServicePrincipal": { + "description": "An external service principal from the customer's Identity Provider, resolved\ninto Databricks. This is a read-only resource keyed by the IdP external ID.\nThe Get method may trigger an idempotent sync from the customer's IdP to\nprovision or refresh the service principal's data in Databricks.", + "fields": { + "account_id": { + "description": "The parent account ID, from Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "account_sp_status": { + "description": "The activity status of the service principal in the Databricks account.", + "ref": "iamv2.State", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "application_id": { + "description": "Application ID of the service principal, from the customer's IdP.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "display_name": { + "description": "Display name of the service principal, from the customer's IdP.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "external_service_principal_id": { + "description": "The external ID of the service principal in the customer's IdP.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "internal_id": { + "description": "Internal servicePrincipalId of the service principal in Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "The resource name of the external service principal. The format depends on\nthe API that returned it:\n- Account-scoped: accounts/{account_id}/external-service-principals/{external_service_principal_id}\n- Workspace-scoped: external-service-principals/{external_service_principal_id}", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "iamv2.ExternalUser": { + "description": "An external user from the customer's Identity Provider, resolved into\nDatabricks. This is a read-only resource that allows customers to look up\nexternal user identities by their IdP external ID and retrieve the\ncorresponding Databricks internal ID and metadata. The Get method may\ntrigger an idempotent sync from the customer's IdP to provision or refresh\nthe user's data in Databricks.", + "fields": { + "account_id": { + "description": "The parent account ID, from Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "account_user_status": { + "description": "The activity status of the user in the Databricks account.", + "ref": "iamv2.State", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "display_name": { + "description": "Display name of the user from the customer's IdP.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "external_user_id": { + "description": "The external ID of the user in the customer's IdP.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "full_name": { + "description": "The full name of the user, from the customer's IdP.", + "ref": "iamv2.FullName", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "internal_id": { + "description": "Internal userId of the user in Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "The resource name of the external user. The format depends on the API that\nreturned it:\n- Account-scoped: accounts/{account_id}/external-users/{external_user_id}\n- Workspace-scoped: external-users/{external_user_id}", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "username": { + "description": "Username/email of the user, from Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "iamv2.FullName": { + "description": "The full name of a user.", + "fields": { + "family_name": { + "description": "The family (last) name of the user, from the customer's IdP.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "given_name": { + "description": "The given (first) name of the user, from the customer's IdP.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "iamv2.GetDirectGroupMemberProxyRequest": {}, + "iamv2.GetDirectGroupMemberRequest": {}, + "iamv2.GetExternalGroupProxyRequest": {}, + "iamv2.GetExternalGroupRequest": {}, + "iamv2.GetExternalServicePrincipalProxyRequest": {}, + "iamv2.GetExternalServicePrincipalRequest": {}, + "iamv2.GetExternalUserProxyRequest": {}, + "iamv2.GetExternalUserRequest": {}, + "iamv2.GetGroupProxyRequest": {}, + "iamv2.GetGroupRequest": {}, + "iamv2.GetIdentityVisibilityFilterRequest": {}, + "iamv2.GetServicePrincipalProxyRequest": {}, + "iamv2.GetServicePrincipalRequest": {}, + "iamv2.GetUserProxyRequest": {}, + "iamv2.GetUserRequest": {}, + "iamv2.GetWorkspaceAccessDetailLocalRequest": { + "fields": { + "view": { + "description": "Controls what fields are returned.", + "ref": "iamv2.WorkspaceAccessDetailView", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.GetWorkspaceAccessDetailRequest": { + "fields": { + "view": { + "description": "Controls what fields are returned.", + "ref": "iamv2.WorkspaceAccessDetailView", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.GetWorkspaceAssignmentDetailProxyRequest": {}, + "iamv2.GetWorkspaceAssignmentDetailRequest": {}, + "iamv2.GetWorkspaceAssignmentProxyRequest": {}, + "iamv2.GetWorkspaceAssignmentRequest": {}, + "iamv2.GetWorkspaceIdentityDetailRequest": {}, + "iamv2.Group": { + "description": "The details of a Group resource.", + "fields": { + "account_id": { + "description": "The parent account ID for group in Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "external_id": { + "description": "ExternalId of the group in the customer's IdP.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "group_id": { + "description": "Internal group ID of the group in Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "group_name": { + "description": "Display name of the group.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.GroupMembershipSource": { + "description": "The source of the group membership (internal or from identity provider).", + "enum": [ + "INTERNAL", + "IDENTITY_PROVIDER" + ], + "enum_launch_stages": { + "IDENTITY_PROVIDER": "PUBLIC_BETA", + "INTERNAL": "PUBLIC_BETA" + } + }, + "iamv2.IdentityVisibilityFilter": { + "description": "An account-level rule that controls which identity provider groups are discoverable in directory\nsearch and group pickers when automatic identity management is enabled. Filters apply across all\nworkspaces in the account.\n\nIf no group filters are configured, all groups are visible. Otherwise, a group is visible if it\nor any of its transitive parent groups matches at least one rule. A group is also visible if it\nor any transitive parent group is already provisioned in the account. Local Databricks groups\nremain visible regardless of the filters.\n\nOnly group filters can be created. Filters do not change provisioning or sign-in for users and\nservice principals. Filters are immutable: to change a rule, delete it and create a new one.", + "fields": { + "exact": { + "description": "Exact match on the group's external ID from the identity provider.", + "ref": "iamv2.ExactMatchRule", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "name": { + "description": "The resource name of the identity-visibility filter.\nFormat: accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "prefix": { + "description": "Case-sensitive starts-with match on the group's display name.", + "ref": "iamv2.PrefixMatchRule", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "principal_type": { + "description": "The type of principal this rule applies to. Set to `GROUP` when creating a filter.\nOther principal types are not supported for creation.", + "ref": "iamv2.PrincipalType", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + } + } + }, + "iamv2.ListDirectGroupMembersProxyRequest": { + "fields": { + "page_size": { + "description": "The maximum number of members to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token from a previous list call. Provide this to retrieve the subsequent page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.ListDirectGroupMembersRequest": { + "fields": { + "page_size": { + "description": "The maximum number of members to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous ListDirectGroupMembers call. Provide this to retrieve the subsequent page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.ListDirectGroupMembersResponse": { + "description": "Response message for listing direct group members.", + "fields": { + "direct_group_members": { + "description": "The list of direct group members with their membership source type.", + "launch_stage": "PUBLIC_BETA" + }, + "next_page_token": { + "description": "A token, which can be sent as page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.ListGroupsProxyRequest": { + "fields": { + "filter": { + "description": "Optional. Allows filtering groups by group name or external id.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_size": { + "description": "The maximum number of groups to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous ListGroups call. Provide this to retrieve the subsequent page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.ListGroupsRequest": { + "fields": { + "filter": { + "description": "Optional. Allows filtering groups by group name or external id.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_size": { + "description": "The maximum number of groups to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous ListGroups call. Provide this to retrieve the subsequent page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.ListGroupsResponse": { + "description": "Response message containing a page of groups in the account.", + "fields": { + "groups": { + "launch_stage": "PUBLIC_BETA" + }, + "next_page_token": { + "description": "A token, which can be sent as page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.ListIdentityVisibilityFiltersRequest": { + "fields": { + "page_size": { + "description": "The maximum number of filters to return. The service may return fewer than this value.\nIf omitted or non-positive, defaults to 100. Values above 1000 are reduced to 1000.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous ListIdentityVisibilityFilters call. Provide this to retrieve the subsequent page.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.ListIdentityVisibilityFiltersResponse": { + "description": "Response message containing a page of identity-visibility filters in the account.", + "fields": { + "identity_visibility_filters": { + "description": "The filters in this page. These are filter rules, not the groups matched by the rules.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "A token, which can be sent as page_token to retrieve the next page. If omitted, there are no subsequent pages.", + "launch_stage": "GA" + } + } + }, + "iamv2.ListServicePrincipalsProxyRequest": { + "fields": { + "filter": { + "description": "Optional. Allows filtering service principals by application id or external id.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_size": { + "description": "The maximum number of SPs to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous ListServicePrincipals call. Provide this to retrieve the subsequent page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.ListServicePrincipalsRequest": { + "fields": { + "filter": { + "description": "Optional. Allows filtering service principals by application id or external id.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_size": { + "description": "The maximum number of service principals to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous ListServicePrincipals call. Provide this to retrieve the subsequent page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.ListServicePrincipalsResponse": { + "description": "Response message containing a page of service principals in the account.", + "fields": { + "next_page_token": { + "description": "A token, which can be sent as page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "launch_stage": "PUBLIC_BETA" + }, + "service_principals": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.ListTransitiveParentGroupsProxyRequest": { + "fields": { + "page_size": { + "description": "The maximum number of parent groups to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous ListTransitiveParentGroups call. Provide this to retrieve the subsequent page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.ListTransitiveParentGroupsRequest": { + "fields": { + "page_size": { + "description": "The maximum number of parent groups to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous ListTransitiveParentGroups call. Provide this to retrieve the subsequent page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.ListTransitiveParentGroupsResponse": { + "description": "Response message for listing all transitive parent groups of a principal.", + "fields": { + "next_page_token": { + "description": "A token, which can be sent as page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "launch_stage": "PUBLIC_BETA" + }, + "transitive_parent_groups": { + "description": "The list of transitive parent groups.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.ListUsersProxyRequest": { + "fields": { + "filter": { + "description": "Optional. Allows filtering users by username or external id.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_size": { + "description": "The maximum number of users to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous ListUsers call. Provide this to retrieve the subsequent page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.ListUsersRequest": { + "fields": { + "filter": { + "description": "Optional. Allows filtering users by username or external id.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_size": { + "description": "The maximum number of users to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous ListUsers call. Provide this to retrieve the subsequent page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.ListUsersResponse": { + "fields": { + "next_page_token": { + "description": "A token, which can be sent as page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "launch_stage": "PUBLIC_BETA" + }, + "users": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.ListWorkspaceAssignmentDetailsProxyRequest": { + "fields": { + "page_size": { + "description": "The maximum number of workspace assignment details to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token from a previous list call. Provide this to retrieve the subsequent page.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.ListWorkspaceAssignmentDetailsRequest": { + "fields": { + "page_size": { + "description": "The maximum number of workspace assignment details to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous ListWorkspaceAssignmentDetails call. Provide this to retrieve the subsequent page.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.ListWorkspaceAssignmentDetailsResponse": { + "description": "Response message for listing workspace assignment details.", + "fields": { + "next_page_token": { + "description": "A token, which can be sent as page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "workspace_assignment_details": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "iamv2.ListWorkspaceAssignmentsProxyRequest": { + "fields": { + "page_size": { + "description": "The maximum number of workspace assignments to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token from a previous list call. Provide this to retrieve the subsequent page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.ListWorkspaceAssignmentsRequest": { + "fields": { + "page_size": { + "description": "The maximum number of workspace assignments to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous ListWorkspaceAssignments call. Provide this to retrieve the subsequent page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.ListWorkspaceAssignmentsResponse": { + "description": "Response message for listing workspace assignments.", + "fields": { + "next_page_token": { + "description": "A token, which can be sent as page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "launch_stage": "PUBLIC_BETA" + }, + "workspace_assignments": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.PrefixMatchRule": { + "description": "A starts-with rule that matches groups whose display name begins with a specified prefix.\nMatching is case-sensitive. For example, the prefix `data-` matches `data-platform`.", + "fields": { + "display_name_prefix": { + "description": "The display-name prefix to match. Must contain at least one non-whitespace character.\nLeading and trailing whitespace are preserved, and matching is case-sensitive.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + } + } + }, + "iamv2.PrincipalType": { + "description": "The type of the principal (user/sp/group).", + "enum": [ + "USER", + "SERVICE_PRINCIPAL", + "GROUP" + ], + "enum_launch_stages": { + "GROUP": "GA", + "SERVICE_PRINCIPAL": "GA", + "USER": "GA" + } + }, + "iamv2.ResolveGroupProxyRequest": { + "description": "Request message for resolving a group with the given external ID from the customer's IdP into Databricks.\nWill resolve metadata such as the group's name and inherited parent groups.", + "fields": { + "external_id": { + "description": "Required. The external ID of the group in the customer's IdP.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.ResolveGroupRequest": { + "description": "Request message for resolving a group with the given external ID from the customer's IdP into Databricks.\nWill resolve metadata such as the group's name and inherited parent groups.", + "fields": { + "external_id": { + "description": "Required. The external ID of the group in the customer's IdP.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.ResolveGroupResponse": { + "fields": { + "group": { + "description": "The group that was resolved.", + "ref": "iamv2.Group", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.ResolveServicePrincipalProxyRequest": { + "description": "Request message for resolving a service principal with the given external ID from the customer's IdP into Databricks.\nWill resolve metadata such as the service principal's display name, status, and inherited parent groups.", + "fields": { + "external_id": { + "description": "Required. The external ID of the service principal in the customer's IdP.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.ResolveServicePrincipalRequest": { + "description": "Request message for resolving a service principal with the given external ID from the customer's IdP into Databricks.\nWill resolve metadata such as the service principal's display name, status, and inherited parent groups.", + "fields": { + "external_id": { + "description": "Required. The external ID of the service principal in the customer's IdP.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.ResolveServicePrincipalResponse": { + "fields": { + "service_principal": { + "description": "The service principal that was resolved.", + "ref": "iamv2.ServicePrincipal", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.ResolveUserProxyRequest": { + "description": "Request message for resolving a user with the given external ID from the customer's IdP into Databricks.\nWill resolve metadata such as the user's display name, status, and inherited parent groups.", + "fields": { + "external_id": { + "description": "Required. The external ID of the user in the customer's IdP.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.ResolveUserRequest": { + "description": "Request message for resolving a user with the given external ID from the customer's IdP into Databricks.\nWill resolve metadata such as the user's display name, status, and inherited parent groups.", + "fields": { + "external_id": { + "description": "Required. The external ID of the user in the customer's IdP.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.ResolveUserResponse": { + "fields": { + "user": { + "description": "The user that was resolved.", + "ref": "iamv2.User", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.ServicePrincipal": { + "description": "The details of a ServicePrincipal resource.", + "fields": { + "account_id": { + "description": "The parent account ID for the service principal in Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "account_sp_status": { + "description": "The activity status of a service principal in a Databricks account.", + "ref": "iamv2.State", + "launch_stage": "PUBLIC_BETA" + }, + "application_id": { + "description": "Application ID of the service principal. Set at creation time and cannot be changed\nafterwards; when omitted, the server generates one.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "display_name": { + "description": "Display name of the service principal.", + "launch_stage": "PUBLIC_BETA" + }, + "external_id": { + "description": "ExternalId of the service principal in the customer's IdP.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "service_principal_id": { + "description": "Internal service principal ID of the service principal in Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "iamv2.State": { + "description": "The activity status of a user or service principal in a Databricks account or workspace.", + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "enum_launch_stages": { + "ACTIVE": "PUBLIC_BETA", + "INACTIVE": "PUBLIC_BETA" + } + }, + "iamv2.TransitiveParentGroup": { + "description": "Represents a group that is a transitive parent of a principal.", + "fields": { + "account_id": { + "description": "The parent account ID for group in Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "external_id": { + "description": "ExternalId of the group in the customer's IdP.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "group_id": { + "description": "Internal group ID of the group in Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "iamv2.UpdateGroupProxyRequest": { + "fields": { + "group": { + "description": "Required. Group to be updated in Databricks", + "ref": "iamv2.Group", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Optional. The list of fields to update.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.UpdateGroupRequest": { + "fields": { + "group": { + "description": "Required. Group to be updated in Databricks", + "ref": "iamv2.Group", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Optional. The list of fields to update.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.UpdateServicePrincipalProxyRequest": { + "fields": { + "service_principal": { + "description": "Required. Service principal to be updated in Databricks", + "ref": "iamv2.ServicePrincipal", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Optional. The list of fields to update.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.UpdateServicePrincipalRequest": { + "fields": { + "service_principal": { + "description": "Required. Service Principal to be updated in Databricks", + "ref": "iamv2.ServicePrincipal", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Optional. The list of fields to update.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.UpdateUserProxyRequest": { + "fields": { + "update_mask": { + "description": "Optional. The list of fields to update.", + "launch_stage": "PUBLIC_BETA" + }, + "user": { + "description": "Required. User to be updated in Databricks", + "ref": "iamv2.User", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.UpdateUserRequest": { + "fields": { + "update_mask": { + "description": "Optional. The list of fields to update.", + "launch_stage": "PUBLIC_BETA" + }, + "user": { + "description": "Required. User to be updated in Databricks", + "ref": "iamv2.User", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.UpdateWorkspaceAssignmentDetailProxyRequest": { + "fields": { + "update_mask": { + "description": "Required. The list of fields to update.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "workspace_assignment_detail": { + "description": "Required. Workspace assignment detail to be updated in Databricks.", + "ref": "iamv2.WorkspaceAssignmentDetail", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "iamv2.UpdateWorkspaceAssignmentDetailRequest": { + "fields": { + "update_mask": { + "description": "Required. The list of fields to update.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "workspace_assignment_detail": { + "description": "Required. Workspace assignment detail to be updated in Databricks.", + "ref": "iamv2.WorkspaceAssignmentDetail", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "iamv2.UpdateWorkspaceAssignmentProxyRequest": { + "fields": { + "update_mask": { + "description": "Required. The list of fields to update.", + "launch_stage": "PUBLIC_BETA" + }, + "workspace_assignment": { + "description": "Required. Workspace assignment to be updated in Databricks.", + "ref": "iamv2.WorkspaceAssignment", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.UpdateWorkspaceAssignmentRequest": { + "fields": { + "update_mask": { + "description": "Required. The list of fields to update.", + "launch_stage": "PUBLIC_BETA" + }, + "workspace_assignment": { + "description": "Required. Workspace assignment to be updated in Databricks.", + "ref": "iamv2.WorkspaceAssignment", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.UpdateWorkspaceIdentityDetailRequest": { + "fields": { + "update_mask": { + "description": "Required. The list of fields to update.", + "launch_stage": "PUBLIC_BETA" + }, + "workspace_identity_detail": { + "description": "Required. Workspace identity detail to be updated in Databricks.", + "ref": "iamv2.WorkspaceIdentityDetail", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "iamv2.User": { + "description": "The details of a User resource.", + "fields": { + "account_id": { + "description": "The accountId parent of the user in Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "account_user_status": { + "description": "The activity status of a user in a Databricks account.", + "ref": "iamv2.State", + "launch_stage": "PUBLIC_BETA" + }, + "external_id": { + "description": "ExternalId of the user in the customer's IdP.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "full_name": { + "ref": "iamv2.UserFullName", + "launch_stage": "PUBLIC_BETA" + }, + "user_id": { + "description": "Internal userId of the user in Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "username": { + "description": "Username/email of the user.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE" + ] + } + } + }, + "iamv2.UserFullName": { + "fields": { + "family_name": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "given_name": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.WorkspaceAccessDetail": { + "description": "The details of a principal's access to a workspace.", + "fields": { + "access_type": { + "ref": "iamv2.WorkspaceAccessDetailAccessType", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "account_id": { + "description": "The account ID parent of the workspace where the principal has access.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "permissions": { + "description": "The permissions granted to the principal in the workspace.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "principal_id": { + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "principal_type": { + "ref": "iamv2.PrincipalType", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "status": { + "description": "The activity status of the principal in the workspace. Not applicable for groups at the moment.", + "ref": "iamv2.State", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "workspace_id": { + "description": "The workspace ID where the principal has access.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "iamv2.WorkspaceAccessDetailAccessType": { + "description": "The type of access the principal has to the workspace.", + "enum": [ + "DIRECT", + "INDIRECT" + ], + "enum_launch_stages": { + "DIRECT": "PUBLIC_BETA", + "INDIRECT": "PUBLIC_BETA" + } + }, + "iamv2.WorkspaceAccessDetailView": { + "description": "Controls what fields are returned in the GetWorkspaceAccessDetail response.", + "enum": [ + "BASIC", + "FULL" + ], + "enum_launch_stages": { + "BASIC": "PUBLIC_BETA", + "FULL": "PUBLIC_BETA" + } + }, + "iamv2.WorkspaceAssignment": { + "description": "The direct assignment of a provisioned account-level principal (user, service\nprincipal, or group) to a workspace, together with the entitlements that\nassignment grants in the workspace.\n\nThis resource covers only principals assigned directly to the workspace.\nPrincipals that inherit workspace access through a group are not represented\nhere. See WorkspaceAccessDetail and WorkspaceIdentityDetail for the effective,\ndirect-or-indirect view. Creating the resource assigns the principal to the\nworkspace, and deleting it removes the assignment.\n\n`entitlements` is the only client-settable field. It holds the entitlements\ngranted directly on this assignment, including any the principal also holds\nthrough a group. `effective_entitlements` is the read-only union of those and\nany granted through group membership.\n\nA direct assignment always carries at least one directly-assigned entitlement,\nbecause the assignment is what grants it. Create and update both reject an\nempty `entitlements` set. To remove a principal's assignment entirely, delete\nthe resource.\n\nThis resource replaces workspace assignment previously managed through the\nworkspace SCIM and permission-assignment APIs, and is intended for account\nand workspace admins.", + "fields": { + "account_id": { + "description": "The account ID parent of the workspace where the principal is assigned", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_entitlements": { + "description": "Every entitlement the principal holds in this workspace, whether granted directly or through\ngroup membership. Get responses populate this field. List responses leave it empty.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY", + "UNORDERED_LIST" + ] + }, + "entitlements": { + "description": "Entitlements granted directly to the principal on this workspace. This is the only\nclient-settable field. Create and update manage exactly this set, including entitlements the\nprincipal also holds through a group.\nList responses leave this field empty. Get a single principal to read its entitlements.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL", + "UNORDERED_LIST" + ] + }, + "principal_id": { + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "launch_stage": "PUBLIC_BETA" + }, + "principal_type": { + "description": "The type of the principal (user/service principal/group) that is assigned.", + "ref": "iamv2.PrincipalType", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "workspace_id": { + "description": "The workspace ID where the principal is assigned.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL", + "OUTPUT_ONLY" + ] + } + } + }, + "iamv2.WorkspaceAssignmentDetail": { + "description": "The direct assignment of a provisioned account-level principal (user, service\nprincipal, or group) to a workspace, together with the entitlements that\nassignment grants in the workspace.\n\nThis resource covers only principals assigned directly to the workspace.\nPrincipals that inherit workspace access through a group are not represented\nhere. See WorkspaceAccessDetail and WorkspaceIdentityDetail for the effective,\ndirect-or-indirect view. Creating the resource assigns the principal to the\nworkspace, and deleting it removes the assignment.\n\n`entitlements` is the only client-settable field. It holds the entitlements\ngranted directly on this assignment, including any the principal also holds\nthrough a group. `effective_entitlements` is the read-only union of those and\nany granted through group membership.\n\nA direct assignment always carries at least one directly-assigned entitlement,\nbecause the assignment is what grants it. Create and update both reject an\nempty `entitlements` set. To remove a principal's assignment entirely, delete\nthe resource.\n\nThis resource replaces workspace assignment previously managed through the\nworkspace SCIM and permission-assignment APIs, and is intended for account\nand workspace admins.", + "fields": { + "account_id": { + "description": "The account ID parent of the workspace where the principal is assigned", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_entitlements": { + "description": "Every entitlement the principal holds in this workspace, whether granted directly or through\ngroup membership. Get responses populate this field. List responses leave it empty.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY", + "UNORDERED_LIST" + ] + }, + "entitlements": { + "description": "Entitlements granted directly to the principal on this workspace. This is the only\nclient-settable field. Create and update manage exactly this set, including entitlements the\nprincipal also holds through a group.\nList responses leave this field empty. Get a single principal to read its entitlements.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL", + "UNORDERED_LIST" + ] + }, + "principal_id": { + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "principal_type": { + "ref": "iamv2.PrincipalType", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "workspace_id": { + "description": "The workspace ID where the principal is assigned.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL", + "OUTPUT_ONLY" + ] + } + } + }, + "iamv2.WorkspaceIdentityDetail": { + "description": "The details of a directly or indirectly assigned principal's details in a workspace.", + "fields": { + "assignment_type": { + "description": "The type of assignment the principal has to the workspace (direct or indirect).", + "ref": "iamv2.WorkspaceIdentityDetailAssignmentType", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "principal_id": { + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "principal_type": { + "description": "The type of the principal (user/service principal/group).", + "ref": "iamv2.PrincipalType", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "workspace_identity_status": { + "description": "The activity status of an identity in a Databricks workspace.", + "ref": "iamv2.State", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "iamv2.WorkspaceIdentityDetailAssignmentType": { + "description": "The type of assignment the principal has to the workspace.", + "enum": [ + "DIRECT", + "INDIRECT" + ], + "enum_launch_stages": { + "DIRECT": "PUBLIC_BETA", + "INDIRECT": "PUBLIC_BETA" + } + }, + "iamv2.WorkspacePermission": { + "description": "The type of permission a principal has to a workspace (admin/user).", + "enum": [ + "USER_PERMISSION", + "ADMIN_PERMISSION" + ], + "enum_launch_stages": { + "ADMIN_PERMISSION": "PUBLIC_BETA", + "USER_PERMISSION": "PUBLIC_BETA" + } + }, + "jobs.AiRuntimeTask": { + "description": "AiRuntimeTask: multi-node GPU compute task definition for Databricks AI\nRuntime workloads.\n\nJobs-framework-level concepts (retries, per-task timeout, idempotency\ntoken, usage/budget policy, permissions) live on the surrounding\nTaskSettings / run-submit request and are intentionally NOT duplicated\nhere. Users compose `ai_runtime_task` with the standard Jobs/DABs task\nwrapper to get those.", + "fields": { + "code_source_path": { + "description": "Workspace or UC volume path of the code-source archive, unpacked on\neach node and exposed through `$CODE_SOURCE`. Set by first-party\ntooling; not for direct callers.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "deployments": { + "description": "Deployment specs for this task. Exactly one deployment is currently\nsupported (a single entry where every node runs the same command); this\nis a current-Preview constraint. Role-split workloads (driver + worker,\nparameter server, separate eval node, etc.) with multiple entries are the\neventual intent but not yet supported.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "docker_image_url": { + "description": "Optional Docker image URL for a custom container image. When set,\nthe task runs on the specified container image instead of the default\nDatabricks client image. Format:\n`{organization}/{repository}:{tag}`", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "experiment": { + "description": "MLflow experiment name for this run. If an experiment with this name\nalready exists under the calling user, the run is appended to it;\notherwise a new experiment is created. To target a specific MLflow\nstorage location (for example, when running as a service principal), set\n`mlflow_experiment_directory`.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "mlflow_artifact_location": { + "description": "Optional root location for MLflow artifacts logged by the run.\nIf this field isn't specified the default artifact location will be in dbfs\ni.e. `dbfs:/databricks/mlflow-tracking/\u003cexperiment_id\u003e/...`\nIf dbfs access is restricted or UC is preferred this can be a custom location in UC:\n`dbfs:/Volumes/\u003ccatalog\u003e/\u003cschema\u003e/\u003cvolume\u003e/...`\nThe location should be unique for each experiment.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "mlflow_experiment_directory": { + "description": "Optional workspace directory under which the MLflow experiment named in\n`experiment` is created. Must start with `/Workspace`. Set this when\nrunning as a service principal that has no default user directory; for\nregular users the experiment defaults to the user's home directory.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "mlflow_run": { + "description": "Optional display name for the MLflow run created under `experiment`. If\nomitted, MLflow generates a default name.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "priority_class": { + "description": "Scheduling priority class for the workload. May only be set together with\na pre-provisioned capacity reservation (a deployment's\n`compute.provisioned_capacity_id`); it is rejected on a workload that runs\non on-demand capacity.", + "ref": "jobs.AiRuntimeTaskPriorityClass", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "unity_catalog_image_path": { + "description": "Optional Unity Catalog path for a custom container image. When set,\nthe task runs on the specified container image instead of the default\nDatabricks client image. Format:\n`{catalog}.{schema}.{image_name}:{tag}`", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "jobs.AiRuntimeTaskOutput": { + "description": "AiRuntimeTaskOutput: output identifiers for an AiRuntimeTask run — the\nMLflow experiment and run IDs the task wrote to.\n\nRun lifecycle and termination status are not on this message; they live\non the surrounding `RunTask.status` field (see `runs.proto:RunTask.status`).", + "fields": { + "mlflow_experiment_id": { + "description": "MLflow experiment ID the run was logged to. Use it to look up the\nexperiment in MLflow APIs or the workspace MLflow UI.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "mlflow_run_id": { + "description": "MLflow run ID for this task execution. Use it to look up the run in\nMLflow APIs or the workspace MLflow UI.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "status_message": { + "description": "Human-readable status message for this run, suitable for display to the\nuser (for example, that the run is still waiting for GPU compute). Set by\nthe server only when there is something to surface; empty otherwise.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "jobs.AiRuntimeTaskPriorityClass": { + "description": "Scheduling priority class for a workload — its priority and preemptability\nwhen the scheduler ranks pending work.", + "enum": [ + "BEST_EFFORT", + "NORMAL", + "CRITICAL" + ], + "enum_launch_stages": { + "BEST_EFFORT": "PRIVATE_PREVIEW", + "CRITICAL": "PRIVATE_PREVIEW", + "NORMAL": "PRIVATE_PREVIEW" + } + }, + "jobs.AlertEvaluationState": { + "description": "Same alert evaluation state as in redash-v2/api/proto/alertsv2/alerts.proto", + "enum": [ + "UNKNOWN", + "TRIGGERED", + "OK", + "ERROR" + ], + "enum_launch_stages": { + "ERROR": "PUBLIC_PREVIEW", + "OK": "PUBLIC_PREVIEW", + "TRIGGERED": "PUBLIC_PREVIEW", + "UNKNOWN": "PUBLIC_PREVIEW" + } + }, + "jobs.AlertTask": { + "fields": { + "alert_id": { + "description": "The alert_id is the canonical identifier of the alert.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "parameters": { + "description": "Per-run parameter overrides, keyed by parameter name, applied onto the alert's stored\nquery parameters before the query is executed. Only scalar values are supported. Values\nmay reference job parameters with `{{job.parameters.*}}`, which are resolved before the\ntask runs. An override whose key does not match a stored parameter fails the task run.\nLimited to 10000 characters when serialized as JSON; keys must be 1-100 characters and\ncontain only letters, digits, underscores, dashes, and periods.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "subscribers": { + "description": "The subscribers receive alert evaluation result notifications after the alert task is completed.\nThe number of subscriptions is limited to 100.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "warehouse_id": { + "description": "The warehouse_id identifies the warehouse settings used by the alert task.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "workspace_path": { + "description": "The workspace_path is the path to the alert file in the workspace. The path:\n* must start with \"/Workspace\"\n* must be a normalized path.\nUser has to select only one of alert_id or workspace_path to identify the alert.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "jobs.AlertTaskOutput": { + "fields": { + "alert_state": { + "ref": "jobs.AlertEvaluationState", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "jobs.AlertTaskSubscriber": { + "description": "Represents a subscriber that will receive alert notifications.\nA subscriber can be either a user (via email) or a notification destination (via destination_id).", + "fields": { + "destination_id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "user_name": { + "description": "A valid workspace email address.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "jobs.AuthenticationMethod": { + "enum": [ + "OAUTH", + "PAT" + ], + "enum_launch_stages": { + "OAUTH": "PUBLIC_PREVIEW", + "PAT": "PUBLIC_PREVIEW" + } + }, + "jobs.BaseJob": { + "fields": { + "created_time": { + "description": "The time at which this job was created in epoch milliseconds (milliseconds since 1/1/1970 UTC).", + "launch_stage": "GA" + }, + "creator_user_name": { + "description": "The creator user name. This field won’t be included in the response if the user has already been deleted.", + "launch_stage": "GA" + }, + "effective_budget_policy_id": { + "description": "The id of the budget policy used by this job for cost attribution purposes.\nThis may be set through (in order of precedence):\n1. Budget admins through the account or workspace console\n2. Jobs UI in the job details page and Jobs API using `budget_policy_id`\n3. Inferred default based on accessible budget policies of the run_as identity on job creation or modification.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_usage_policy_id": { + "description": "The id of the usage policy used by this job for cost attribution purposes.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "has_more": { + "description": "Indicates if the job has more array properties (`tasks`, `job_clusters`) that are not shown. They can be accessed via :method:jobs/get endpoint.\nIt is only relevant for API 2.2 :method:jobs/list requests with `expand_tasks=true`.", + "launch_stage": "GA" + }, + "job_id": { + "description": "The canonical identifier for this job.", + "launch_stage": "GA" + }, + "settings": { + "description": "Settings for this job and all of its runs. These settings can be updated using the `resetJob` method.", + "ref": "jobs.JobSettings", + "launch_stage": "GA" + }, + "trigger_details": { + "description": "Per-trigger runtime information for the multi-trigger surface. Same length\nand order as `JobSettings.triggers`; `trigger_details[i]` corresponds to\n`triggers[i]`. Sub-fields (`state`, `history`) are populated independently\nbased on the `GetJob.include_trigger_state` / `include_trigger_history` flags.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "trigger_state": { + "description": "State of the trigger associated with the job.", + "ref": "jobs.TriggerStateProto", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "jobs.BaseRun": { + "fields": { + "attempt_number": { + "description": "The sequence number of this run attempt for a triggered job run. The initial attempt of a run has an attempt_number of 0. If the initial run attempt fails, and the job has a retry policy (`max_retries` \u003e 0), subsequent runs are created with an `original_attempt_run_id` of the original attempt’s ID and an incrementing `attempt_number`. Runs are retried only until they succeed, and the maximum `attempt_number` is the same as the `max_retries` value for the job.", + "launch_stage": "GA" + }, + "cleanup_duration": { + "description": "The time in milliseconds it took to terminate the cluster and clean up any associated artifacts. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `cleanup_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field.", + "launch_stage": "GA" + }, + "cluster_instance": { + "description": "The cluster used for this run. If the run is specified to use a new cluster, this field is set once the Jobs service has requested a cluster for the run.", + "ref": "jobs.ClusterInstance", + "launch_stage": "GA" + }, + "cluster_spec": { + "description": "A snapshot of the job’s cluster specification when this run was created.", + "ref": "jobs.ClusterSpec", + "launch_stage": "GA" + }, + "creator_user_name": { + "description": "The creator user name. This field won’t be included in the response if the user has already been deleted.", + "launch_stage": "GA" + }, + "deployment_id": { + "description": "ID of the deployment that produced the job when this run was created. Used to look up\ndeployment metadata from the Deployment Metadata service. Only set for job runs of jobs\nwith a `BUNDLE` deployment.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "description": { + "description": "Description of the run", + "launch_stage": "GA" + }, + "duration_target": { + "description": "The window the run aims to finish within, in hours, for a Cost-optimized serverless run.\nRequired only when `performance_target` is `COST_OPTIMIZED`. Must be one of the\nsupported values: `NO_FLEXIBILITY`, `4h`, `12h`, `24h`, `72h`. `NO_FLEXIBILITY` means the run\nuses the default cost-optimized performance level without additional cost-saving optimizations.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "effective_performance_target": { + "description": "The actual performance target used by the serverless run during execution. This can differ from the client-set performance target on the request depending on whether the performance mode is supported by the job type.\n\n* `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance.\n* `STANDARD`: Enables cost-efficient execution of serverless workloads.\n* `COST_OPTIMIZED`: Enables lower job costs by optimizing compute for your selected target duration time. Must provide a duration target.", + "ref": "jobs.PerformanceTarget", + "launch_stage": "GA" + }, + "effective_usage_policy_id": { + "description": "The id of the usage policy used by this run for cost attribution purposes.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "end_time": { + "description": "The time at which this run ended in epoch milliseconds (milliseconds since 1/1/1970 UTC). This field is set to 0 if the job is still running.", + "launch_stage": "GA" + }, + "environment_variables": { + "description": "Snapshot of `JobSettings.environment_variables` as it was at run\nlaunch — the full list of named environment-variable entries the job\ndefined. To find which entry a given task ran with, look at\n`RunTaskSettings.environment_variables_key`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "execution_duration": { + "description": "The time in milliseconds it took to execute the commands in the JAR or notebook until they completed, failed, timed out, were cancelled, or encountered an unexpected error. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `execution_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field.", + "launch_stage": "GA" + }, + "git_source": { + "description": "An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks.\n\nIf `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task.\n\nNote: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job.", + "ref": "jobs.GitSource", + "launch_stage": "GA" + }, + "has_more": { + "description": "Indicates if the run has more array properties (`tasks`, `job_clusters`) that are not shown. They can be accessed via :method:jobs/getrun endpoint.\nIt is only relevant for API 2.2 :method:jobs/listruns requests with `expand_tasks=true`.", + "launch_stage": "GA" + }, + "job_clusters": { + "description": "A list of job cluster specifications that can be shared and reused by tasks of this job. Libraries cannot be declared in a shared job cluster. You must declare dependent libraries in task settings.\nIf more than 100 job clusters are available, you can paginate through them using :method:jobs/getrun.", + "launch_stage": "GA" + }, + "job_id": { + "description": "The canonical identifier of the job that contains this run.", + "launch_stage": "GA" + }, + "job_parameters": { + "description": "Job-level parameters used in the run", + "launch_stage": "GA" + }, + "job_run_id": { + "description": "ID of the job run that this run belongs to.\nFor legacy and single-task job runs the field is populated with the job run ID.\nFor task runs, the field is populated with the ID of the job run that the task run belongs to.", + "launch_stage": "GA" + }, + "number_in_job": { + "description": "A unique identifier for this job run. This is set to the same value as `run_id`.", + "deprecated": true, + "launch_stage": "GA" + }, + "original_attempt_run_id": { + "description": "If this run is a retry of a prior run attempt, this field contains the run_id of the original attempt; otherwise, it is the same as the run_id.", + "launch_stage": "GA" + }, + "overriding_parameters": { + "description": "The parameters used for this run.", + "ref": "jobs.RunParameters", + "launch_stage": "GA" + }, + "queue_duration": { + "description": "The time in milliseconds that the run has spent in the queue.", + "launch_stage": "GA" + }, + "repair_history": { + "description": "The repair history of the run.", + "launch_stage": "GA" + }, + "run_duration": { + "description": "The time in milliseconds it took the job run and all of its repairs to finish.", + "launch_stage": "GA" + }, + "run_id": { + "description": "The canonical identifier of the run. This ID is unique across all runs of all jobs.", + "launch_stage": "GA" + }, + "run_name": { + "description": "An optional name for the run. The maximum length is 4096 bytes in UTF-8 encoding.", + "launch_stage": "GA" + }, + "run_page_url": { + "description": "The URL to the detail page of the run.", + "launch_stage": "GA" + }, + "run_type": { + "ref": "jobs.RunType", + "launch_stage": "GA" + }, + "schedule": { + "description": "The cron schedule that triggered this run if it was triggered by the periodic scheduler.", + "ref": "jobs.CronSchedule", + "launch_stage": "GA" + }, + "setup_duration": { + "description": "The time in milliseconds it took to set up the cluster. For runs that run on new clusters this is the cluster creation time, for runs that run on existing clusters this time should be very short. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `setup_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field.", + "launch_stage": "GA" + }, + "start_time": { + "description": "The time at which this run was started in epoch milliseconds (milliseconds since 1/1/1970 UTC). This may not be the time when the job task starts executing, for example, if the job is scheduled to run on a new cluster, this is the time the cluster creation call is issued.", + "launch_stage": "GA" + }, + "state": { + "description": "Deprecated. Please use the `status` field instead.", + "ref": "jobs.RunState", + "deprecated": true, + "launch_stage": "GA" + }, + "status": { + "ref": "jobs.RunStatus", + "launch_stage": "GA" + }, + "tasks": { + "description": "The list of tasks performed by the run. Each task has its own `run_id` which you can use to call `JobsGetOutput` to retrieve the run results.\nIf more than 100 tasks are available, you can paginate through them using :method:jobs/getrun. Use the `next_page_token` field at the object root to determine if more results are available.", + "launch_stage": "GA" + }, + "trigger": { + "ref": "jobs.TriggerType", + "launch_stage": "GA" + }, + "trigger_info": { + "ref": "jobs.TriggerInfo", + "launch_stage": "GA" + }, + "version_id": { + "description": "ID of the deployment version that produced the job when this run was created. Identifies\na specific snapshot of the deployment in the Deployment Metadata service. Only set for\njob runs of jobs with a `BUNDLE` deployment.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.CancelAllRuns": { + "fields": { + "all_queued_runs": { + "description": "Optional boolean parameter to cancel all queued runs. If no job_id is provided, all queued runs in the workspace are canceled.", + "launch_stage": "GA" + }, + "job_id": { + "description": "The canonical identifier of the job to cancel all runs of.", + "launch_stage": "GA" + } + } + }, + "jobs.CancelRun": { + "fields": { + "run_id": { + "description": "This field is required.", + "launch_stage": "GA" + } + } + }, + "jobs.CleanRoomTaskRunLifeCycleState": { + "description": "Copied from elastic-spark-common/api/messages/runs.proto.\nUsing the original definition to remove coupling with jobs API definition", + "enum": [ + "RUN_LIFE_CYCLE_STATE_UNSPECIFIED", + "PENDING", + "RUNNING", + "TERMINATING", + "TERMINATED", + "SKIPPED", + "INTERNAL_ERROR", + "BLOCKED", + "WAITING_FOR_RETRY", + "QUEUED" + ], + "enum_launch_stages": { + "BLOCKED": "GA", + "INTERNAL_ERROR": "GA", + "PENDING": "GA", + "QUEUED": "GA", + "RUNNING": "GA", + "RUN_LIFE_CYCLE_STATE_UNSPECIFIED": "GA", + "SKIPPED": "GA", + "TERMINATED": "GA", + "TERMINATING": "GA", + "WAITING_FOR_RETRY": "GA" + } + }, + "jobs.CleanRoomTaskRunResultState": { + "description": "Copied from elastic-spark-common/api/messages/runs.proto.\nUsing the original definition to avoid cyclic dependency.", + "enum": [ + "RUN_RESULT_STATE_UNSPECIFIED", + "SUCCESS", + "FAILED", + "TIMEDOUT", + "CANCELED", + "MAXIMUM_CONCURRENT_RUNS_REACHED", + "UPSTREAM_CANCELED", + "UPSTREAM_FAILED", + "EXCLUDED", + "EVICTED", + "SUCCESS_WITH_FAILURES", + "UPSTREAM_EVICTED", + "DISABLED" + ], + "enum_launch_stages": { + "CANCELED": "GA", + "DISABLED": "GA", + "EVICTED": "GA", + "EXCLUDED": "GA", + "FAILED": "GA", + "MAXIMUM_CONCURRENT_RUNS_REACHED": "GA", + "RUN_RESULT_STATE_UNSPECIFIED": "GA", + "SUCCESS": "GA", + "SUCCESS_WITH_FAILURES": "GA", + "TIMEDOUT": "GA", + "UPSTREAM_CANCELED": "GA", + "UPSTREAM_EVICTED": "GA", + "UPSTREAM_FAILED": "GA" + } + }, + "jobs.CleanRoomTaskRunState": { + "description": "Stores the run state of the clean rooms notebook task.", + "fields": { + "life_cycle_state": { + "description": "A value indicating the run's current lifecycle state. This field is always available in the response. Note: Additional states might be introduced in future releases.", + "ref": "jobs.CleanRoomTaskRunLifeCycleState", + "launch_stage": "GA" + }, + "result_state": { + "description": "A value indicating the run's result. This field is only available for terminal lifecycle states. Note: Additional states might be introduced in future releases.", + "ref": "jobs.CleanRoomTaskRunResultState", + "launch_stage": "GA" + } + } + }, + "jobs.CleanRoomsNotebookTask": { + "description": "Clean Rooms notebook task for V1 Clean Room service (GA).\nReplaces the deprecated CleanRoomNotebookTask (defined above) which was for V0 service.", + "fields": { + "clean_room_name": { + "description": "The clean room that the notebook belongs to.", + "launch_stage": "GA" + }, + "etag": { + "description": "Checksum to validate the freshness of the notebook resource (i.e. the notebook being run is the latest version).\nIt can be fetched by calling the :method:cleanroomassets/get API.", + "launch_stage": "GA" + }, + "notebook_base_parameters": { + "description": "Base parameters to be used for the clean room notebook job.", + "launch_stage": "GA" + }, + "notebook_name": { + "description": "Name of the notebook being run.", + "launch_stage": "GA" + } + } + }, + "jobs.CleanRoomsNotebookTaskCleanRoomsNotebookTaskOutput": { + "fields": { + "clean_room_job_run_state": { + "description": "The run state of the clean rooms notebook task.", + "ref": "jobs.CleanRoomTaskRunState", + "launch_stage": "GA" + }, + "notebook_output": { + "description": "The notebook output for the clean room run", + "ref": "jobs.NotebookOutput", + "launch_stage": "GA" + }, + "output_schema_info": { + "description": "Information on how to access the output schema for the clean room run", + "ref": "jobs.OutputSchemaInfo", + "launch_stage": "GA" + } + } + }, + "jobs.ClusterInstance": { + "fields": { + "cluster_id": { + "description": "The canonical identifier for the cluster used by a run. This field is always available for runs on existing clusters. For runs on new clusters, it becomes available once the cluster is created. This value can be used to view logs by browsing to `/#setting/sparkui/$cluster_id/driver-logs`. The logs continue to be available after the run completes.\n\nThe response won’t include this field if the identifier is not available yet.", + "launch_stage": "GA" + }, + "spark_context_id": { + "description": "The canonical identifier for the Spark context used by a run. This field is filled in once the run begins execution. This value can be used to view the Spark UI by browsing to `/#setting/sparkui/$cluster_id/$spark_context_id`. The Spark UI continues to be available after the run has completed.\n\nThe response won’t include this field if the identifier is not available yet.", + "launch_stage": "GA" + } + } + }, + "jobs.ClusterSpec": { + "fields": { + "existing_cluster_id": { + "description": "If existing_cluster_id, the ID of an existing cluster that is used for all runs.\nWhen running jobs or tasks on an existing cluster, you may need to manually restart\nthe cluster if it stops responding. We suggest running jobs and tasks on new clusters for\ngreater reliability", + "launch_stage": "GA" + }, + "job_cluster_key": { + "description": "If job_cluster_key, this task is executed reusing the cluster specified in `job.settings.job_clusters`.", + "launch_stage": "GA" + }, + "libraries": { + "description": "An optional list of libraries to be installed on the cluster.\nThe default value is an empty list.", + "launch_stage": "GA" + }, + "new_cluster": { + "description": "If new_cluster, a description of a new cluster that is created for each run.", + "ref": "compute.ClusterSpec", + "launch_stage": "GA" + } + } + }, + "jobs.Compute": { + "fields": { + "hardware_accelerator": { + "description": "Hardware accelerator configuration for Serverless GPU workloads.", + "ref": "compute.HardwareAcceleratorType", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "jobs.ComputeConfig": { + "fields": { + "gpu_node_pool_id": { + "description": "IDof the GPU pool to use.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "gpu_type": { + "description": "GPU type.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "num_gpus": { + "description": "Number of GPUs.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.ComputeSpec": { + "description": "ComputeSpec: compute configuration — accelerator type and total\naccelerator count across all nodes.", + "fields": { + "accelerator_count": { + "description": "Total number of accelerators across all nodes. Must be a positive\nmultiple of the per-node accelerator count encoded in `accelerator_type`.\nFor example, `GPU_8xH100` with `accelerator_count: 16` allocates 2 nodes\n(8 GPUs per node).", + "launch_stage": "PUBLIC_PREVIEW" + }, + "accelerator_type": { + "description": "Hardware accelerator type (for example, `GPU_1xA10` or `GPU_8xH100`).\nThe number of accelerators per node is encoded in the enum value —\n`GPU_8xH100` means 8 H100 GPUs per node.", + "ref": "jobs.ComputeSpecAcceleratorType", + "launch_stage": "PUBLIC_PREVIEW" + }, + "provisioned_capacity_id": { + "description": "Optional ID of a pre-provisioned accelerator capacity reservation to run\nthis AI Runtime workload on. When set, the workload is scheduled onto the\nreferenced reserved capacity instead of the on-demand capacity shared among\nall Databricks customers.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "jobs.ComputeSpecAcceleratorType": { + "description": "Hardware accelerator type for the AiRuntime workload. Per-node\naccelerator count is encoded in the value name (e.g. `GPU_8xH100` means\n8 H100s per node).", + "enum": [ + "GPU_1xA10", + "GPU_1xH100", + "GPU_8xH100", + "GPU_8xB300" + ], + "enum_launch_stages": { + "GPU_1xA10": "PUBLIC_PREVIEW", + "GPU_1xH100": "PUBLIC_PREVIEW", + "GPU_8xB300": "PUBLIC_PREVIEW", + "GPU_8xH100": "PUBLIC_PREVIEW" + } + }, + "jobs.Condition": { + "enum": [ + "ANY_UPDATED", + "ALL_UPDATED" + ], + "enum_launch_stages": { + "ALL_UPDATED": "GA", + "ANY_UPDATED": "GA" + } + }, + "jobs.ConditionTask": { + "fields": { + "left": { + "description": "The left operand of the condition task. Can be either a string value or a job state or parameter reference.", + "launch_stage": "GA" + }, + "op": { + "description": "* `EQUAL_TO`, `NOT_EQUAL` operators perform string comparison of their operands. This means that `“12.0” == “12”` will evaluate to `false`.\n* `GREATER_THAN`, `GREATER_THAN_OR_EQUAL`, `LESS_THAN`, `LESS_THAN_OR_EQUAL` operators perform numeric comparison of their operands. `“12.0” \u003e= “12”` will evaluate to `true`, `“10.0” \u003e= “12”` will evaluate to `false`.\n\nThe boolean comparison to task values can be implemented with operators `EQUAL_TO`, `NOT_EQUAL`. If a task value was set to a boolean value, it will be serialized to `“true”` or `“false”` for the comparison.", + "ref": "jobs.ConditionTaskOp", + "launch_stage": "GA" + }, + "right": { + "description": "The right operand of the condition task. Can be either a string value or a job state or parameter reference.", + "launch_stage": "GA" + } + } + }, + "jobs.ConditionTaskOp": { + "description": "* `EQUAL_TO`, `NOT_EQUAL` operators perform string comparison of their operands. This means that `“12.0” == “12”` will evaluate to `false`.\n* `GREATER_THAN`, `GREATER_THAN_OR_EQUAL`, `LESS_THAN`, `LESS_THAN_OR_EQUAL` operators perform numeric comparison of their operands. `“12.0” \u003e= “12”` will evaluate to `true`, `“10.0” \u003e= “12”` will evaluate to `false`.\n\nThe boolean comparison to task values can be implemented with operators `EQUAL_TO`, `NOT_EQUAL`. If a task value was set to a boolean value, it will be serialized to `“true”` or `“false”` for the comparison.", + "enum": [ + "EQUAL_TO", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL", + "LESS_THAN", + "LESS_THAN_OR_EQUAL", + "NOT_EQUAL" + ], + "enum_launch_stages": { + "EQUAL_TO": "GA", + "GREATER_THAN": "GA", + "GREATER_THAN_OR_EQUAL": "GA", + "LESS_THAN": "GA", + "LESS_THAN_OR_EQUAL": "GA", + "NOT_EQUAL": "GA" + } + }, + "jobs.Continuous": { + "fields": { + "maintenance_window": { + "description": "Defines when platform-initiated maintenance may run for this job. If unspecified, maintenance may run at any time.", + "ref": "jobs.MaintenanceWindow", + "launch_stage": "GA" + }, + "pause_status": { + "description": "Indicate whether the continuous execution of the job is paused or not. Defaults to UNPAUSED.", + "ref": "jobs.PauseStatus", + "launch_stage": "GA" + }, + "task_retry_mode": { + "description": "Indicate whether the continuous job is applying task level retries or not. Defaults to NEVER.", + "ref": "jobs.TaskRetryMode", + "launch_stage": "GA" + } + } + }, + "jobs.ContinuousTriggerConfiguration": { + "description": "Continuous trigger. Stripped-down counterpart to `ContinuousSettings`: `pause_status` is owned by the enclosing\n`TriggerConfiguration` and intentionally omitted here.", + "fields": { + "maintenance_window": { + "description": "Defines when platform-initiated maintenance may run for this trigger. If unspecified,\nmaintenance may run at any time.", + "ref": "jobs.MaintenanceWindow", + "launch_stage": "PUBLIC_BETA" + }, + "task_retry_mode": { + "description": "Whether the continuous job applies task-level retries. Defaults to NEVER.", + "ref": "jobs.TaskRetryMode", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "jobs.ContinuousTriggerState": { + "fields": { + "consecutive_failures": { + "launch_stage": "PUBLIC_BETA" + }, + "is_backing_off": { + "launch_stage": "PUBLIC_BETA" + }, + "next_attempt_ms": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "jobs.CreateJob": { + "fields": { + "access_control_list": { + "description": "List of permissions to set on the job.", + "launch_stage": "GA" + }, + "budget_policy_id": { + "description": "The id of the user specified budget policy to use for this job.\nIf not specified, a default budget policy may be applied when creating or modifying the job.\nSee `effective_budget_policy_id` for the budget policy used by this workload.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "continuous": { + "description": "An optional continuous property for this job. The continuous property will ensure that there is always one run executing. Only one of `schedule` and `continuous` can be used.\n\nPipelines started by a continuous job also run continuously, regardless of their own pipeline mode setting.", + "ref": "jobs.Continuous", + "launch_stage": "GA" + }, + "deployment": { + "description": "Deployment information for jobs managed by external sources.", + "ref": "jobs.JobDeployment", + "launch_stage": "GA" + }, + "description": { + "description": "An optional description for the job. The maximum length is 27700 characters in UTF-8 encoding.", + "launch_stage": "GA" + }, + "duration_target": { + "description": "The window the run aims to finish within, in hours, for a Cost-optimized serverless run.\nRequired only when `performance_target` is `COST_OPTIMIZED`. Must be one of the\nsupported values: `NO_FLEXIBILITY`, `4h`, `12h`, `24h`, `72h`. `NO_FLEXIBILITY` means the run\nuses the default cost-optimized performance level without additional cost-saving optimizations.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "edit_mode": { + "description": "Edit mode of the job.\n\n* `UI_LOCKED`: The job is in a locked UI state and cannot be modified.\n* `EDITABLE`: The job is in an editable state and can be modified.", + "ref": "jobs.JobEditMode", + "launch_stage": "GA" + }, + "email_notifications": { + "description": "An optional set of email addresses that is notified when runs of this job begin or complete as well as when this job is deleted.", + "ref": "jobs.JobEmailNotifications", + "launch_stage": "GA" + }, + "environment_variables": { + "description": "Named environment-variable entries that tasks can reference by key from\n`TaskSettings.environment_variables_key`. Each entry's `spec` holds inline\n`variables` and optional `.env` `files`. Maximum 10 entries per job. A task\ncan reference at most one entry from this list.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "environments": { + "description": "A list of task execution environment specifications that can be referenced by tasks that use serverless compute or a compute resource that uses Environments mode.\n\nFor notebook tasks that use serverless compute or a compute resource that uses Environments mode, if the environment_key is not specified, the notebook environment will be used if present. If a jobs environment is specified, it will override the notebook environment.\nFor other tasks that use serverless compute or a compute resource that uses Environments mode, the task environment is required to be specified using environment_key in the task settings.", + "launch_stage": "GA" + }, + "format": { + "description": "Used to tell what is the format of the job. This field is ignored in Create/Update/Reset calls. When using the Jobs API 2.1 this value is always set to `\"MULTI_TASK\"`.", + "ref": "jobs.Format", + "deprecated": true, + "launch_stage": "GA" + }, + "git_source": { + "description": "An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks.\n\nIf `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task.\n\nNote: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job.", + "ref": "jobs.GitSource", + "launch_stage": "GA" + }, + "health": { + "ref": "jobs.JobsHealthRules", + "launch_stage": "GA" + }, + "job_clusters": { + "description": "A list of job cluster specifications that can be shared and reused by tasks of this job. Libraries cannot be declared in a shared job cluster. You must declare dependent libraries in task settings.", + "launch_stage": "GA" + }, + "max_concurrent_runs": { + "description": "An optional maximum allowed number of concurrent runs of the job.\nSet this value if you want to be able to execute multiple runs of the same job concurrently.\nThis is useful for example if you trigger your job on a frequent schedule and want to allow consecutive runs to overlap with each other, or if you want to trigger multiple runs which differ by their input parameters.\nThis setting affects only new runs. For example, suppose the job’s concurrency is 4 and there are 4 concurrent active runs. Then setting the concurrency to 3 won’t kill any of the active runs.\nHowever, from then on, new runs are skipped unless there are fewer than 3 active runs.\nThis value cannot exceed 1000. Setting this value to `0` causes all new runs to be skipped.", + "launch_stage": "GA" + }, + "name": { + "description": "An optional name for the job. The maximum length is 4096 bytes in UTF-8 encoding.", + "launch_stage": "GA" + }, + "notification_settings": { + "description": "Optional notification settings that are used when sending notifications to each of the `email_notifications` and `webhook_notifications` for this job.", + "ref": "jobs.JobNotificationSettings", + "launch_stage": "GA" + }, + "parameters": { + "description": "Job-level parameter definitions", + "launch_stage": "GA" + }, + "parent_path": { + "description": "Path of the job parent folder in workspace file tree. If absent, the job doesn't have a workspace object.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "performance_target": { + "description": "The performance mode on a serverless job. This field determines the level of compute performance or cost-efficiency for the run.\nThe performance target does not apply to tasks that run on Serverless GPU compute.\n\n* `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance.\n* `STANDARD`: Enables cost-efficient execution of serverless workloads.\n* `COST_OPTIMIZED`: Enables lower job costs by optimizing compute for your selected target duration time. Must provide a duration target.", + "ref": "jobs.PerformanceTarget", + "launch_stage": "GA" + }, + "queue": { + "description": "The queue settings of the job.", + "ref": "jobs.QueueSettings", + "launch_stage": "GA" + }, + "run_as": { + "description": "The user or service principal that the job runs as, if specified in the request.\nThis field indicates the explicit configuration of `run_as` for the job.\nTo find the value in all cases, explicit or implicit, use `run_as_user_name`.", + "ref": "jobs.JobRunAs", + "launch_stage": "GA" + }, + "schedule": { + "description": "An optional periodic schedule for this job. The default behavior is that the job only runs when triggered by clicking “Run Now” in the Jobs UI or sending an API request to `runNow`.", + "ref": "jobs.CronSchedule", + "launch_stage": "GA" + }, + "tags": { + "description": "A map of tags associated with the job. These are forwarded to the cluster as cluster tags for jobs clusters, and are subject to the same limitations as cluster tags. A maximum of 25 tags can be added to the job.", + "launch_stage": "GA" + }, + "tasks": { + "description": "A list of task specifications to be executed by this job.\nIt supports up to 1000 elements in write endpoints (:method:jobs/create, :method:jobs/reset, :method:jobs/update, :method:jobs/submit).\nRead endpoints return only 100 tasks. If more than 100 tasks are available, you can paginate through them using :method:jobs/get. Use the `next_page_token` field at the object root to determine if more results are available.", + "launch_stage": "GA" + }, + "timeout_seconds": { + "description": "An optional timeout applied to each run of this job. A value of `0` means no timeout.", + "launch_stage": "GA" + }, + "trigger": { + "description": "A configuration to trigger a run when certain conditions are met. The default behavior is that the job runs only when triggered by clicking “Run Now” in the Jobs UI or sending an API request to `runNow`.", + "ref": "jobs.TriggerSettings", + "launch_stage": "GA" + }, + "triggers": { + "description": "List of triggers attached to this job. A run starts when any active trigger evaluates to true. Cannot be set in\nthe same request as the legacy `schedule`, `trigger`, or `continuous` fields. Gated behind the \"Multiple Triggers\" feature preview.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "usage_policy_id": { + "description": "The id of the user specified usage policy to use for this job.\nIf not specified, a default usage policy may be applied when creating or modifying the job.\nSee `effective_usage_policy_id` for the usage policy used by this workload.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "webhook_notifications": { + "description": "A collection of system notification IDs to notify when runs of this job begin or complete.", + "ref": "jobs.WebhookNotifications", + "launch_stage": "GA" + } + } + }, + "jobs.CreateResponse": { + "description": "Job was created successfully", + "fields": { + "job_id": { + "description": "The canonical identifier for the newly created job.", + "launch_stage": "GA" + } + } + }, + "jobs.CronSchedule": { + "fields": { + "pause_status": { + "description": "Indicate whether this schedule is paused or not.", + "ref": "jobs.PauseStatus", + "launch_stage": "GA" + }, + "quartz_cron_expression": { + "description": "A Cron expression using Quartz syntax that describes the schedule for a job. See [Cron Trigger](http://www.quartz-scheduler.org/documentation/quartz-2.3.0/tutorials/crontrigger.html) for details. This field is required.", + "launch_stage": "GA" + }, + "sql_condition": { + "description": "SQL condition that must be satisfied before a scheduled run is triggered. The condition is evaluated\nafter the cron expression fires and must return a truthy result for the run to proceed.", + "ref": "jobs.SqlConditionConfiguration", + "launch_stage": "PRIVATE_PREVIEW" + }, + "timezone_id": { + "description": "A Java timezone ID. The schedule for a job is resolved with respect to this timezone. See [Java TimeZone](https://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html) for details. This field is required.", + "launch_stage": "GA" + } + } + }, + "jobs.CronTriggerConfiguration": { + "description": "Cron schedule trigger. Stripped-down counterpart to `CronSchedule`: `pause_status` and `sql_condition` are owned\nby the enclosing `TriggerConfiguration` and intentionally omitted here.", + "fields": { + "quartz_cron_expression": { + "description": "A Cron expression using Quartz syntax that describes the schedule for this trigger. See\n[Cron Trigger](http://www.quartz-scheduler.org/documentation/quartz-2.3.0/tutorials/crontrigger.html) for details.", + "launch_stage": "PUBLIC_BETA" + }, + "timezone_id": { + "description": "A Java timezone ID. The schedule is resolved with respect to this timezone. See\n[Java TimeZone](https://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html) for details.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "jobs.DashboardPageSnapshot": { + "fields": { + "page_display_name": { + "launch_stage": "GA" + }, + "widget_error_details": { + "launch_stage": "GA" + } + } + }, + "jobs.DashboardTask": { + "description": "Configures the Lakeview Dashboard job task type.", + "fields": { + "dashboard_id": { + "description": "The identifier of the dashboard to refresh.", + "launch_stage": "GA" + }, + "filters": { + "description": "Dashboard task parameters. Used to apply dashboard filter values during dashboard task execution. Parameter values get applied to any dashboard filters that have a matching URL identifier as the parameter key.\nThe parameter value format is dependent on the filter type:\n- For text and single-select filters, provide a single value (e.g. `\"value\"`)\n- For date and datetime filters, provide the value in ISO 8601 format (e.g. `\"2000-01-01T00:00:00\"`)\n- For multi-select filters, provide a JSON array of values (e.g. `\"[\\\"value1\\\",\\\"value2\\\"]\"`)\n- For range and date range filters, provide a JSON object with `start` and `end` (e.g. `\"{\\\"start\\\":\\\"1\\\",\\\"end\\\":\\\"10\\\"}\"`)", + "launch_stage": "GA" + }, + "subscription": { + "description": "Optional: subscription configuration for sending the dashboard snapshot.", + "ref": "jobs.Subscription", + "launch_stage": "GA" + }, + "warehouse_id": { + "description": "Optional: The warehouse id to execute the dashboard with for the schedule.\nIf not specified, the default warehouse of the dashboard will be used.", + "launch_stage": "GA" + } + } + }, + "jobs.DashboardTaskOutput": { + "fields": { + "page_snapshots": { + "description": "Should only be populated for manual PDF download jobs.", + "launch_stage": "GA" + } + } + }, + "jobs.DayOfWeek": { + "description": "Days of week that can be referenced by Jobs scheduling settings.", + "enum": [ + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enum_launch_stages": { + "FRIDAY": "GA", + "MONDAY": "GA", + "SATURDAY": "GA", + "SUNDAY": "GA", + "THURSDAY": "GA", + "TUESDAY": "GA", + "WEDNESDAY": "GA" + } + }, + "jobs.DbtCloudJobRunStep": { + "description": "Format of response retrieved from dbt Cloud, for inclusion in output\nDeprecated in favor of DbtPlatformJobRunStep", + "fields": { + "index": { + "description": "Orders the steps in the job", + "launch_stage": "PRIVATE_PREVIEW" + }, + "logs": { + "description": "Output of the step", + "launch_stage": "PRIVATE_PREVIEW" + }, + "name": { + "description": "Name of the step in the job", + "launch_stage": "PRIVATE_PREVIEW" + }, + "status": { + "description": "State of the step", + "ref": "jobs.DbtPlatformRunStatus", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.DbtCloudTask": { + "description": "Deprecated in favor of DbtPlatformTask", + "fields": { + "connection_resource_name": { + "description": "The resource name of the UC connection that authenticates the dbt Cloud for this task", + "launch_stage": "PRIVATE_PREVIEW" + }, + "dbt_cloud_job_id": { + "description": "Id of the dbt Cloud job to be triggered", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.DbtCloudTaskOutput": { + "description": "Deprecated in favor of DbtPlatformTaskOutput", + "fields": { + "dbt_cloud_job_run_id": { + "description": "Id of the job run in dbt Cloud", + "launch_stage": "PRIVATE_PREVIEW" + }, + "dbt_cloud_job_run_output": { + "description": "Steps of the job run as received from dbt Cloud", + "launch_stage": "PRIVATE_PREVIEW" + }, + "dbt_cloud_job_run_url": { + "description": "Url where full run details can be viewed", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.DbtOutput": { + "fields": { + "artifacts_headers": { + "description": "An optional map of headers to send when retrieving the artifact from the `artifacts_link`.", + "launch_stage": "GA" + }, + "artifacts_link": { + "description": "A pre-signed URL to download the (compressed) dbt artifacts. This link is valid for a limited time (30 minutes). This information is only available after the run has finished.", + "launch_stage": "GA" + } + } + }, + "jobs.DbtPlatformJobRunStep": { + "description": "Format of response retrieved from dbt platform, for inclusion in output", + "fields": { + "index": { + "description": "Orders the steps in the job", + "launch_stage": "PRIVATE_PREVIEW" + }, + "logs": { + "description": "Output of the step", + "launch_stage": "PRIVATE_PREVIEW" + }, + "logs_truncated": { + "description": "Whether the logs of this step have been truncated. If true, the logs has been truncated to 10000 characters.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "name": { + "description": "Name of the step in the job", + "launch_stage": "PRIVATE_PREVIEW" + }, + "name_truncated": { + "description": "Whether the name of the job has been truncated. If true, the name has been truncated to 100 characters.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "status": { + "description": "State of the step", + "ref": "jobs.DbtPlatformRunStatus", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.DbtPlatformRunStatus": { + "description": "Response enumeration from calling the dbt platform API, for inclusion in output", + "enum": [ + "QUEUED", + "STARTING", + "RUNNING", + "SUCCESS", + "ERROR", + "CANCELLED" + ], + "enum_launch_stages": { + "CANCELLED": "PRIVATE_PREVIEW", + "ERROR": "PRIVATE_PREVIEW", + "QUEUED": "PRIVATE_PREVIEW", + "RUNNING": "PRIVATE_PREVIEW", + "STARTING": "PRIVATE_PREVIEW", + "SUCCESS": "PRIVATE_PREVIEW" + } + }, + "jobs.DbtPlatformTask": { + "fields": { + "connection_resource_name": { + "description": "The resource name of the UC connection that authenticates the dbt platform for this task", + "launch_stage": "PRIVATE_PREVIEW" + }, + "dbt_platform_job_id": { + "description": "Id of the dbt platform job to be triggered. Specified as a string for maximum compatibility with clients.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.DbtPlatformTaskOutput": { + "fields": { + "dbt_platform_job_run_id": { + "description": "Id of the job run in dbt platform. Specified as a string for maximum compatibility with clients.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "dbt_platform_job_run_output": { + "description": "Steps of the job run as received from dbt platform", + "launch_stage": "PRIVATE_PREVIEW" + }, + "dbt_platform_job_run_url": { + "description": "Url where full run details can be viewed", + "launch_stage": "PRIVATE_PREVIEW" + }, + "steps_truncated": { + "description": "Whether the number of steps in the output has been truncated. If true, the output will contain the first 20 steps of the output.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.DbtTask": { + "fields": { + "catalog": { + "description": "Optional name of the catalog to use. The value is the top level in the 3-level namespace of Unity Catalog (catalog / schema / relation). The catalog value can only be specified if a warehouse_id is specified. Requires dbt-databricks \u003e= 1.1.1.", + "launch_stage": "GA" + }, + "commands": { + "description": "A list of dbt commands to execute. All commands must start with `dbt`. This parameter must not be empty. A maximum of up to 10 commands can be provided.", + "launch_stage": "GA" + }, + "profiles_directory": { + "description": "Optional (relative) path to the profiles directory. Can only be specified if no warehouse_id is specified. If no warehouse_id is specified and this folder is unset, the root directory is used.", + "launch_stage": "GA" + }, + "project_directory": { + "description": "Path to the project directory. Optional for Git sourced tasks, in which\ncase if no value is provided, the root of the Git repository is used.", + "launch_stage": "GA" + }, + "schema": { + "description": "Optional schema to write to. This parameter is only used when a warehouse_id is also provided. If not provided, the `default` schema is used.", + "launch_stage": "GA" + }, + "source": { + "description": "Optional location type of the project directory. When set to `WORKSPACE`, the project will be retrieved\nfrom the local Databricks workspace. When set to `GIT`, the project will be retrieved from a Git repository\ndefined in `git_source`. If the value is empty, the task will use `GIT` if `git_source` is defined and `WORKSPACE` otherwise.\n\n* `WORKSPACE`: Project is located in Databricks workspace.\n* `GIT`: Project is located in cloud Git provider.", + "ref": "jobs.Source", + "launch_stage": "GA" + }, + "warehouse_id": { + "description": "ID of the SQL warehouse to connect to. If provided, we automatically generate and provide the profile and connection details to dbt. It can be overridden on a per-command basis by using the `--profiles-dir` command line argument.", + "launch_stage": "GA" + } + } + }, + "jobs.DeleteJob": { + "fields": { + "job_id": { + "description": "The canonical identifier of the job to delete. This field is required.", + "launch_stage": "GA" + } + } + }, + "jobs.DeleteRun": { + "fields": { + "run_id": { + "description": "ID of the run to delete.", + "launch_stage": "GA" + } + } + }, + "jobs.DeploymentSpec": { + "description": "DeploymentSpec: configuration for one deployment within an AiRuntimeTask.\nEach entry in `AiRuntimeTask.deployments` describes a group of nodes that\nshare the same command and compute. Many single-program training\nalgorithms use a single entry where every node runs the same command;\nrole-split workloads (driver + worker, parameter server, separate eval\nnode, etc.) use multiple entries.", + "fields": { + "command_path": { + "description": "Workspace path of the script to run on each node in this deployment.\nUpload the script to this path and supply the path here. When the task\nruns, the file at this path is run on each node; if it fails, the task\nfails with its exit code.\n\nExample script contents:\n\n```bash\n# Plain Python:\npython train.py --epochs 10\n\n# Multi-GPU via accelerate:\naccelerate launch train.py --config config.yaml\n\n# Distributed via torchrun:\ntorchrun --nproc_per_node=8 train.py\n```", + "launch_stage": "PUBLIC_PREVIEW" + }, + "compute": { + "description": "Compute resources allocated to each node in this deployment.", + "ref": "jobs.ComputeSpec", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "Optional human-readable name for this deployment (for example, `driver`,\n`worker`, `param_server`). Used for log and UI display. Distinct names\nare recommended so deployments can be told apart, but uniqueness is not\nenforced.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "jobs.EnforcePolicyComplianceForJobResponseJobClusterSettingsChange": { + "description": "Represents a change to the job cluster's settings that would be required for the\njob clusters to become compliant with their policies.", + "fields": { + "field": { + "description": "The field where this change would be made, prepended with the job cluster key.", + "launch_stage": "GA" + }, + "new_value": { + "description": "The new value of this field after enforcing policy compliance\n(either a number, a boolean, or a string) converted to a string.\nThis is intended to be read by a human. The typed new value of this field\ncan be retrieved by reading the settings field in the API response.", + "launch_stage": "GA" + }, + "previous_value": { + "description": "The previous value of this field before enforcing policy compliance\n(either a number, a boolean, or a string) converted to a string.\nThis is intended to be read by a human. The type of the field\ncan be retrieved by reading the settings field in the API response.", + "launch_stage": "GA" + } + } + }, + "jobs.EnforcePolicyComplianceRequest": { + "fields": { + "job_id": { + "description": "The ID of the job you want to enforce policy compliance on.", + "launch_stage": "GA" + }, + "validate_only": { + "description": "If set, previews changes made to the job to comply with its policy, but\ndoes not update the job.", + "launch_stage": "GA" + } + } + }, + "jobs.EnforcePolicyComplianceResponse": { + "fields": { + "has_changes": { + "description": "Whether any changes have been made to the job cluster settings for the job to\nbecome compliant with its policies.", + "launch_stage": "GA" + }, + "job_cluster_changes": { + "description": "A list of job cluster changes that have been made to the job’s cluster\nsettings in order for all job clusters to become compliant with their\npolicies.", + "launch_stage": "GA" + }, + "settings": { + "description": "Updated job settings after policy enforcement. Policy enforcement only\napplies to job clusters that are created when running the job (which are\nspecified in new_cluster) and does not apply to existing all-purpose clusters.\nUpdated job settings are derived by applying policy default values to the\nexisting job clusters in order to satisfy policy requirements.", + "ref": "jobs.JobSettings", + "launch_stage": "GA" + } + } + }, + "jobs.ExportRunOutput": { + "description": "Run was exported successfully.", + "fields": { + "views": { + "description": "The exported content in HTML format (one for every view item). To extract the HTML notebook from the JSON response, download and run this [Python script](/_static/examples/extract.py).", + "launch_stage": "GA" + } + } + }, + "jobs.ExportRunRequest": { + "fields": { + "run_id": { + "description": "The canonical identifier for the run. This field is required.", + "launch_stage": "GA" + }, + "views_to_export": { + "description": "Which views to export (CODE, DASHBOARDS, or ALL). Defaults to CODE.", + "ref": "jobs.ViewsToExport", + "launch_stage": "GA" + } + } + }, + "jobs.FileArrivalTriggerConfiguration": { + "fields": { + "min_time_between_triggers_seconds": { + "description": "If set, the trigger starts a run only after the specified amount of time passed since\nthe last time the trigger fired. The minimum allowed value is 60 seconds", + "launch_stage": "GA" + }, + "url": { + "description": "URL to be monitored for file arrivals. The path must point to the root or a subpath of the external location.", + "launch_stage": "GA" + }, + "wait_after_last_change_seconds": { + "description": "If set, the trigger starts a run only after no file activity has occurred for the specified amount of time.\nThis makes it possible to wait for a batch of incoming files to arrive before triggering a run. The\nminimum allowed value is 60 seconds.", + "launch_stage": "GA" + } + } + }, + "jobs.FileArrivalTriggerState": { + "fields": { + "using_file_events": { + "description": "Indicates whether the trigger leverages file events to detect file arrivals.", + "launch_stage": "GA" + } + } + }, + "jobs.ForEachStats": { + "fields": { + "error_message_stats": { + "description": "Sample of 3 most common error messages occurred during the iteration.", + "launch_stage": "GA" + }, + "task_run_stats": { + "description": "Describes stats of the iteration. Only latest retries are considered.", + "ref": "jobs.ForEachTaskTaskRunStats", + "launch_stage": "GA" + } + } + }, + "jobs.ForEachTask": { + "fields": { + "concurrency": { + "description": "An optional maximum allowed number of concurrent runs of the task.\nSet this value if you want to be able to execute multiple runs of the task concurrently.", + "launch_stage": "GA" + }, + "inputs": { + "description": "Array for task to iterate on. This can be a JSON string or a reference to\nan array parameter.", + "launch_stage": "GA" + }, + "task": { + "description": "Configuration for the task that will be run for each element in the array", + "ref": "jobs.Task", + "launch_stage": "GA" + } + } + }, + "jobs.ForEachTaskErrorMessageStats": { + "fields": { + "count": { + "description": "Describes the count of such error message encountered during the\niterations.", + "launch_stage": "GA" + }, + "error_message": { + "description": "Describes the error message occurred during the iterations.", + "launch_stage": "GA" + }, + "termination_category": { + "description": "Describes the termination reason for the error message.", + "launch_stage": "GA" + } + } + }, + "jobs.ForEachTaskTaskRunStats": { + "fields": { + "active_iterations": { + "description": "Describes the iteration runs having an active lifecycle state or an active run sub state.", + "launch_stage": "GA" + }, + "completed_iterations": { + "description": "Describes the number of failed and succeeded iteration runs.", + "launch_stage": "GA" + }, + "failed_iterations": { + "description": "Describes the number of failed iteration runs.", + "launch_stage": "GA" + }, + "scheduled_iterations": { + "description": "Describes the number of iteration runs that have been scheduled.", + "launch_stage": "GA" + }, + "succeeded_iterations": { + "description": "Describes the number of succeeded iteration runs.", + "launch_stage": "GA" + }, + "total_iterations": { + "description": "Describes the length of the list of items to iterate over.", + "launch_stage": "GA" + } + } + }, + "jobs.Format": { + "enum": [ + "SINGLE_TASK", + "MULTI_TASK" + ], + "enum_launch_stages": { + "MULTI_TASK": "GA", + "SINGLE_TASK": "GA" + } + }, + "jobs.GenAiComputeTask": { + "description": "DEPRECATED — use `AiRuntimeTask` for all new BYOT multi-node GPU\nworkloads (see ai_runtime_task.proto). `AiRuntimeTask` is the only\nsupported BYOT task type for new workloads; this proto is retained only\nfor AIR CLI (fka SGCLI) pywheel backwards compatibility and will be\nremoved once the pywheel → databricks-cli migration completes (post-\nPuPr).", + "fields": { + "command": { + "description": "Command launcher to run the actual script, e.g. bash, python etc.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "compute": { + "ref": "jobs.ComputeConfig", + "launch_stage": "PRIVATE_PREVIEW" + }, + "dl_runtime_image": { + "description": "Runtime image", + "launch_stage": "PRIVATE_PREVIEW" + }, + "mlflow_experiment_name": { + "description": "Optional string containing the name of the MLflow experiment to log the run to. If name is not\nfound, backend will create the mlflow experiment using the name.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "source": { + "description": "Optional location type of the training script. When set to `WORKSPACE`, the script will be retrieved from the local Databricks workspace. When set to `GIT`, the script will be retrieved from a Git repository\ndefined in `git_source`. If the value is empty, the task will use `GIT` if `git_source` is defined and `WORKSPACE` otherwise.\n* `WORKSPACE`: Script is located in Databricks workspace.\n* `GIT`: Script is located in cloud Git provider.", + "ref": "jobs.Source", + "launch_stage": "PRIVATE_PREVIEW" + }, + "training_script_path": { + "description": "The training script file path to be executed. Cloud file URIs (such as dbfs:/, s3:/, adls:/, gcs:/) and workspace paths are supported. For python files stored in the Databricks workspace, the path must be absolute and begin with `/`. For files stored in a remote repository, the path must be relative. This field is required.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "yaml_parameters": { + "description": "Optional string containing model parameters passed to the training script in yaml format.\nIf present, then the content in yaml_parameters_file_path will be ignored.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "yaml_parameters_file_path": { + "description": "Optional path to a YAML file containing model parameters passed to the training script.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.GetJobPermissionLevelsRequest": {}, + "jobs.GetJobPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "GA" + } + } + }, + "jobs.GetJobPermissionsRequest": {}, + "jobs.GetJobRequest": { + "fields": { + "include_trigger_state": { + "description": "Flag that indicates that trigger state should be included in the response.", + "launch_stage": "GA" + }, + "job_id": { + "description": "The canonical identifier of the job to retrieve information about. This field is required.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Use `next_page_token` returned from the previous GetJob response to request the next page of the job's array properties.", + "launch_stage": "GA" + } + } + }, + "jobs.GetPolicyComplianceRequest": { + "fields": { + "job_id": { + "description": "The ID of the job whose compliance status you are requesting.", + "launch_stage": "GA" + } + } + }, + "jobs.GetPolicyComplianceResponse": { + "fields": { + "is_compliant": { + "description": "Whether the job is compliant with its policies or not. Jobs could be out of\ncompliance if a policy they are using was updated after the job was\nlast edited and some of its job clusters no longer comply with\ntheir updated policies.", + "launch_stage": "GA" + }, + "violations": { + "description": "An object containing key-value mappings representing the first 200 policy\nvalidation errors.\nThe keys indicate the path where the policy validation error is occurring.\nAn identifier for the job cluster is prepended to the path.\nThe values indicate an error message describing the policy validation error.", + "launch_stage": "GA" + } + } + }, + "jobs.GetRunOutputRequest": { + "fields": { + "run_id": { + "description": "The canonical identifier for the run.", + "launch_stage": "GA" + } + } + }, + "jobs.GetRunRequest": { + "fields": { + "include_history": { + "description": "Whether to include the repair history in the response.", + "launch_stage": "GA" + }, + "include_resolved_values": { + "description": "Whether to include resolved parameter values in the response.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Use `next_page_token` returned from the previous GetRun response to request the next page of the run's array properties.", + "launch_stage": "GA" + }, + "run_id": { + "description": "The canonical identifier of the run for which to retrieve the metadata.\nThis field is required.", + "launch_stage": "GA" + } + } + }, + "jobs.GitProvider": { + "enum": [ + "gitHub", + "bitbucketCloud", + "azureDevOpsServices", + "gitHubEnterprise", + "bitbucketServer", + "gitLab", + "gitLabEnterpriseEdition", + "awsCodeCommit" + ], + "enum_launch_stages": { + "awsCodeCommit": "GA", + "azureDevOpsServices": "GA", + "bitbucketCloud": "GA", + "bitbucketServer": "GA", + "gitHub": "GA", + "gitHubEnterprise": "GA", + "gitLab": "GA", + "gitLabEnterpriseEdition": "GA" + } + }, + "jobs.GitSnapshot": { + "description": "Read-only state of the remote repository at the time the job was run. This field is only included on job runs.", + "fields": { + "used_commit": { + "description": "Commit that was used to execute the run. If git_branch was specified, this points to the HEAD of the branch at the time of the run; if git_tag was specified, this points to the commit the tag points to.", + "launch_stage": "GA" + } + } + }, + "jobs.GitSource": { + "description": "An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks.\n\nIf `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task.\n\nNote: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job.", + "fields": { + "git_branch": { + "description": "Name of the branch to be checked out and used by this job. This field cannot be specified in conjunction with git_tag or git_commit.", + "launch_stage": "GA" + }, + "git_commit": { + "description": "Commit to be checked out and used by this job. This field cannot be specified in conjunction with git_branch or git_tag.", + "launch_stage": "GA" + }, + "git_provider": { + "description": "Unique identifier of the service used to host the Git repository. The value is case insensitive.", + "ref": "jobs.GitProvider", + "launch_stage": "GA" + }, + "git_snapshot": { + "ref": "jobs.GitSnapshot", + "launch_stage": "GA" + }, + "git_tag": { + "description": "Name of the tag to be checked out and used by this job. This field cannot be specified in conjunction with git_branch or git_commit.", + "launch_stage": "GA" + }, + "git_url": { + "description": "URL of the repository to be cloned by this job.", + "launch_stage": "GA" + }, + "job_source": { + "description": "The source of the job specification in the remote repository when the job is source controlled.", + "ref": "jobs.JobSource", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "sparse_checkout": { + "ref": "jobs.SparseCheckout", + "launch_stage": "GA" + } + } + }, + "jobs.Job": { + "description": "Job was retrieved successfully.", + "fields": { + "created_time": { + "description": "The time at which this job was created in epoch milliseconds (milliseconds since 1/1/1970 UTC).", + "launch_stage": "GA" + }, + "creator_user_name": { + "description": "The creator user name. This field won’t be included in the response if the user has already been deleted.", + "launch_stage": "GA" + }, + "effective_budget_policy_id": { + "description": "The id of the budget policy used by this job for cost attribution purposes.\nThis may be set through (in order of precedence):\n1. Budget admins through the account or workspace console\n2. Jobs UI in the job details page and Jobs API using `budget_policy_id`\n3. Inferred default based on accessible budget policies of the run_as identity on job creation or modification.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_usage_policy_id": { + "description": "The id of the usage policy used by this job for cost attribution purposes.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "has_more": { + "description": "Indicates if the job has more array properties (`tasks`, `job_clusters`) that are not shown. They can be accessed via :method:jobs/get endpoint.\nIt is only relevant for API 2.2 :method:jobs/list requests with `expand_tasks=true`.", + "launch_stage": "GA" + }, + "job_id": { + "description": "The canonical identifier for this job.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "A token that can be used to list the next page of array properties.", + "launch_stage": "GA" + }, + "run_as_user_name": { + "description": "The email of an active workspace user or the application ID of a service principal that the job runs as. This value can be changed by setting the `run_as` field when creating or updating a job.\n\nBy default, `run_as_user_name` is based on the current job settings and is set to the creator of the job if job access control is disabled or to the user with the `is_owner` permission if job access control is enabled.", + "launch_stage": "GA" + }, + "settings": { + "description": "Settings for this job and all of its runs. These settings can be updated using the `resetJob` method.", + "ref": "jobs.JobSettings", + "launch_stage": "GA" + }, + "trigger_details": { + "description": "Per-trigger runtime information for the multi-trigger surface. Same length\nand order as `JobSettings.triggers`; `trigger_details[i]` corresponds to\n`triggers[i]`. Sub-fields (`state`, `history`) are populated independently\nbased on the `GetJob.include_trigger_state` / `include_trigger_history` flags.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "trigger_state": { + "description": "State of the trigger associated with the job.", + "ref": "jobs.TriggerStateProto", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "jobs.JobAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "jobs.JobPermissionLevel", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "jobs.JobAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "jobs.JobCluster": { + "fields": { + "job_cluster_key": { + "description": "A unique name for the job cluster. This field is required and must be unique within the job.\n`JobTaskSettings` may refer to this field to determine which cluster to launch for the task execution.", + "launch_stage": "GA" + }, + "new_cluster": { + "description": "If new_cluster, a description of a cluster that is created for each task.", + "ref": "compute.ClusterSpec", + "launch_stage": "GA" + }, + "serverless_compute_id": { + "description": "The ID of the serverless compute object to bind this cluster to. At most one\nJobCluster per job may set this field; the rate limit defined on the referenced\nserverless compute applies across all tasks bound to this cluster.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.JobCompliance": { + "fields": { + "is_compliant": { + "description": "Whether this job is in compliance with the latest version of its policy.", + "launch_stage": "GA" + }, + "job_id": { + "description": "Canonical unique identifier for a job.", + "launch_stage": "GA" + }, + "violations": { + "description": "An object containing key-value mappings representing the first 200 policy\nvalidation errors.\nThe keys indicate the path where the policy validation error is occurring.\nAn identifier for the job cluster is prepended to the path.\nThe values indicate an error message describing the policy validation error.", + "launch_stage": "GA" + } + } + }, + "jobs.JobDeployment": { + "fields": { + "deployment_id": { + "description": "ID of the deployment that manages this job. Only set when `kind` is\n`BUNDLE`. Used to look up deployment metadata from the Deployment\nMetadata service.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "kind": { + "description": "The kind of deployment that manages the job.\n\n* `BUNDLE`: The job is managed by Databricks Asset Bundle.\n* `SYSTEM_MANAGED`: The job is managed by Databricks and is read-only.", + "ref": "jobs.JobDeploymentKind", + "launch_stage": "GA" + }, + "metadata_file_path": { + "description": "Path of the file that contains deployment metadata.", + "launch_stage": "GA" + }, + "version_id": { + "description": "ID of the version of the deployment that produced this job. Only set\nwhen `kind` is `BUNDLE`. Identifies a specific snapshot of the deployment\nin the Deployment Metadata service.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.JobDeploymentKind": { + "description": "* `BUNDLE`: The job is managed by Databricks Asset Bundle.\n* `SYSTEM_MANAGED`: The job is managed by Databricks and is read-only.", + "enum": [ + "BUNDLE", + "SYSTEM_MANAGED" + ], + "enum_launch_stages": { + "BUNDLE": "GA", + "SYSTEM_MANAGED": "PUBLIC_BETA" + }, + "enum_descriptions": { + "BUNDLE": "The job is managed by Databricks Asset Bundle.", + "SYSTEM_MANAGED": "The job is managed by \u003cDatabricks\u003e and is read-only." + } + }, + "jobs.JobEditMode": { + "description": "Edit mode of the job.\n\n* `UI_LOCKED`: The job is in a locked UI state and cannot be modified.\n* `EDITABLE`: The job is in an editable state and can be modified.", + "enum": [ + "UI_LOCKED", + "EDITABLE" + ], + "enum_launch_stages": { + "EDITABLE": "GA", + "UI_LOCKED": "GA" + }, + "enum_descriptions": { + "EDITABLE": "The job is in an editable state and can be modified.", + "UI_LOCKED": "The job is in a locked UI state and cannot be modified." + } + }, + "jobs.JobEmailNotifications": { + "fields": { + "no_alert_for_skipped_runs": { + "description": "If true, do not send email to recipients specified in `on_failure` if the run is skipped.\nThis field is `deprecated`. Please use the `notification_settings.no_alert_for_skipped_runs` field.", + "deprecated": true, + "launch_stage": "GA" + }, + "on_duration_warning_threshold_exceeded": { + "description": "A list of email addresses to be notified when the duration of a run exceeds the threshold specified for the `RUN_DURATION_SECONDS` metric in the `health` field. If no rule for the `RUN_DURATION_SECONDS` metric is specified in the `health` field for the job, notifications are not sent.", + "launch_stage": "GA" + }, + "on_failure": { + "description": "A list of email addresses to be notified when a run unsuccessfully completes. A run is considered to have completed unsuccessfully if it ends with an `INTERNAL_ERROR` `life_cycle_state` or a `FAILED`, or `TIMED_OUT` result_state. If this is not specified on job creation, reset, or update the list is empty, and notifications are not sent.", + "launch_stage": "GA" + }, + "on_maintenance_complete": { + "description": "A list of email addresses to notify when platform-initiated maintenance completes for a continuous job.", + "launch_stage": "GA" + }, + "on_maintenance_start": { + "description": "A list of email addresses to notify when platform-initiated maintenance starts for a continuous job.", + "launch_stage": "GA" + }, + "on_start": { + "description": "A list of email addresses to be notified when a run begins. If not specified on job creation, reset, or update, the list is empty, and notifications are not sent.", + "launch_stage": "GA" + }, + "on_streaming_backlog_exceeded": { + "description": "A list of email addresses to notify when any streaming backlog thresholds are exceeded for any stream.\nStreaming backlog thresholds can be set in the `health` field using the following metrics: `STREAMING_BACKLOG_BYTES`, `STREAMING_BACKLOG_RECORDS`, `STREAMING_BACKLOG_SECONDS`, or `STREAMING_BACKLOG_FILES`.\nAlerting is based on the 10-minute average of these metrics. If the issue persists, notifications are resent every 30 minutes.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "on_success": { + "description": "A list of email addresses to be notified when a run successfully completes. A run is considered to have completed successfully if it ends with a `TERMINATED` `life_cycle_state` and a `SUCCESS` result_state. If not specified on job creation, reset, or update, the list is empty, and notifications are not sent.", + "launch_stage": "GA" + } + } + }, + "jobs.JobEnvironment": { + "fields": { + "environment_key": { + "description": "The key of an environment. It has to be unique within a job.", + "launch_stage": "GA" + }, + "spec": { + "ref": "compute.Environment", + "launch_stage": "GA" + } + } + }, + "jobs.JobEnvironmentVariables": { + "description": "A named environment-variable entry, defined once at the job level and\nreferenced by key from one or more tasks. Entries live on\n`JobSettings.environment_variables`, and tasks select one via\n`TaskSettings.environment_variables_key`.", + "fields": { + "environment_variables_key": { + "description": "Identifier for this entry. Must be unique within\n`JobSettings.environment_variables`. Tasks reference it from\n`TaskSettings.environment_variables_key`.", + "launch_stage": "PUBLIC_BETA" + }, + "spec": { + "description": "The environment variable specification.", + "ref": "jobs.JobEnvironmentVariablesSpec", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "jobs.JobEnvironmentVariablesSpec": { + "description": "The environment variables and files associated with a job environment\nvariable entry. Runtime environment variables override inline `variables`,\nwhich override values from `files`, on duplicate keys.", + "fields": { + "files": { + "description": "Workspace (`/Workspace/...`) or UC Volumes (`/Volumes/...`) paths to\n`.env` files. Maximum 5 files. Files are read, parsed, and merged at\ntask execution time, not at job creation or update API call time.\n\nFile format: each line containing a variable must be exactly `KEY=VALUE`.\nEmpty and whitespace-only lines, and lines beginning with `#`, are ignored.\nKeys must match the same regex as inlined variable names\n(`^[A-Za-z_][A-Za-z0-9_]*$`); the value continues to the end of the line.\nNo other syntax is supported — no inline comments, no quoted values, no\nescape sequences, no variable interpolation. Any other line that does not\nmatch the `KEY=VALUE` shape fails the run.\n\nSize limits: maximum 32,768 bytes (32 KiB) per file on disk;\nmaximum 1,024 bytes (1 KiB) per `KEY=VALUE` line combined.\nFiles or lines exceeding these limits fail the run.\n\nOn a duplicate key, the later file wins; `variables` override values\nfrom any file.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "variables": { + "description": "Environment variables specified directly as key/value pairs. Maximum 20\nentries.\n\nEach key must be 1 to 256 characters and match\n`^[A-Za-z_][A-Za-z0-9_]*$`: it must start with an ASCII letter or\nunderscore and contain only ASCII letters, digits, and underscores. Each\nvalue can be any Unicode string of up to 512 characters, including an\nempty string.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "jobs.JobNotificationSettings": { + "fields": { + "no_alert_for_canceled_runs": { + "description": "If true, do not send notifications to recipients specified in `on_failure` if the run is canceled.", + "launch_stage": "GA" + }, + "no_alert_for_skipped_runs": { + "description": "If true, do not send notifications to recipients specified in `on_failure` if the run is skipped.", + "launch_stage": "GA" + } + } + }, + "jobs.JobParameter": { + "fields": { + "default": { + "description": "The optional default value of the parameter", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the parameter", + "launch_stage": "GA" + }, + "value": { + "description": "The value used in the run", + "launch_stage": "GA" + } + } + }, + "jobs.JobParameterDefinition": { + "fields": { + "default": { + "description": "Default value of the parameter.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the defined parameter. May only contain alphanumeric characters, `_`, `-`, and `.`", + "launch_stage": "GA" + } + } + }, + "jobs.JobPermission": { + "fields": { + "inherited": { + "launch_stage": "GA" + }, + "inherited_from_object": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "jobs.JobPermissionLevel", + "launch_stage": "GA" + } + } + }, + "jobs.JobPermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_MANAGE", + "IS_OWNER", + "CAN_MANAGE_RUN", + "CAN_VIEW" + ] + }, + "jobs.JobPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "launch_stage": "GA" + }, + "object_type": { + "launch_stage": "GA" + } + } + }, + "jobs.JobPermissionsDescription": { + "fields": { + "description": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "jobs.JobPermissionLevel", + "launch_stage": "GA" + } + } + }, + "jobs.JobPermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "jobs.JobRunAs": { + "description": "Write-only setting. Specifies the user, service principal, or group that the job runs as. If not specified, the job runs as the user who created the job.\n\nOne of `user_name`, `service_principal_name`, or `group_name` should be specified. If not, an error is thrown.", + "fields": { + "group_name": { + "description": "Group name of an account group assigned to the workspace. When set, all tasks run as the group and the group's permissions are used for data access. Setting this field requires being a member of the group, or having the `Assume` permission on the group.", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Application ID of an active service principal. Setting this field requires the `servicePrincipal/user` role.", + "launch_stage": "GA" + }, + "user_name": { + "description": "The email of an active workspace user. Non-admin users can only set this field to their own email.", + "launch_stage": "GA" + } + } + }, + "jobs.JobSettings": { + "fields": { + "budget_policy_id": { + "description": "The id of the user specified budget policy to use for this job.\nIf not specified, a default budget policy may be applied when creating or modifying the job.\nSee `effective_budget_policy_id` for the budget policy used by this workload.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "continuous": { + "description": "An optional continuous property for this job. The continuous property will ensure that there is always one run executing. Only one of `schedule` and `continuous` can be used.\n\nPipelines started by a continuous job also run continuously, regardless of their own pipeline mode setting.", + "ref": "jobs.Continuous", + "launch_stage": "GA" + }, + "deployment": { + "description": "Deployment information for jobs managed by external sources.", + "ref": "jobs.JobDeployment", + "launch_stage": "GA" + }, + "description": { + "description": "An optional description for the job. The maximum length is 27700 characters in UTF-8 encoding.", + "launch_stage": "GA" + }, + "duration_target": { + "description": "The window the run aims to finish within, in hours, for a Cost-optimized serverless run.\nRequired only when `performance_target` is `COST_OPTIMIZED`. Must be one of the\nsupported values: `NO_FLEXIBILITY`, `4h`, `12h`, `24h`, `72h`. `NO_FLEXIBILITY` means the run\nuses the default cost-optimized performance level without additional cost-saving optimizations.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "edit_mode": { + "description": "Edit mode of the job.\n\n* `UI_LOCKED`: The job is in a locked UI state and cannot be modified.\n* `EDITABLE`: The job is in an editable state and can be modified.", + "ref": "jobs.JobEditMode", + "launch_stage": "GA" + }, + "email_notifications": { + "description": "An optional set of email addresses that is notified when runs of this job begin or complete as well as when this job is deleted.", + "ref": "jobs.JobEmailNotifications", + "launch_stage": "GA" + }, + "environment_variables": { + "description": "Named environment-variable entries that tasks can reference by key from\n`TaskSettings.environment_variables_key`. Each entry's `spec` holds inline\n`variables` and optional `.env` `files`. Maximum 10 entries per job. A task\ncan reference at most one entry from this list.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "environments": { + "description": "A list of task execution environment specifications that can be referenced by tasks that use serverless compute or a compute resource that uses Environments mode.\n\nFor notebook tasks that use serverless compute or a compute resource that uses Environments mode, if the environment_key is not specified, the notebook environment will be used if present. If a jobs environment is specified, it will override the notebook environment.\nFor other tasks that use serverless compute or a compute resource that uses Environments mode, the task environment is required to be specified using environment_key in the task settings.", + "launch_stage": "GA" + }, + "format": { + "description": "Used to tell what is the format of the job. This field is ignored in Create/Update/Reset calls. When using the Jobs API 2.1 this value is always set to `\"MULTI_TASK\"`.", + "ref": "jobs.Format", + "deprecated": true, + "launch_stage": "GA" + }, + "git_source": { + "description": "An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks.\n\nIf `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task.\n\nNote: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job.", + "ref": "jobs.GitSource", + "launch_stage": "GA" + }, + "health": { + "ref": "jobs.JobsHealthRules", + "launch_stage": "GA" + }, + "job_clusters": { + "description": "A list of job cluster specifications that can be shared and reused by tasks of this job. Libraries cannot be declared in a shared job cluster. You must declare dependent libraries in task settings.", + "launch_stage": "GA" + }, + "max_concurrent_runs": { + "description": "An optional maximum allowed number of concurrent runs of the job.\nSet this value if you want to be able to execute multiple runs of the same job concurrently.\nThis is useful for example if you trigger your job on a frequent schedule and want to allow consecutive runs to overlap with each other, or if you want to trigger multiple runs which differ by their input parameters.\nThis setting affects only new runs. For example, suppose the job’s concurrency is 4 and there are 4 concurrent active runs. Then setting the concurrency to 3 won’t kill any of the active runs.\nHowever, from then on, new runs are skipped unless there are fewer than 3 active runs.\nThis value cannot exceed 1000. Setting this value to `0` causes all new runs to be skipped.", + "launch_stage": "GA" + }, + "name": { + "description": "An optional name for the job. The maximum length is 4096 bytes in UTF-8 encoding.", + "launch_stage": "GA" + }, + "notification_settings": { + "description": "Optional notification settings that are used when sending notifications to each of the `email_notifications` and `webhook_notifications` for this job.", + "ref": "jobs.JobNotificationSettings", + "launch_stage": "GA" + }, + "parameters": { + "description": "Job-level parameter definitions", + "launch_stage": "GA" + }, + "parent_path": { + "description": "Path of the job parent folder in workspace file tree. If absent, the job doesn't have a workspace object.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "performance_target": { + "description": "The performance mode on a serverless job. This field determines the level of compute performance or cost-efficiency for the run.\nThe performance target does not apply to tasks that run on Serverless GPU compute.\n\n* `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance.\n* `STANDARD`: Enables cost-efficient execution of serverless workloads.\n* `COST_OPTIMIZED`: Enables lower job costs by optimizing compute for your selected target duration time. Must provide a duration target.", + "ref": "jobs.PerformanceTarget", + "launch_stage": "GA" + }, + "queue": { + "description": "The queue settings of the job.", + "ref": "jobs.QueueSettings", + "launch_stage": "GA" + }, + "run_as": { + "description": "The user or service principal that the job runs as, if specified in the request.\nThis field indicates the explicit configuration of `run_as` for the job.\nTo find the value in all cases, explicit or implicit, use `run_as_user_name`.", + "ref": "jobs.JobRunAs", + "launch_stage": "GA" + }, + "schedule": { + "description": "An optional periodic schedule for this job. The default behavior is that the job only runs when triggered by clicking “Run Now” in the Jobs UI or sending an API request to `runNow`.", + "ref": "jobs.CronSchedule", + "launch_stage": "GA" + }, + "tags": { + "description": "A map of tags associated with the job. These are forwarded to the cluster as cluster tags for jobs clusters, and are subject to the same limitations as cluster tags. A maximum of 25 tags can be added to the job.", + "launch_stage": "GA" + }, + "tasks": { + "description": "A list of task specifications to be executed by this job.\nIt supports up to 1000 elements in write endpoints (:method:jobs/create, :method:jobs/reset, :method:jobs/update, :method:jobs/submit).\nRead endpoints return only 100 tasks. If more than 100 tasks are available, you can paginate through them using :method:jobs/get. Use the `next_page_token` field at the object root to determine if more results are available.", + "launch_stage": "GA" + }, + "timeout_seconds": { + "description": "An optional timeout applied to each run of this job. A value of `0` means no timeout.", + "launch_stage": "GA" + }, + "trigger": { + "description": "A configuration to trigger a run when certain conditions are met. The default behavior is that the job runs only when triggered by clicking “Run Now” in the Jobs UI or sending an API request to `runNow`.", + "ref": "jobs.TriggerSettings", + "launch_stage": "GA" + }, + "triggers": { + "description": "List of triggers attached to this job. A run starts when any active trigger evaluates to true. Cannot be set in\nthe same request as the legacy `schedule`, `trigger`, or `continuous` fields. Gated behind the \"Multiple Triggers\" feature preview.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "usage_policy_id": { + "description": "The id of the user specified usage policy to use for this job.\nIf not specified, a default usage policy may be applied when creating or modifying the job.\nSee `effective_usage_policy_id` for the usage policy used by this workload.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "webhook_notifications": { + "description": "A collection of system notification IDs to notify when runs of this job begin or complete.", + "ref": "jobs.WebhookNotifications", + "launch_stage": "GA" + } + } + }, + "jobs.JobSource": { + "description": "The source of the job specification in the remote repository when the job is source controlled.", + "fields": { + "dirty_state": { + "description": "Dirty state indicates the job is not fully synced with the job specification in the remote repository.\n\nPossible values are:\n* `NOT_SYNCED`: The job is not yet synced with the remote job specification. Import the remote job specification from UI to make the job fully synced.\n* `DISCONNECTED`: The job is temporary disconnected from the remote job specification and is allowed for live edit. Import the remote job specification again from UI to make the job fully synced.", + "ref": "jobs.JobSourceDirtyState", + "launch_stage": "PRIVATE_PREVIEW" + }, + "import_from_git_branch": { + "description": "Name of the branch which the job is imported from.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "job_config_path": { + "description": "Path of the job YAML file that contains the job specification.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.JobSourceDirtyState": { + "description": "Dirty state indicates the job is not fully synced with the job specification\nin the remote repository.\n\nPossible values are:\n* `NOT_SYNCED`: The job is not yet synced with the remote job specification. Import the remote job specification from UI to make the job fully synced.\n* `DISCONNECTED`: The job is temporary disconnected from the remote job specification and is allowed for live edit. Import the remote job specification again from UI to make the job fully synced.", + "enum": [ + "NOT_SYNCED", + "DISCONNECTED" + ], + "enum_launch_stages": { + "DISCONNECTED": "PRIVATE_PREVIEW", + "NOT_SYNCED": "PRIVATE_PREVIEW" + }, + "enum_descriptions": { + "DISCONNECTED": "The job is temporary disconnected from the remote job specification and is allowed for live edit. Import the remote job specification again from UI to make the job fully synced.", + "NOT_SYNCED": "The job is not yet synced with the remote job specification. Import the remote job specification from UI to make the job fully synced." + } + }, + "jobs.JobsHealthMetric": { + "description": "Specifies the health metric that is being evaluated for a particular health rule.\n\n* `RUN_DURATION_SECONDS`: Expected total time for a run in seconds.\n* `STREAMING_BACKLOG_BYTES`: An estimate of the maximum bytes of data waiting to be consumed across all streams. This metric is in Public Preview.\n* `STREAMING_BACKLOG_RECORDS`: An estimate of the maximum offset lag across all streams. This metric is in Public Preview.\n* `STREAMING_BACKLOG_SECONDS`: An estimate of the maximum consumer delay across all streams. This metric is in Public Preview.\n* `STREAMING_BACKLOG_FILES`: An estimate of the maximum number of outstanding files across all streams. This metric is in Public Preview.", + "enum": [ + "RUN_DURATION_SECONDS", + "STREAMING_BACKLOG_BYTES", + "STREAMING_BACKLOG_RECORDS", + "STREAMING_BACKLOG_SECONDS", + "STREAMING_BACKLOG_FILES" + ], + "enum_launch_stages": { + "RUN_DURATION_SECONDS": "GA", + "STREAMING_BACKLOG_BYTES": "GA", + "STREAMING_BACKLOG_FILES": "GA", + "STREAMING_BACKLOG_RECORDS": "GA", + "STREAMING_BACKLOG_SECONDS": "GA" + }, + "enum_descriptions": { + "RUN_DURATION_SECONDS": "Expected total time for a run in seconds.", + "STREAMING_BACKLOG_BYTES": "An estimate of the maximum bytes of data waiting to be consumed across all streams. This metric is in Public Preview.", + "STREAMING_BACKLOG_FILES": "An estimate of the maximum number of outstanding files across all streams. This metric is in Public Preview.", + "STREAMING_BACKLOG_RECORDS": "An estimate of the maximum offset lag across all streams. This metric is in Public Preview.", + "STREAMING_BACKLOG_SECONDS": "An estimate of the maximum consumer delay across all streams. This metric is in Public Preview." + } + }, + "jobs.JobsHealthOperator": { + "description": "Specifies the operator used to compare the health metric value with the specified threshold.", + "enum": [ + "GREATER_THAN" + ], + "enum_launch_stages": { + "GREATER_THAN": "GA" + } + }, + "jobs.JobsHealthRule": { + "fields": { + "metric": { + "ref": "jobs.JobsHealthMetric", + "launch_stage": "GA" + }, + "op": { + "ref": "jobs.JobsHealthOperator", + "launch_stage": "GA" + }, + "value": { + "description": "Specifies the threshold value that the health metric should obey to satisfy the health rule.", + "launch_stage": "GA" + } + } + }, + "jobs.JobsHealthRules": { + "description": "An optional set of health rules that can be defined for this job.", + "fields": { + "rules": { + "launch_stage": "GA" + } + } + }, + "jobs.ListJobComplianceForPolicyResponse": { + "fields": { + "jobs": { + "description": "A list of jobs and their policy compliance statuses.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "This field represents the pagination token to retrieve the next page of results.\nIf this field is not in the response, it means no further results for the request.", + "launch_stage": "GA" + }, + "prev_page_token": { + "description": "This field represents the pagination token to retrieve the previous page of results.\nIf this field is not in the response, it means no further results for the request.", + "launch_stage": "GA" + } + } + }, + "jobs.ListJobComplianceRequest": { + "fields": { + "page_size": { + "description": "Use this field to specify the maximum number of results to be returned by the server.\nThe server may further constrain the maximum number of results returned in a\nsingle page.", + "launch_stage": "GA" + }, + "page_token": { + "description": "A page token that can be used to navigate to the next page or previous page as\nreturned by `next_page_token` or `prev_page_token`.", + "launch_stage": "GA" + }, + "policy_id": { + "description": "Canonical unique identifier for the cluster policy.", + "launch_stage": "GA" + } + } + }, + "jobs.ListJobsRequest": { + "fields": { + "expand_tasks": { + "description": "Whether to include task and cluster details in the response. Note that only the first 100 elements will be shown.\nUse :method:jobs/get to paginate through all tasks and clusters.", + "launch_stage": "GA" + }, + "limit": { + "description": "The number of jobs to return. This value must be greater than 0 and less or equal to 100. The default value is 20.", + "launch_stage": "GA" + }, + "name": { + "description": "A filter on the list based on the exact (case insensitive) job name.", + "launch_stage": "GA" + }, + "offset": { + "description": "The offset of the first job to return, relative to the most recently created job.\nDeprecated since June 2023. Use `page_token` to iterate through the pages instead.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "page_token": { + "description": "Use `next_page_token` or `prev_page_token` returned from the previous request to list the next or previous page of jobs respectively.", + "launch_stage": "GA" + } + } + }, + "jobs.ListJobsResponse": { + "description": "List of jobs was retrieved successfully.", + "fields": { + "has_more": { + "description": "If true, additional jobs matching the provided filter are available for listing.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "jobs": { + "description": "The list of jobs. Only included in the response if there are jobs to list.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "A token that can be used to list the next page of jobs (if applicable).", + "launch_stage": "GA" + }, + "prev_page_token": { + "description": "A token that can be used to list the previous page of jobs (if applicable).", + "launch_stage": "GA" + } + } + }, + "jobs.ListRunsRequest": { + "fields": { + "active_only": { + "description": "If active_only is `true`, only active runs are included in the results; otherwise,\nlists both active and completed runs. An active run is a run in the `QUEUED`, `PENDING`,\n`RUNNING`, or `TERMINATING`. This field cannot be `true` when completed_only is `true`.", + "launch_stage": "GA" + }, + "completed_only": { + "description": "If completed_only is `true`, only completed runs are included in the results;\notherwise, lists both active and completed runs. This field cannot be `true` when\nactive_only is `true`.", + "launch_stage": "GA" + }, + "expand_tasks": { + "description": "Whether to include task and cluster details in the response. Note that only the first 100 elements will be shown.\nUse :method:jobs/getrun to paginate through all tasks and clusters.", + "launch_stage": "GA" + }, + "job_id": { + "description": "The job for which to list runs. If omitted, the Jobs service lists runs from all jobs.", + "launch_stage": "GA" + }, + "limit": { + "description": "The number of runs to return. This value must be greater than 0 and less than 25.\nThe default value is 20. If a request specifies a limit of 0, the service instead\nuses the maximum limit.", + "launch_stage": "GA" + }, + "offset": { + "description": "The offset of the first run to return, relative to the most recent run.\nDeprecated since June 2023. Use `page_token` to iterate through the pages instead.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "page_token": { + "description": "Use `next_page_token` or `prev_page_token` returned from the previous request to list the next or previous page of runs respectively.", + "launch_stage": "GA" + }, + "run_type": { + "description": "The type of runs to return. For a description of run types, see :method:jobs/getRun.", + "ref": "jobs.RunType", + "launch_stage": "GA" + }, + "start_time_from": { + "description": "Show runs that started _at or after_ this value. The value must be a UTC timestamp\nin milliseconds. Can be combined with _start_time_to_ to filter by a time range.", + "launch_stage": "GA" + }, + "start_time_to": { + "description": "Show runs that started _at or before_ this value. The value must be a UTC timestamp\nin milliseconds. Can be combined with _start_time_from_ to filter by a time range.", + "launch_stage": "GA" + } + } + }, + "jobs.ListRunsResponse": { + "description": "List of runs was retrieved successfully.", + "fields": { + "has_more": { + "description": "If true, additional runs matching the provided filter are available for listing.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "next_page_token": { + "description": "A token that can be used to list the next page of runs (if applicable).", + "launch_stage": "GA" + }, + "prev_page_token": { + "description": "A token that can be used to list the previous page of runs (if applicable).", + "launch_stage": "GA" + }, + "runs": { + "description": "A list of runs, from most recently started to least. Only included in the response if there are runs to list.", + "launch_stage": "GA" + } + } + }, + "jobs.MaintenanceWindow": { + "description": "A recurring weekly time window during which platform-initiated maintenance is\nallowed to run for a continuous job.", + "fields": { + "day_of_week": { + "description": "The day of week on which maintenance is allowed to happen. This field is required.", + "ref": "jobs.DayOfWeek", + "launch_stage": "GA" + }, + "start_hour": { + "description": "An integer between 0 and 23 denoting the start hour for the maintenance window in the 24-hour day.\nPlatform-initiated maintenance is triggered only within a one-hour window starting at this hour.\nThis field is required.", + "launch_stage": "GA" + }, + "timezone_id": { + "description": "A Java timezone ID. The maintenance window is resolved with respect to this timezone. See [Java TimeZone](https://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html) for details. This field is required.", + "launch_stage": "GA" + } + } + }, + "jobs.ModelTriggerConfiguration": { + "fields": { + "aliases": { + "description": "Aliases of the model versions to monitor. Can only be used in conjunction with condition MODEL_ALIAS_SET.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "condition": { + "description": "The condition based on which to trigger a job run.", + "ref": "jobs.ModelTriggerConfigurationCondition", + "launch_stage": "PRIVATE_PREVIEW" + }, + "min_time_between_triggers_seconds": { + "description": "If set, the trigger starts a run only after the specified amount of time has passed since\nthe last time the trigger fired. The minimum allowed value is 60 seconds.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "securable_name": { + "description": "Name of the securable to monitor (\"mycatalog.myschema.mymodel\" in the case of model-level triggers,\n\"mycatalog.myschema\" in the case of schema-level triggers) or empty in the case of metastore-level triggers.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "wait_after_last_change_seconds": { + "description": "If set, the trigger starts a run only after no model updates have occurred for the specified time\nand can be used to wait for a series of model updates before triggering a run. The\nminimum allowed value is 60 seconds.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.ModelTriggerConfigurationCondition": { + "enum": [ + "MODEL_CREATED", + "MODEL_VERSION_READY", + "MODEL_ALIAS_SET" + ], + "enum_launch_stages": { + "MODEL_ALIAS_SET": "PRIVATE_PREVIEW", + "MODEL_CREATED": "PRIVATE_PREVIEW", + "MODEL_VERSION_READY": "PRIVATE_PREVIEW" + } + }, + "jobs.ModelTriggerState": { + "description": "Runtime state for a model trigger. Currently empty because model triggers do not\nexpose any trigger-specific runtime state." + }, + "jobs.NotebookOutput": { + "fields": { + "result": { + "description": "The value passed to [dbutils.notebook.exit()](/notebooks/notebook-workflows.html#notebook-workflows-exit).\nDatabricks restricts this API to return the first 5 MB of the value. For a larger result, your job can store the results in a cloud storage service.\nThis field is absent if `dbutils.notebook.exit()` was never called.", + "launch_stage": "GA" + }, + "truncated": { + "description": "Whether or not the result was truncated.", + "launch_stage": "GA" + } + } + }, + "jobs.NotebookTask": { + "fields": { + "base_parameters": { + "description": "Base parameters to be used for each run of this job. If the run is initiated by a call to :method:jobs/run\nNow with parameters specified, the two parameters maps are merged. If the same key is specified in\n`base_parameters` and in `run-now`, the value from `run-now` is used.\nUse [Task parameter variables](https://docs.databricks.com/jobs.html#parameter-variables) to set parameters containing information about job runs.\n\nIf the notebook takes a parameter that is not specified in the job’s `base_parameters` or the `run-now` override parameters,\nthe default value from the notebook is used.\n\nRetrieve these parameters in a notebook using [dbutils.widgets.get](https://docs.databricks.com/dev-tools/databricks-utils.html#dbutils-widgets).\n\nThe JSON representation of this field cannot exceed 1MB.", + "launch_stage": "GA" + }, + "notebook_path": { + "description": "The path of the notebook to be run in the Databricks workspace or remote repository.\nFor notebooks stored in the Databricks workspace, the path must be absolute and begin with a slash.\nFor notebooks stored in a remote repository, the path must be relative. This field is required.", + "launch_stage": "GA" + }, + "source": { + "description": "Optional location type of the notebook. When set to `WORKSPACE`, the notebook will be retrieved from the local Databricks workspace. When set to `GIT`, the notebook will be retrieved from a Git repository\ndefined in `git_source`. If the value is empty, the task will use `GIT` if `git_source` is defined and `WORKSPACE` otherwise.\n* `WORKSPACE`: Notebook is located in Databricks workspace.\n* `GIT`: Notebook is located in cloud Git provider.", + "ref": "jobs.Source", + "launch_stage": "GA" + }, + "warehouse_id": { + "description": "Optional `warehouse_id` to run the notebook on a SQL warehouse. Classic SQL warehouses are NOT supported, please use serverless or pro SQL warehouses.\n\nNote that SQL warehouses only support SQL cells; if the notebook contains non-SQL cells, the run will fail.", + "launch_stage": "GA" + } + } + }, + "jobs.OutputSchemaInfo": { + "description": "Stores the catalog name, schema name, and the output schema expiration time for the clean room run.", + "fields": { + "catalog_name": { + "launch_stage": "GA" + }, + "expiration_time": { + "description": "The expiration time for the output schema as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "schema_name": { + "launch_stage": "GA" + } + } + }, + "jobs.PauseStatus": { + "enum": [ + "UNPAUSED", + "PAUSED" + ], + "enum_launch_stages": { + "PAUSED": "GA", + "UNPAUSED": "GA" + } + }, + "jobs.PerTriggerState": { + "description": "Per-trigger runtime state for the multi-trigger surface. Mirrors `TriggerConfiguration`'s\ntrigger-type variants 1:1; each entry sets exactly one variant matching the corresponding\ntrigger's type. Variants with no runtime state today (`schedule`, `model`) are emitted as\nempty messages.", + "fields": { + "continuous": { + "ref": "jobs.ContinuousTriggerState", + "launch_stage": "PUBLIC_BETA" + }, + "file_arrival": { + "ref": "jobs.FileArrivalTriggerState", + "launch_stage": "PUBLIC_BETA" + }, + "model": { + "ref": "jobs.ModelTriggerState", + "launch_stage": "PUBLIC_BETA" + }, + "pause_status": { + "description": "Whether this trigger is paused or not. Mirrors the configured pause_status.", + "ref": "jobs.PauseStatus", + "launch_stage": "PUBLIC_BETA" + }, + "periodic": { + "ref": "jobs.PeriodicTriggerState", + "launch_stage": "PUBLIC_BETA" + }, + "schedule": { + "ref": "jobs.ScheduleTriggerState", + "launch_stage": "PUBLIC_BETA" + }, + "sql_condition": { + "description": "State for SQL condition evaluation, can coexist with other trigger states.", + "ref": "jobs.SqlConditionState", + "launch_stage": "PRIVATE_PREVIEW" + }, + "table_update": { + "ref": "jobs.TableTriggerState", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "jobs.PerformanceTarget": { + "description": "PerformanceTarget defines how performant (lower latency) or cost efficient the execution of run on serverless compute should be.\nThe performance mode on the job or pipeline should map to a performance setting that is passed to Cluster Manager\n(see cluster-common PerformanceTarget).", + "enum": [ + "PERFORMANCE_OPTIMIZED", + "STANDARD" + ], + "enum_launch_stages": { + "PERFORMANCE_OPTIMIZED": "GA", + "STANDARD": "GA" + } + }, + "jobs.PeriodicTriggerConfiguration": { + "fields": { + "interval": { + "description": "The interval at which the trigger should run.", + "launch_stage": "GA" + }, + "unit": { + "description": "The unit of time for the interval.", + "ref": "jobs.PeriodicTriggerConfigurationTimeUnit", + "launch_stage": "GA" + } + } + }, + "jobs.PeriodicTriggerConfigurationTimeUnit": { + "enum": [ + "HOURS", + "DAYS", + "WEEKS", + "MINUTES" + ], + "enum_launch_stages": { + "DAYS": "GA", + "HOURS": "GA", + "MINUTES": "GA", + "WEEKS": "GA" + } + }, + "jobs.PeriodicTriggerState": { + "fields": { + "next_run_time": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "jobs.PipelineParams": { + "fields": { + "full_refresh": { + "description": "If true, triggers a full refresh on the spark declarative pipeline.", + "launch_stage": "GA" + }, + "full_refresh_selection": { + "description": "A list of tables to update with fullRefresh.", + "launch_stage": "GA" + }, + "refresh_flow_selection": { + "description": "Flow names to selectively refresh. These are unioned with other selective refresh\noptions (refresh_selection, full_refresh_selection) to determine the final set of flows to refresh.", + "launch_stage": "GA" + }, + "refresh_selection": { + "description": "A list of tables to update without fullRefresh.", + "launch_stage": "GA" + }, + "reset_checkpoint_selection": { + "description": "A list of streaming flows to reset checkpoints without clearing data.", + "launch_stage": "GA" + } + } + }, + "jobs.PipelineTask": { + "fields": { + "full_refresh": { + "description": "If true, triggers a full refresh on the spark declarative pipeline.", + "launch_stage": "GA" + }, + "full_refresh_selection": { + "description": "A list of tables to update with fullRefresh.", + "launch_stage": "GA" + }, + "parameters": { + "description": "Key/value-map of parameters passed to the pipeline execution.\nLimited to 10k characters in total.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "pipeline_id": { + "description": "The full name of the pipeline task to execute.", + "launch_stage": "GA" + }, + "refresh_flow_selection": { + "description": "Flow names to selectively refresh. These are unioned with other selective refresh\noptions (refresh_selection, full_refresh_selection) to determine the final set of flows to refresh.", + "launch_stage": "GA" + }, + "refresh_selection": { + "description": "A list of tables to update without fullRefresh.", + "launch_stage": "GA" + }, + "reset_checkpoint_selection": { + "description": "A list of streaming flows to reset checkpoints without clearing data.", + "launch_stage": "GA" + } + } + }, + "jobs.PowerBiModel": { + "fields": { + "authentication_method": { + "description": "How the published Power BI model authenticates to Databricks", + "ref": "jobs.AuthenticationMethod", + "launch_stage": "PUBLIC_PREVIEW" + }, + "model_name": { + "description": "The name of the Power BI model", + "launch_stage": "PUBLIC_PREVIEW" + }, + "overwrite_existing": { + "description": "Whether to overwrite existing Power BI models", + "launch_stage": "PUBLIC_PREVIEW" + }, + "storage_mode": { + "description": "The default storage mode of the Power BI model", + "ref": "jobs.StorageMode", + "launch_stage": "PUBLIC_PREVIEW" + }, + "workspace_name": { + "description": "The name of the Power BI workspace of the model", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "jobs.PowerBiTable": { + "fields": { + "catalog": { + "description": "The catalog name in Databricks", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "The table name in Databricks", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schema": { + "description": "The schema name in Databricks", + "launch_stage": "PUBLIC_PREVIEW" + }, + "storage_mode": { + "description": "The Power BI storage mode of the table", + "ref": "jobs.StorageMode", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "jobs.PowerBiTask": { + "fields": { + "connection_resource_name": { + "description": "The resource name of the UC connection to authenticate from Databricks to Power BI", + "launch_stage": "PUBLIC_PREVIEW" + }, + "power_bi_model": { + "description": "The semantic model to update", + "ref": "jobs.PowerBiModel", + "launch_stage": "PUBLIC_PREVIEW" + }, + "refresh_after_update": { + "description": "Whether the model should be refreshed after the update", + "launch_stage": "PUBLIC_PREVIEW" + }, + "tables": { + "description": "The tables to be exported to Power BI", + "launch_stage": "PUBLIC_PREVIEW" + }, + "warehouse_id": { + "description": "The SQL warehouse ID to use as the Power BI data source", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "jobs.PythonOperatorTask": { + "fields": { + "main": { + "description": "Fully qualified name of the main class or function.\nFor example, `my_project.my_function` or `my_project.MyOperator`.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "parameters": { + "description": "An ordered list of task parameters.\nTODO(JOBS-30885): Add limits for parameters.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.PythonOperatorTaskParameter": { + "fields": { + "name": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "value": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.PythonWheelTask": { + "fields": { + "entry_point": { + "description": "Named entry point to use, if it does not exist in the metadata of the package it executes the function from the package directly using `$packageName.$entryPoint()`", + "launch_stage": "GA" + }, + "named_parameters": { + "description": "Command-line parameters passed to Python wheel task in the form of `[\"--name=task\", \"--data=dbfs:/path/to/data.json\"]`. Leave it empty if `parameters` is not null.", + "launch_stage": "GA" + }, + "package_name": { + "description": "Name of the package to execute", + "launch_stage": "GA" + }, + "parameters": { + "description": "Command-line parameters passed to Python wheel task. Leave it empty if `named_parameters` is not null.", + "launch_stage": "GA" + } + } + }, + "jobs.QueueDetails": { + "fields": { + "code": { + "ref": "jobs.QueueDetailsCodeCode", + "launch_stage": "GA" + }, + "message": { + "description": "A descriptive message with the queuing details. This field is unstructured, and its exact format is subject\nto change.", + "launch_stage": "GA" + } + } + }, + "jobs.QueueDetailsCodeCode": { + "description": "The reason for queuing the run.\n* `ACTIVE_RUNS_LIMIT_REACHED`: The run was queued due to reaching the workspace limit of active task runs.\n* `MAX_CONCURRENT_RUNS_REACHED`: The run was queued due to reaching the per-job limit of concurrent job runs.\n* `ACTIVE_RUN_JOB_TASKS_LIMIT_REACHED`: The run was queued due to reaching the workspace limit of active run job tasks.", + "enum": [ + "ACTIVE_RUNS_LIMIT_REACHED", + "MAX_CONCURRENT_RUNS_REACHED", + "ACTIVE_RUN_JOB_TASKS_LIMIT_REACHED" + ], + "enum_launch_stages": { + "ACTIVE_RUNS_LIMIT_REACHED": "GA", + "ACTIVE_RUN_JOB_TASKS_LIMIT_REACHED": "GA", + "MAX_CONCURRENT_RUNS_REACHED": "GA" + }, + "enum_descriptions": { + "ACTIVE_RUNS_LIMIT_REACHED": "The run was queued due to reaching the workspace limit of active task runs.", + "ACTIVE_RUN_JOB_TASKS_LIMIT_REACHED": "The run was queued due to reaching the workspace limit of active run job tasks.", + "MAX_CONCURRENT_RUNS_REACHED": "The run was queued due to reaching the per-job limit of concurrent job runs." + } + }, + "jobs.QueueSettings": { + "fields": { + "enabled": { + "description": "If true, enable queueing for the job. This is a required field.", + "launch_stage": "GA" + } + } + }, + "jobs.RepairHistoryItem": { + "fields": { + "effective_performance_target": { + "description": "The actual performance target used by the serverless run during execution. This can differ from the client-set performance target on the request depending on whether the performance mode is supported by the job type.\n\n* `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance.\n* `STANDARD`: Enables cost-efficient execution of serverless workloads.\n* `COST_OPTIMIZED`: Enables lower job costs by optimizing compute for your selected target duration time. Must provide a duration target.", + "ref": "jobs.PerformanceTarget", + "launch_stage": "GA" + }, + "end_time": { + "description": "The end time of the (repaired) run.", + "launch_stage": "GA" + }, + "id": { + "description": "The ID of the repair. Only returned for the items that represent a repair in `repair_history`.", + "launch_stage": "GA" + }, + "start_time": { + "description": "The start time of the (repaired) run.", + "launch_stage": "GA" + }, + "state": { + "description": "Deprecated. Please use the `status` field instead.", + "ref": "jobs.RunState", + "deprecated": true, + "launch_stage": "GA" + }, + "status": { + "ref": "jobs.RunStatus", + "launch_stage": "GA" + }, + "task_run_ids": { + "description": "The run IDs of the task runs that ran as part of this repair history item.", + "launch_stage": "GA" + }, + "type": { + "description": "The repair history item type. Indicates whether a run is the original run or a repair run.", + "ref": "jobs.RepairHistoryItemType", + "launch_stage": "GA" + } + } + }, + "jobs.RepairHistoryItemType": { + "description": "The repair history item type. Indicates whether a run is the original run or\na repair run.", + "enum": [ + "ORIGINAL", + "REPAIR" + ], + "enum_launch_stages": { + "ORIGINAL": "GA", + "REPAIR": "GA" + } + }, + "jobs.RepairRun": { + "fields": { + "dbt_commands": { + "description": "An array of commands to execute for jobs with the dbt task, for example `\"dbt_commands\": [\"dbt deps\", \"dbt seed\", \"dbt deps\", \"dbt seed\", \"dbt run\"]`\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "duration_target": { + "description": "The window the run aims to finish within, in hours, for a Cost-optimized serverless run.\nRequired only when `performance_target` is `COST_OPTIMIZED`. Must be one of the\nsupported values: `NO_FLEXIBILITY`, `4h`, `12h`, `24h`, `72h`. `NO_FLEXIBILITY` means the run\nuses the default cost-optimized performance level without additional cost-saving optimizations.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "jar_params": { + "description": "A list of parameters for jobs with Spark JAR tasks, for example `\"jar_params\": [\"john doe\", \"35\"]`.\nThe parameters are used to invoke the main function of the main class specified in the Spark JAR task.\nIf not specified upon `run-now`, it defaults to an empty list.\njar_params cannot be specified in conjunction with notebook_params.\nThe JSON representation of this field (for example `{\"jar_params\":[\"john doe\",\"35\"]}`) cannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "job_parameters": { + "description": "Job-level parameters used in the run. for example `\"param\": \"overriding_val\"`", + "launch_stage": "GA" + }, + "latest_repair_id": { + "description": "The ID of the latest repair. This parameter is not required when repairing a run for the first time, but must be provided on subsequent requests to repair the same run.", + "launch_stage": "GA" + }, + "notebook_params": { + "description": "A map from keys to values for jobs with notebook task, for example `\"notebook_params\": {\"name\": \"john doe\", \"age\": \"35\"}`.\nThe map is passed to the notebook and is accessible through the [dbutils.widgets.get](https://docs.databricks.com/dev-tools/databricks-utils.html) function.\n\nIf not specified upon `run-now`, the triggered run uses the job’s base parameters.\n\nnotebook_params cannot be specified in conjunction with jar_params.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nThe JSON representation of this field (for example `{\"notebook_params\":{\"name\":\"john doe\",\"age\":\"35\"}}`) cannot exceed 10,000 bytes.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "performance_target": { + "description": "The performance mode on a serverless job. The performance target determines the level of compute performance or cost-efficiency for the run. This field overrides the performance target defined on the job level.\n\n* `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance.\n* `STANDARD`: Enables cost-efficient execution of serverless workloads.\n* `COST_OPTIMIZED`: Enables lower job costs by optimizing compute for your selected target duration time. Must provide a duration target.", + "ref": "jobs.PerformanceTarget", + "launch_stage": "GA" + }, + "pipeline_params": { + "description": "Controls whether the pipeline should perform a full refresh", + "ref": "jobs.PipelineParams", + "launch_stage": "GA" + }, + "python_named_params": { + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "python_params": { + "description": "A list of parameters for jobs with Python tasks, for example `\"python_params\": [\"john doe\", \"35\"]`.\nThe parameters are passed to Python file as command-line parameters. If specified upon `run-now`, it would overwrite\nthe parameters specified in job setting. The JSON representation of this field (for example `{\"python_params\":[\"john doe\",\"35\"]}`)\ncannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nImportant\n\nThese parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error.\nExamples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "rerun_all_failed_tasks": { + "description": "If true, repair all failed tasks. Only one of `rerun_tasks` or `rerun_all_failed_tasks` can be used.", + "launch_stage": "GA" + }, + "rerun_dependent_tasks": { + "description": "If true, repair all tasks that depend on the tasks in `rerun_tasks`, even if they were previously successful. Can be also used in combination with `rerun_all_failed_tasks`.", + "launch_stage": "GA" + }, + "rerun_tasks": { + "description": "The task keys of the task runs to repair.", + "launch_stage": "GA" + }, + "run_id": { + "description": "The job run ID of the run to repair. The run must not be in progress.", + "launch_stage": "GA" + }, + "spark_submit_params": { + "description": "A list of parameters for jobs with spark submit task, for example `\"spark_submit_params\": [\"--class\", \"org.apache.spark.examples.SparkPi\"]`.\nThe parameters are passed to spark-submit script as command-line parameters. If specified upon `run-now`, it would overwrite the\nparameters specified in job setting. The JSON representation of this field (for example `{\"python_params\":[\"john doe\",\"35\"]}`)\ncannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nImportant\n\nThese parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error.\nExamples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "sql_params": { + "description": "A map from keys to values for jobs with SQL task, for example `\"sql_params\": {\"name\": \"john doe\", \"age\": \"35\"}`. The SQL alert task does not support custom parameters.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.RepairRunResponse": { + "description": "Run repair was initiated.", + "fields": { + "repair_id": { + "description": "The ID of the repair. Must be provided in subsequent repairs using the `latest_repair_id` field to ensure sequential repairs.", + "launch_stage": "GA" + } + } + }, + "jobs.ResetJob": { + "fields": { + "job_id": { + "description": "The canonical identifier of the job to reset. This field is required.", + "launch_stage": "GA" + }, + "new_settings": { + "description": "The new settings of the job. These settings completely replace the old settings.\n\nChanges to the field `JobBaseSettings.timeout_seconds` are applied to active runs. Changes to other fields are applied to future runs only.", + "ref": "jobs.JobSettings", + "launch_stage": "GA" + } + } + }, + "jobs.ResolvedConditionTaskValues": { + "fields": { + "left": { + "launch_stage": "GA" + }, + "right": { + "launch_stage": "GA" + } + } + }, + "jobs.ResolvedDbtTaskValues": { + "fields": { + "commands": { + "launch_stage": "GA" + } + } + }, + "jobs.ResolvedNotebookTaskValues": { + "fields": { + "base_parameters": { + "launch_stage": "GA" + } + } + }, + "jobs.ResolvedParamPairValues": { + "fields": { + "parameters": { + "launch_stage": "GA" + } + } + }, + "jobs.ResolvedPipelineTaskValues": { + "fields": { + "parameters": { + "description": "Key/value-map of parameters passed to the pipeline execution.\nLimited to 10k characters in total.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "jobs.ResolvedPythonWheelTaskValues": { + "fields": { + "named_parameters": { + "launch_stage": "GA" + }, + "parameters": { + "launch_stage": "GA" + } + } + }, + "jobs.ResolvedRunJobTaskValues": { + "fields": { + "job_parameters": { + "launch_stage": "GA" + }, + "parameters": { + "launch_stage": "GA" + } + } + }, + "jobs.ResolvedStringParamsValues": { + "fields": { + "parameters": { + "launch_stage": "GA" + } + } + }, + "jobs.ResolvedValues": { + "fields": { + "ai_runtime_task": { + "description": "Resolved values for an AI Runtime task — env_vars with\n`{{tasks.\u003ckey\u003e.values.\u003cname\u003e}}` references substituted to concrete\nvalues before submission to the training service.", + "ref": "jobs.ResolvedValuesAiRuntimeTaskResolvedValues", + "launch_stage": "PRIVATE_PREVIEW" + }, + "condition_task": { + "ref": "jobs.ResolvedConditionTaskValues", + "launch_stage": "GA" + }, + "dbt_task": { + "ref": "jobs.ResolvedDbtTaskValues", + "launch_stage": "GA" + }, + "notebook_task": { + "ref": "jobs.ResolvedNotebookTaskValues", + "launch_stage": "GA" + }, + "pipeline_task": { + "ref": "jobs.ResolvedPipelineTaskValues", + "launch_stage": "PUBLIC_BETA" + }, + "python_wheel_task": { + "ref": "jobs.ResolvedPythonWheelTaskValues", + "launch_stage": "GA" + }, + "run_job_task": { + "ref": "jobs.ResolvedRunJobTaskValues", + "launch_stage": "GA" + }, + "simulation_task": { + "ref": "jobs.ResolvedParamPairValues", + "launch_stage": "GA" + }, + "spark_jar_task": { + "ref": "jobs.ResolvedStringParamsValues", + "launch_stage": "GA" + }, + "spark_python_task": { + "ref": "jobs.ResolvedStringParamsValues", + "launch_stage": "GA" + }, + "spark_submit_task": { + "ref": "jobs.ResolvedStringParamsValues", + "launch_stage": "GA" + }, + "sql_task": { + "ref": "jobs.ResolvedParamPairValues", + "launch_stage": "GA" + } + } + }, + "jobs.ResolvedValuesAiRuntimeTaskResolvedValues": { + "description": "Resolved values for an AiRuntimeTask after dynamic-value substitution, so\nJobs can expand `{{tasks.\u003ckey\u003e.values.\u003cname\u003e}}` references before\nsubmission." + }, + "jobs.Run": { + "description": "Run was retrieved successfully", + "fields": { + "attempt_number": { + "description": "The sequence number of this run attempt for a triggered job run. The initial attempt of a run has an attempt_number of 0. If the initial run attempt fails, and the job has a retry policy (`max_retries` \u003e 0), subsequent runs are created with an `original_attempt_run_id` of the original attempt’s ID and an incrementing `attempt_number`. Runs are retried only until they succeed, and the maximum `attempt_number` is the same as the `max_retries` value for the job.", + "launch_stage": "GA" + }, + "cleanup_duration": { + "description": "The time in milliseconds it took to terminate the cluster and clean up any associated artifacts. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `cleanup_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field.", + "launch_stage": "GA" + }, + "cluster_instance": { + "description": "The cluster used for this run. If the run is specified to use a new cluster, this field is set once the Jobs service has requested a cluster for the run.", + "ref": "jobs.ClusterInstance", + "launch_stage": "GA" + }, + "cluster_spec": { + "description": "A snapshot of the job’s cluster specification when this run was created.", + "ref": "jobs.ClusterSpec", + "launch_stage": "GA" + }, + "creator_user_name": { + "description": "The creator user name. This field won’t be included in the response if the user has already been deleted.", + "launch_stage": "GA" + }, + "deployment_id": { + "description": "ID of the deployment that produced the job when this run was created. Used to look up\ndeployment metadata from the Deployment Metadata service. Only set for job runs of jobs\nwith a `BUNDLE` deployment.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "description": { + "description": "Description of the run", + "launch_stage": "GA" + }, + "duration_target": { + "description": "The window the run aims to finish within, in hours, for a Cost-optimized serverless run.\nRequired only when `performance_target` is `COST_OPTIMIZED`. Must be one of the\nsupported values: `NO_FLEXIBILITY`, `4h`, `12h`, `24h`, `72h`. `NO_FLEXIBILITY` means the run\nuses the default cost-optimized performance level without additional cost-saving optimizations.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "effective_performance_target": { + "description": "The actual performance target used by the serverless run during execution. This can differ from the client-set performance target on the request depending on whether the performance mode is supported by the job type.\n\n* `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance.\n* `STANDARD`: Enables cost-efficient execution of serverless workloads.\n* `COST_OPTIMIZED`: Enables lower job costs by optimizing compute for your selected target duration time. Must provide a duration target.", + "ref": "jobs.PerformanceTarget", + "launch_stage": "GA" + }, + "effective_usage_policy_id": { + "description": "The id of the usage policy used by this run for cost attribution purposes.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "end_time": { + "description": "The time at which this run ended in epoch milliseconds (milliseconds since 1/1/1970 UTC). This field is set to 0 if the job is still running.", + "launch_stage": "GA" + }, + "environment_variables": { + "description": "Snapshot of `JobSettings.environment_variables` as it was at run\nlaunch — the full list of named environment-variable entries the job\ndefined. To find which entry a given task ran with, look at\n`RunTaskSettings.environment_variables_key`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "execution_duration": { + "description": "The time in milliseconds it took to execute the commands in the JAR or notebook until they completed, failed, timed out, were cancelled, or encountered an unexpected error. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `execution_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field.", + "launch_stage": "GA" + }, + "git_source": { + "description": "An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks.\n\nIf `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task.\n\nNote: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job.", + "ref": "jobs.GitSource", + "launch_stage": "GA" + }, + "has_more": { + "description": "Indicates if the run has more array properties (`tasks`, `job_clusters`) that are not shown. They can be accessed via :method:jobs/getrun endpoint.\nIt is only relevant for API 2.2 :method:jobs/listruns requests with `expand_tasks=true`.", + "launch_stage": "GA" + }, + "iterations": { + "description": "Only populated by for-each iterations. The parent for-each task is located in tasks array.", + "launch_stage": "GA" + }, + "job_clusters": { + "description": "A list of job cluster specifications that can be shared and reused by tasks of this job. Libraries cannot be declared in a shared job cluster. You must declare dependent libraries in task settings.\nIf more than 100 job clusters are available, you can paginate through them using :method:jobs/getrun.", + "launch_stage": "GA" + }, + "job_id": { + "description": "The canonical identifier of the job that contains this run.", + "launch_stage": "GA" + }, + "job_parameters": { + "description": "Job-level parameters used in the run", + "launch_stage": "GA" + }, + "job_run_id": { + "description": "ID of the job run that this run belongs to.\nFor legacy and single-task job runs the field is populated with the job run ID.\nFor task runs, the field is populated with the ID of the job run that the task run belongs to.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "A token that can be used to list the next page of array properties.", + "launch_stage": "GA" + }, + "number_in_job": { + "description": "A unique identifier for this job run. This is set to the same value as `run_id`.", + "deprecated": true, + "launch_stage": "GA" + }, + "original_attempt_run_id": { + "description": "If this run is a retry of a prior run attempt, this field contains the run_id of the original attempt; otherwise, it is the same as the run_id.", + "launch_stage": "GA" + }, + "overriding_parameters": { + "description": "The parameters used for this run.", + "ref": "jobs.RunParameters", + "launch_stage": "GA" + }, + "queue_duration": { + "description": "The time in milliseconds that the run has spent in the queue.", + "launch_stage": "GA" + }, + "repair_history": { + "description": "The repair history of the run.", + "launch_stage": "GA" + }, + "run_duration": { + "description": "The time in milliseconds it took the job run and all of its repairs to finish.", + "launch_stage": "GA" + }, + "run_id": { + "description": "The canonical identifier of the run. This ID is unique across all runs of all jobs.", + "launch_stage": "GA" + }, + "run_name": { + "description": "An optional name for the run. The maximum length is 4096 bytes in UTF-8 encoding.", + "launch_stage": "GA" + }, + "run_page_url": { + "description": "The URL to the detail page of the run.", + "launch_stage": "GA" + }, + "run_type": { + "ref": "jobs.RunType", + "launch_stage": "GA" + }, + "schedule": { + "description": "The cron schedule that triggered this run if it was triggered by the periodic scheduler.", + "ref": "jobs.CronSchedule", + "launch_stage": "GA" + }, + "setup_duration": { + "description": "The time in milliseconds it took to set up the cluster. For runs that run on new clusters this is the cluster creation time, for runs that run on existing clusters this time should be very short. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `setup_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field.", + "launch_stage": "GA" + }, + "start_time": { + "description": "The time at which this run was started in epoch milliseconds (milliseconds since 1/1/1970 UTC). This may not be the time when the job task starts executing, for example, if the job is scheduled to run on a new cluster, this is the time the cluster creation call is issued.", + "launch_stage": "GA" + }, + "state": { + "description": "Deprecated. Please use the `status` field instead.", + "ref": "jobs.RunState", + "deprecated": true, + "launch_stage": "GA" + }, + "status": { + "ref": "jobs.RunStatus", + "launch_stage": "GA" + }, + "tasks": { + "description": "The list of tasks performed by the run. Each task has its own `run_id` which you can use to call `JobsGetOutput` to retrieve the run results.\nIf more than 100 tasks are available, you can paginate through them using :method:jobs/getrun. Use the `next_page_token` field at the object root to determine if more results are available.", + "launch_stage": "GA" + }, + "trigger": { + "ref": "jobs.TriggerType", + "launch_stage": "GA" + }, + "trigger_info": { + "ref": "jobs.TriggerInfo", + "launch_stage": "GA" + }, + "version_id": { + "description": "ID of the deployment version that produced the job when this run was created. Identifies\na specific snapshot of the deployment in the Deployment Metadata service. Only set for\njob runs of jobs with a `BUNDLE` deployment.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.RunConditionTask": { + "fields": { + "left": { + "description": "The left operand of the condition task. Can be either a string value or a job state or parameter reference.", + "launch_stage": "GA" + }, + "op": { + "description": "* `EQUAL_TO`, `NOT_EQUAL` operators perform string comparison of their operands. This means that `“12.0” == “12”` will evaluate to `false`.\n* `GREATER_THAN`, `GREATER_THAN_OR_EQUAL`, `LESS_THAN`, `LESS_THAN_OR_EQUAL` operators perform numeric comparison of their operands. `“12.0” \u003e= “12”` will evaluate to `true`, `“10.0” \u003e= “12”` will evaluate to `false`.\n\nThe boolean comparison to task values can be implemented with operators `EQUAL_TO`, `NOT_EQUAL`. If a task value was set to a boolean value, it will be serialized to `“true”` or `“false”` for the comparison.", + "ref": "jobs.ConditionTaskOp", + "launch_stage": "GA" + }, + "outcome": { + "description": "The condition expression evaluation result. Filled in if the task was successfully completed. Can be `\"true\"` or `\"false\"`", + "launch_stage": "GA" + }, + "right": { + "description": "The right operand of the condition task. Can be either a string value or a job state or parameter reference.", + "launch_stage": "GA" + } + } + }, + "jobs.RunForEachTask": { + "fields": { + "concurrency": { + "description": "An optional maximum allowed number of concurrent runs of the task.\nSet this value if you want to be able to execute multiple runs of the task concurrently.", + "launch_stage": "GA" + }, + "inputs": { + "description": "Array for task to iterate on. This can be a JSON string or a reference to\nan array parameter.", + "launch_stage": "GA" + }, + "stats": { + "description": "Read only field. Populated for GetRun and ListRuns RPC calls and stores the execution stats of a `For each` task.", + "ref": "jobs.ForEachStats", + "launch_stage": "GA" + }, + "task": { + "description": "Configuration for the task that will be run for each element in the array", + "ref": "jobs.Task", + "launch_stage": "GA" + } + } + }, + "jobs.RunIf": { + "description": "An optional value indicating the condition that determines whether the task should be run once its dependencies have been completed. When omitted, defaults to `ALL_SUCCESS`.\n\nPossible values are:\n* `ALL_SUCCESS`: All dependencies have executed and succeeded\n* `AT_LEAST_ONE_SUCCESS`: At least one dependency has succeeded\n* `NONE_FAILED`: None of the dependencies have failed and at least one was executed\n* `ALL_DONE`: All dependencies have been completed\n* `AT_LEAST_ONE_FAILED`: At least one dependency failed\n* `ALL_FAILED`: ALl dependencies have failed", + "enum": [ + "ALL_SUCCESS", + "ALL_DONE", + "NONE_FAILED", + "AT_LEAST_ONE_SUCCESS", + "ALL_FAILED", + "AT_LEAST_ONE_FAILED" + ], + "enum_launch_stages": { + "ALL_DONE": "GA", + "ALL_FAILED": "GA", + "ALL_SUCCESS": "GA", + "AT_LEAST_ONE_FAILED": "GA", + "AT_LEAST_ONE_SUCCESS": "GA", + "NONE_FAILED": "GA" + }, + "enum_descriptions": { + "ALL_DONE": "All dependencies have been completed", + "ALL_FAILED": "ALl dependencies have failed", + "ALL_SUCCESS": "All dependencies have executed and succeeded", + "AT_LEAST_ONE_FAILED": "At least one dependency failed", + "AT_LEAST_ONE_SUCCESS": "At least one dependency has succeeded", + "NONE_FAILED": "None of the dependencies have failed and at least one was executed" + } + }, + "jobs.RunJobOutput": { + "fields": { + "run_id": { + "description": "The run id of the triggered job run", + "launch_stage": "GA" + } + } + }, + "jobs.RunJobTask": { + "fields": { + "dbt_commands": { + "description": "An array of commands to execute for jobs with the dbt task, for example `\"dbt_commands\": [\"dbt deps\", \"dbt seed\", \"dbt deps\", \"dbt seed\", \"dbt run\"]`\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "jar_params": { + "description": "A list of parameters for jobs with Spark JAR tasks, for example `\"jar_params\": [\"john doe\", \"35\"]`.\nThe parameters are used to invoke the main function of the main class specified in the Spark JAR task.\nIf not specified upon `run-now`, it defaults to an empty list.\njar_params cannot be specified in conjunction with notebook_params.\nThe JSON representation of this field (for example `{\"jar_params\":[\"john doe\",\"35\"]}`) cannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "job_id": { + "description": "ID of the job to trigger.", + "launch_stage": "GA" + }, + "job_parameters": { + "description": "Job-level parameters used to trigger the job.", + "launch_stage": "GA" + }, + "notebook_params": { + "description": "A map from keys to values for jobs with notebook task, for example `\"notebook_params\": {\"name\": \"john doe\", \"age\": \"35\"}`.\nThe map is passed to the notebook and is accessible through the [dbutils.widgets.get](https://docs.databricks.com/dev-tools/databricks-utils.html) function.\n\nIf not specified upon `run-now`, the triggered run uses the job’s base parameters.\n\nnotebook_params cannot be specified in conjunction with jar_params.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nThe JSON representation of this field (for example `{\"notebook_params\":{\"name\":\"john doe\",\"age\":\"35\"}}`) cannot exceed 10,000 bytes.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "pipeline_params": { + "description": "Controls whether the pipeline should perform a full refresh", + "ref": "jobs.PipelineParams", + "launch_stage": "GA" + }, + "python_named_params": { + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "python_params": { + "description": "A list of parameters for jobs with Python tasks, for example `\"python_params\": [\"john doe\", \"35\"]`.\nThe parameters are passed to Python file as command-line parameters. If specified upon `run-now`, it would overwrite\nthe parameters specified in job setting. The JSON representation of this field (for example `{\"python_params\":[\"john doe\",\"35\"]}`)\ncannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nImportant\n\nThese parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error.\nExamples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "spark_submit_params": { + "description": "A list of parameters for jobs with spark submit task, for example `\"spark_submit_params\": [\"--class\", \"org.apache.spark.examples.SparkPi\"]`.\nThe parameters are passed to spark-submit script as command-line parameters. If specified upon `run-now`, it would overwrite the\nparameters specified in job setting. The JSON representation of this field (for example `{\"python_params\":[\"john doe\",\"35\"]}`)\ncannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nImportant\n\nThese parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error.\nExamples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "sql_params": { + "description": "A map from keys to values for jobs with SQL task, for example `\"sql_params\": {\"name\": \"john doe\", \"age\": \"35\"}`. The SQL alert task does not support custom parameters.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.RunLifeCycleState": { + "description": "A value indicating the run's lifecycle state. The possible values are:\n* `QUEUED`: The run is queued.\n* `PENDING`: The run is waiting to be executed while the cluster and execution context are being prepared.\n* `RUNNING`: The task of this run is being executed.\n* `TERMINATING`: The task of this run has completed, and the cluster and execution context are being cleaned up.\n* `TERMINATED`: The task of this run has completed, and the cluster and execution context have been cleaned up. This state is terminal.\n* `SKIPPED`: This run was aborted because a previous run of the same job was already active. This state is terminal.\n* `INTERNAL_ERROR`: An exceptional state that indicates a failure in the Jobs service, such as network failure over a long period. If a run on a new cluster ends in the `INTERNAL_ERROR` state, the Jobs service terminates the cluster as soon as possible. This state is terminal.\n* `BLOCKED`: The run is blocked on an upstream dependency.\n* `WAITING_FOR_RETRY`: The run is waiting for a retry.", + "enum": [ + "PENDING", + "RUNNING", + "TERMINATING", + "TERMINATED", + "SKIPPED", + "INTERNAL_ERROR", + "BLOCKED", + "WAITING_FOR_RETRY", + "QUEUED" + ], + "enum_launch_stages": { + "BLOCKED": "GA", + "INTERNAL_ERROR": "GA", + "PENDING": "GA", + "QUEUED": "GA", + "RUNNING": "GA", + "SKIPPED": "GA", + "TERMINATED": "GA", + "TERMINATING": "GA", + "WAITING_FOR_RETRY": "GA" + }, + "enum_descriptions": { + "BLOCKED": "The run is blocked on an upstream dependency.", + "INTERNAL_ERROR": "An exceptional state that indicates a failure in the Jobs service, such as network failure over a long period. If a run on a new cluster ends in the `INTERNAL_ERROR` state, the Jobs service terminates the cluster as soon as possible. This state is terminal.", + "PENDING": "The run is waiting to be executed while the cluster and execution context are being prepared.", + "QUEUED": "The run is queued.", + "RUNNING": "The task of this run is being executed.", + "SKIPPED": "This run was aborted because a previous run of the same job was already active. This state is terminal.", + "TERMINATED": "The task of this run has completed, and the cluster and execution context have been cleaned up. This state is terminal.", + "TERMINATING": "The task of this run has completed, and the cluster and execution context are being cleaned up.", + "WAITING_FOR_RETRY": "The run is waiting for a retry." + } + }, + "jobs.RunLifecycleStateV2State": { + "description": "The current state of the run.", + "enum": [ + "BLOCKED", + "PENDING", + "QUEUED", + "RUNNING", + "TERMINATING", + "TERMINATED", + "WAITING" + ], + "enum_launch_stages": { + "BLOCKED": "GA", + "PENDING": "GA", + "QUEUED": "GA", + "RUNNING": "GA", + "TERMINATED": "GA", + "TERMINATING": "GA", + "WAITING": "GA" + } + }, + "jobs.RunNow": { + "fields": { + "dbt_commands": { + "description": "An array of commands to execute for jobs with the dbt task, for example `\"dbt_commands\": [\"dbt deps\", \"dbt seed\", \"dbt deps\", \"dbt seed\", \"dbt run\"]`\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "duration_target": { + "description": "The window the run aims to finish within, in hours, for a Cost-optimized serverless run.\nRequired only when `performance_target` is `COST_OPTIMIZED`. Must be one of the\nsupported values: `NO_FLEXIBILITY`, `4h`, `12h`, `24h`, `72h`. `NO_FLEXIBILITY` means the run\nuses the default cost-optimized performance level without additional cost-saving optimizations.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "idempotency_token": { + "description": "An optional token to guarantee the idempotency of job run requests. If a run with the provided token already exists,\nthe request does not create a new run but returns the ID of the existing run instead. If a run with the provided token is deleted,\nan error is returned.\n\nIf you specify the idempotency token, upon failure you can retry until the request succeeds. Databricks guarantees that exactly one run\nis launched with that idempotency token.\n\nThis token must have at most 64 characters.", + "launch_stage": "GA" + }, + "jar_params": { + "description": "A list of parameters for jobs with Spark JAR tasks, for example `\"jar_params\": [\"john doe\", \"35\"]`.\nThe parameters are used to invoke the main function of the main class specified in the Spark JAR task.\nIf not specified upon `run-now`, it defaults to an empty list.\njar_params cannot be specified in conjunction with notebook_params.\nThe JSON representation of this field (for example `{\"jar_params\":[\"john doe\",\"35\"]}`) cannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "job_id": { + "description": "The ID of the job to be executed", + "launch_stage": "GA" + }, + "job_parameters": { + "description": "Job-level parameters used in the run. for example `\"param\": \"overriding_val\"`", + "launch_stage": "GA" + }, + "notebook_params": { + "description": "A map from keys to values for jobs with notebook task, for example `\"notebook_params\": {\"name\": \"john doe\", \"age\": \"35\"}`.\nThe map is passed to the notebook and is accessible through the [dbutils.widgets.get](https://docs.databricks.com/dev-tools/databricks-utils.html) function.\n\nIf not specified upon `run-now`, the triggered run uses the job’s base parameters.\n\nnotebook_params cannot be specified in conjunction with jar_params.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nThe JSON representation of this field (for example `{\"notebook_params\":{\"name\":\"john doe\",\"age\":\"35\"}}`) cannot exceed 10,000 bytes.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "only": { + "description": "A list of task keys to run inside of the job. If this field is not provided, all tasks in the job will be run.\n\nPrefix a task key with `+` to also run its upstream tasks, or suffix it with `+` to also run its downstream tasks.\nFor example, `+my_task` runs `my_task` and everything upstream of it, `my_task+` runs `my_task` and everything\ndownstream of it, and `+my_task+` runs both. A task key with no `+` runs only that task.", + "launch_stage": "GA" + }, + "performance_target": { + "description": "The performance mode on a serverless job. The performance target determines the level of compute performance or cost-efficiency for the run. This field overrides the performance target defined on the job level.\n\n* `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance.\n* `STANDARD`: Enables cost-efficient execution of serverless workloads.\n* `COST_OPTIMIZED`: Enables lower job costs by optimizing compute for your selected target duration time. Must provide a duration target.", + "ref": "jobs.PerformanceTarget", + "launch_stage": "GA" + }, + "pipeline_params": { + "description": "Controls whether the pipeline should perform a full refresh", + "ref": "jobs.PipelineParams", + "launch_stage": "GA" + }, + "python_named_params": { + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "python_params": { + "description": "A list of parameters for jobs with Python tasks, for example `\"python_params\": [\"john doe\", \"35\"]`.\nThe parameters are passed to Python file as command-line parameters. If specified upon `run-now`, it would overwrite\nthe parameters specified in job setting. The JSON representation of this field (for example `{\"python_params\":[\"john doe\",\"35\"]}`)\ncannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nImportant\n\nThese parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error.\nExamples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "queue": { + "description": "The queue settings of the run.", + "ref": "jobs.QueueSettings", + "launch_stage": "GA" + }, + "spark_submit_params": { + "description": "A list of parameters for jobs with spark submit task, for example `\"spark_submit_params\": [\"--class\", \"org.apache.spark.examples.SparkPi\"]`.\nThe parameters are passed to spark-submit script as command-line parameters. If specified upon `run-now`, it would overwrite the\nparameters specified in job setting. The JSON representation of this field (for example `{\"python_params\":[\"john doe\",\"35\"]}`)\ncannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nImportant\n\nThese parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error.\nExamples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "sql_params": { + "description": "A map from keys to values for jobs with SQL task, for example `\"sql_params\": {\"name\": \"john doe\", \"age\": \"35\"}`. The SQL alert task does not support custom parameters.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.RunNowResponse": { + "description": "Run was started successfully.", + "fields": { + "number_in_job": { + "description": "A unique identifier for this job run. This is set to the same value as `run_id`.", + "deprecated": true, + "launch_stage": "GA" + }, + "run_id": { + "description": "The globally unique ID of the newly triggered run.", + "launch_stage": "GA" + } + } + }, + "jobs.RunOutput": { + "description": "Run output was retrieved successfully.", + "fields": { + "ai_runtime_task_output": { + "description": "The output of an AiRuntimeTask, if available — MLflow identifiers,\nartifact paths, and per-replica allocated compute. Run lifecycle /\ntermination status lives on the surrounding framework `RunTask.status`\n(`runs.proto:RunTask.status` of type `RunStatus`), not on this output.\nSee `tasks/genai/ai_runtime_task.proto:AiRuntimeTaskOutput`.", + "ref": "jobs.AiRuntimeTaskOutput", + "launch_stage": "PRIVATE_PREVIEW" + }, + "alert_output": { + "description": "The output of an alert task, if available", + "ref": "jobs.AlertTaskOutput", + "launch_stage": "PUBLIC_PREVIEW" + }, + "clean_rooms_notebook_output": { + "description": "The output of a clean rooms notebook task, if available", + "ref": "jobs.CleanRoomsNotebookTaskCleanRoomsNotebookTaskOutput", + "launch_stage": "GA" + }, + "dashboard_output": { + "description": "The output of a dashboard task, if available", + "ref": "jobs.DashboardTaskOutput", + "launch_stage": "GA" + }, + "dbt_cloud_output": { + "description": "Deprecated in favor of the new dbt_platform_output", + "ref": "jobs.DbtCloudTaskOutput", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "dbt_output": { + "description": "The output of a dbt task, if available.", + "ref": "jobs.DbtOutput", + "launch_stage": "GA" + }, + "dbt_platform_output": { + "ref": "jobs.DbtPlatformTaskOutput", + "launch_stage": "PRIVATE_PREVIEW" + }, + "error": { + "description": "An error message indicating why a task failed or why output is not available. The message is unstructured, and its exact format is subject to change.", + "launch_stage": "GA" + }, + "error_trace": { + "description": "If there was an error executing the run, this field contains any available stack traces.", + "launch_stage": "GA" + }, + "info": { + "launch_stage": "GA" + }, + "logs": { + "description": "The output from tasks that write to standard streams (stdout/stderr) such as\nspark_jar_task, spark_python_task, python_wheel_task.\n\nIt's not supported for the notebook_task, pipeline_task or spark_submit_task.\n\nDatabricks restricts this API to return the last 5 MB of these logs.", + "launch_stage": "GA" + }, + "logs_truncated": { + "description": "Whether the logs are truncated.", + "launch_stage": "GA" + }, + "metadata": { + "description": "All details of the run except for its output.", + "ref": "jobs.Run", + "launch_stage": "GA" + }, + "notebook_output": { + "description": "The output of a notebook task, if available. A notebook task that terminates (either successfully or with a failure)\nwithout calling `dbutils.notebook.exit()` is considered to have an empty output.\nThis field is set but its result value is empty. Databricks restricts this API to return the first 5 MB of the output.\nTo return a larger result, use the [ClusterLogConf](https://docs.databricks.com/dev-tools/api/latest/clusters.html#clusterlogconf) field to configure log storage\nfor the job cluster.", + "ref": "jobs.NotebookOutput", + "launch_stage": "GA" + }, + "run_job_output": { + "description": "The output of a run job task, if available", + "ref": "jobs.RunJobOutput", + "launch_stage": "GA" + }, + "sql_output": { + "description": "The output of a SQL task, if available.", + "ref": "jobs.SqlOutput", + "launch_stage": "GA" + } + } + }, + "jobs.RunParameters": { + "fields": { + "dbt_commands": { + "description": "An array of commands to execute for jobs with the dbt task, for example `\"dbt_commands\": [\"dbt deps\", \"dbt seed\", \"dbt deps\", \"dbt seed\", \"dbt run\"]`\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "jar_params": { + "description": "A list of parameters for jobs with Spark JAR tasks, for example `\"jar_params\": [\"john doe\", \"35\"]`.\nThe parameters are used to invoke the main function of the main class specified in the Spark JAR task.\nIf not specified upon `run-now`, it defaults to an empty list.\njar_params cannot be specified in conjunction with notebook_params.\nThe JSON representation of this field (for example `{\"jar_params\":[\"john doe\",\"35\"]}`) cannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "notebook_params": { + "description": "A map from keys to values for jobs with notebook task, for example `\"notebook_params\": {\"name\": \"john doe\", \"age\": \"35\"}`.\nThe map is passed to the notebook and is accessible through the [dbutils.widgets.get](https://docs.databricks.com/dev-tools/databricks-utils.html) function.\n\nIf not specified upon `run-now`, the triggered run uses the job’s base parameters.\n\nnotebook_params cannot be specified in conjunction with jar_params.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nThe JSON representation of this field (for example `{\"notebook_params\":{\"name\":\"john doe\",\"age\":\"35\"}}`) cannot exceed 10,000 bytes.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "pipeline_params": { + "description": "Controls whether the pipeline should perform a full refresh", + "ref": "jobs.PipelineParams", + "launch_stage": "GA" + }, + "python_named_params": { + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "python_params": { + "description": "A list of parameters for jobs with Python tasks, for example `\"python_params\": [\"john doe\", \"35\"]`.\nThe parameters are passed to Python file as command-line parameters. If specified upon `run-now`, it would overwrite\nthe parameters specified in job setting. The JSON representation of this field (for example `{\"python_params\":[\"john doe\",\"35\"]}`)\ncannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nImportant\n\nThese parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error.\nExamples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "spark_submit_params": { + "description": "A list of parameters for jobs with spark submit task, for example `\"spark_submit_params\": [\"--class\", \"org.apache.spark.examples.SparkPi\"]`.\nThe parameters are passed to spark-submit script as command-line parameters. If specified upon `run-now`, it would overwrite the\nparameters specified in job setting. The JSON representation of this field (for example `{\"python_params\":[\"john doe\",\"35\"]}`)\ncannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nImportant\n\nThese parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error.\nExamples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "sql_params": { + "description": "A map from keys to values for jobs with SQL task, for example `\"sql_params\": {\"name\": \"john doe\", \"age\": \"35\"}`. The SQL alert task does not support custom parameters.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.RunResultState": { + "description": "A value indicating the run's result. The possible values are:\n* `SUCCESS`: The task completed successfully.\n* `FAILED`: The task completed with an error.\n* `TIMEDOUT`: The run was stopped after reaching the timeout.\n* `CANCELED`: The run was canceled at user request.\n* `MAXIMUM_CONCURRENT_RUNS_REACHED`: The run was skipped because the maximum concurrent runs were reached.\n* `EXCLUDED`: The run was skipped because the necessary conditions were not met.\n* `SUCCESS_WITH_FAILURES`: The job run completed successfully with some failures; leaf tasks were successful.\n* `UPSTREAM_FAILED`: The run was skipped because of an upstream failure.\n* `UPSTREAM_CANCELED`: The run was skipped because an upstream task was canceled.\n* `DISABLED`: The run was skipped because it was disabled explicitly by the user.", + "enum": [ + "SUCCESS", + "FAILED", + "TIMEDOUT", + "CANCELED", + "MAXIMUM_CONCURRENT_RUNS_REACHED", + "UPSTREAM_CANCELED", + "UPSTREAM_FAILED", + "EXCLUDED", + "SUCCESS_WITH_FAILURES", + "DISABLED" + ], + "enum_launch_stages": { + "CANCELED": "GA", + "DISABLED": "GA", + "EXCLUDED": "GA", + "FAILED": "GA", + "MAXIMUM_CONCURRENT_RUNS_REACHED": "GA", + "SUCCESS": "GA", + "SUCCESS_WITH_FAILURES": "GA", + "TIMEDOUT": "GA", + "UPSTREAM_CANCELED": "GA", + "UPSTREAM_FAILED": "GA" + }, + "enum_descriptions": { + "CANCELED": "The run was canceled at user request.", + "DISABLED": "The run was skipped because it was disabled explicitly by the user.", + "EXCLUDED": "The run was skipped because the necessary conditions were not met.", + "FAILED": "The task completed with an error.", + "MAXIMUM_CONCURRENT_RUNS_REACHED": "The run was skipped because the maximum concurrent runs were reached.", + "SUCCESS": "The task completed successfully.", + "SUCCESS_WITH_FAILURES": "The job run completed successfully with some failures; leaf tasks were successful.", + "TIMEDOUT": "The run was stopped after reaching the timeout.", + "UPSTREAM_CANCELED": "The run was skipped because an upstream task was canceled.", + "UPSTREAM_FAILED": "The run was skipped because of an upstream failure." + } + }, + "jobs.RunState": { + "description": "The current state of the run.", + "fields": { + "life_cycle_state": { + "description": "A value indicating the run's current lifecycle state. This field is always available in the response. Note: Additional states might be introduced in future releases.", + "ref": "jobs.RunLifeCycleState", + "launch_stage": "GA" + }, + "queue_reason": { + "description": "The reason indicating why the run was queued.", + "launch_stage": "GA" + }, + "result_state": { + "description": "A value indicating the run's result. This field is only available for terminal lifecycle states. Note: Additional states might be introduced in future releases.", + "ref": "jobs.RunResultState", + "launch_stage": "GA" + }, + "state_message": { + "description": "A descriptive message for the current state. This field is unstructured, and its exact format is subject to change.", + "launch_stage": "GA" + }, + "user_cancelled_or_timedout": { + "description": "A value indicating whether a run was canceled manually by a user or by the scheduler because the run timed out.", + "launch_stage": "GA" + } + } + }, + "jobs.RunStatus": { + "description": "The current status of the run", + "fields": { + "queue_details": { + "description": "If the run was queued, details about the reason for queuing the run.", + "ref": "jobs.QueueDetails", + "launch_stage": "GA" + }, + "state": { + "ref": "jobs.RunLifecycleStateV2State", + "launch_stage": "GA" + }, + "termination_details": { + "description": "If the run is in a TERMINATING or TERMINATED state, details about the reason for terminating the run.", + "ref": "jobs.TerminationDetails", + "launch_stage": "GA" + } + } + }, + "jobs.RunTask": { + "description": "Used when outputting a child run, in GetRun or ListRuns.", + "fields": { + "ai_runtime_task": { + "description": "The task runs a multi-gpu compute workload on Databricks AI Runtime. Specify\nthe accelerator type and count, the command to run, and where the workload's\ncode and MLflow output are stored.", + "ref": "jobs.AiRuntimeTask", + "launch_stage": "PUBLIC_PREVIEW" + }, + "alert_task": { + "description": "The task evaluates a Databricks alert and sends notifications to subscribers\nwhen the `alert_task` field is present.", + "ref": "jobs.AlertTask", + "launch_stage": "PUBLIC_PREVIEW" + }, + "attempt_number": { + "description": "The sequence number of this run attempt for a triggered job run. The initial attempt of a run has an attempt_number of 0. If the initial run attempt fails, and the job has a retry policy (`max_retries` \u003e 0), subsequent runs are created with an `original_attempt_run_id` of the original attempt’s ID and an incrementing `attempt_number`. Runs are retried only until they succeed, and the maximum `attempt_number` is the same as the `max_retries` value for the job.", + "launch_stage": "GA" + }, + "clean_rooms_notebook_task": { + "description": "The task runs a [clean rooms](https://docs.databricks.com/clean-rooms/index.html) notebook\nwhen the `clean_rooms_notebook_task` field is present.", + "ref": "jobs.CleanRoomsNotebookTask", + "launch_stage": "GA" + }, + "cleanup_duration": { + "description": "The time in milliseconds it took to terminate the cluster and clean up any associated artifacts. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `cleanup_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field.", + "launch_stage": "GA" + }, + "cluster_instance": { + "description": "The cluster used for this run. If the run is specified to use a new cluster, this field is set once the Jobs service has requested a cluster for the run.", + "ref": "jobs.ClusterInstance", + "launch_stage": "GA" + }, + "compute": { + "description": "Task level compute configuration.", + "ref": "jobs.Compute", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "condition_task": { + "description": "The task evaluates a condition that can be used to control the execution of other tasks when the `condition_task` field is present.\nThe condition task does not require a cluster to execute and does not support retries or notifications.", + "ref": "jobs.RunConditionTask", + "launch_stage": "GA" + }, + "dashboard_task": { + "description": "The task refreshes a dashboard and sends a snapshot to subscribers.", + "ref": "jobs.DashboardTask", + "launch_stage": "GA" + }, + "dbt_cloud_task": { + "description": "Task type for dbt cloud, deprecated in favor of the new name dbt_platform_task", + "ref": "jobs.DbtCloudTask", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "dbt_platform_task": { + "ref": "jobs.DbtPlatformTask", + "launch_stage": "PRIVATE_PREVIEW" + }, + "dbt_task": { + "description": "The task runs one or more dbt commands when the `dbt_task` field is present. The dbt task requires both Databricks SQL and the ability to use a serverless or a pro SQL warehouse.", + "ref": "jobs.DbtTask", + "launch_stage": "GA" + }, + "depends_on": { + "description": "An optional array of objects specifying the dependency graph of the task. All tasks specified in this field must complete successfully before executing this task.\nThe key is `task_key`, and the value is the name assigned to the dependent task.", + "launch_stage": "GA" + }, + "description": { + "description": "An optional description for this task.", + "launch_stage": "GA" + }, + "disable_auto_optimization": { + "description": "An option to disable auto optimization in serverless", + "launch_stage": "GA" + }, + "disabled": { + "description": "An optional flag to disable the task. If set to true, the task will not run even if it is part of a job.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "effective_performance_target": { + "description": "The actual performance target used by the serverless run during execution. This can differ from the client-set performance target on the request depending on whether the performance mode is supported by the job type.\n\n* `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance.\n* `STANDARD`: Enables cost-efficient execution of serverless workloads.\n* `COST_OPTIMIZED`: Enables lower job costs by optimizing compute for your selected target duration time. Must provide a duration target.", + "ref": "jobs.PerformanceTarget", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "email_notifications": { + "description": "An optional set of email addresses notified when the task run begins or completes. The default behavior is to not send any emails.", + "ref": "jobs.JobEmailNotifications", + "launch_stage": "GA" + }, + "end_time": { + "description": "The time at which this run ended in epoch milliseconds (milliseconds since 1/1/1970 UTC). This field is set to 0 if the job is still running.", + "launch_stage": "GA" + }, + "environment_key": { + "description": "The key that references an environment spec in a job. This field is required for Python script, Python wheel and dbt tasks when using serverless compute or a compute resource that uses Environments mode.", + "launch_stage": "GA" + }, + "environment_variables_key": { + "description": "Reference to a `JobEnvironmentVariables` entry defined in\n`RunSettings.environment_variables` for one-time runs or preserved in\n`Run.environment_variables` for run snapshots. The selected entry's\nvariables are applied to this task at execution time. This field supports\nserverless tasks using environment version 5 or later.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "execution_duration": { + "description": "The time in milliseconds it took to execute the commands in the JAR or notebook until they completed, failed, timed out, were cancelled, or encountered an unexpected error. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `execution_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field.", + "launch_stage": "GA" + }, + "existing_cluster_id": { + "description": "If existing_cluster_id, the ID of an existing cluster that is used for all runs.\nWhen running jobs or tasks on an existing cluster, you may need to manually restart\nthe cluster if it stops responding. We suggest running jobs and tasks on new clusters for\ngreater reliability", + "launch_stage": "GA" + }, + "for_each_task": { + "description": "The task executes a nested task for every input provided when the `for_each_task` field is present.", + "ref": "jobs.RunForEachTask", + "launch_stage": "GA" + }, + "gen_ai_compute_task": { + "ref": "jobs.GenAiComputeTask", + "launch_stage": "PRIVATE_PREVIEW" + }, + "git_source": { + "description": "An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks. If `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task. Note: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job.", + "ref": "jobs.GitSource", + "launch_stage": "GA" + }, + "job_cluster_key": { + "description": "If job_cluster_key, this task is executed reusing the cluster specified in `job.settings.job_clusters`.", + "launch_stage": "GA" + }, + "libraries": { + "description": "An optional list of libraries to be installed on the cluster.\nThe default value is an empty list.", + "launch_stage": "GA" + }, + "max_retries": { + "description": "An optional maximum number of times to retry an unsuccessful run. A run is considered to be unsuccessful if it completes with the `FAILED` result_state or `INTERNAL_ERROR` `life_cycle_state`. The value `-1` means to retry indefinitely and the value `0` means to never retry.", + "launch_stage": "GA" + }, + "min_retry_interval_millis": { + "description": "An optional minimal interval in milliseconds between the start of the failed run and the subsequent retry run. The default behavior is that unsuccessful runs are immediately retried.", + "launch_stage": "GA" + }, + "new_cluster": { + "description": "If new_cluster, a description of a new cluster that is created for each run.", + "ref": "compute.ClusterSpec", + "launch_stage": "GA" + }, + "notebook_task": { + "description": "The task runs a notebook when the `notebook_task` field is present.", + "ref": "jobs.NotebookTask", + "launch_stage": "GA" + }, + "notification_settings": { + "description": "Optional notification settings that are used when sending notifications to each of the `email_notifications` and `webhook_notifications` for this task run.", + "ref": "jobs.TaskNotificationSettings", + "launch_stage": "GA" + }, + "pipeline_task": { + "description": "The task triggers a pipeline update when the `pipeline_task` field is present. Only pipelines configured to use triggered more are supported.", + "ref": "jobs.PipelineTask", + "launch_stage": "GA" + }, + "power_bi_task": { + "description": "The task triggers a Power BI semantic model update when the `power_bi_task` field is present.", + "ref": "jobs.PowerBiTask", + "launch_stage": "PUBLIC_PREVIEW" + }, + "python_operator_task": { + "description": "The task runs a Python operator task.", + "ref": "jobs.PythonOperatorTask", + "launch_stage": "PRIVATE_PREVIEW" + }, + "python_wheel_task": { + "description": "The task runs a Python wheel when the `python_wheel_task` field is present.", + "ref": "jobs.PythonWheelTask", + "launch_stage": "GA" + }, + "queue_duration": { + "description": "The time in milliseconds that the run has spent in the queue.", + "launch_stage": "GA" + }, + "resolved_values": { + "description": "Parameter values including resolved references", + "ref": "jobs.ResolvedValues", + "launch_stage": "GA" + }, + "retry_on_timeout": { + "description": "An optional policy to specify whether to retry a job when it times out. The default behavior\nis to not retry on timeout.", + "launch_stage": "GA" + }, + "run_duration": { + "description": "The time in milliseconds it took the job run and all of its repairs to finish.", + "launch_stage": "GA" + }, + "run_id": { + "description": "The ID of the task run.", + "launch_stage": "GA" + }, + "run_if": { + "description": "An optional value indicating the condition that determines whether the task should be run once its dependencies have been completed. When omitted, defaults to `ALL_SUCCESS`. See :method:jobs/create for a list of possible values.", + "ref": "jobs.RunIf", + "launch_stage": "GA" + }, + "run_job_task": { + "description": "The task triggers another job when the `run_job_task` field is present.", + "ref": "jobs.RunJobTask", + "launch_stage": "GA" + }, + "run_page_url": { + "launch_stage": "GA" + }, + "setup_duration": { + "description": "The time in milliseconds it took to set up the cluster. For runs that run on new clusters this is the cluster creation time, for runs that run on existing clusters this time should be very short. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `setup_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field.", + "launch_stage": "GA" + }, + "spark_jar_task": { + "description": "The task runs a JAR when the `spark_jar_task` field is present.", + "ref": "jobs.SparkJarTask", + "launch_stage": "GA" + }, + "spark_python_task": { + "description": "The task runs a Python file when the `spark_python_task` field is present.", + "ref": "jobs.SparkPythonTask", + "launch_stage": "GA" + }, + "spark_submit_task": { + "description": "(Legacy) The task runs the spark-submit script when the spark_submit_task field is present. Databricks recommends using the spark_jar_task instead; see [Spark Submit task for jobs](/jobs/spark-submit).", + "ref": "jobs.SparkSubmitTask", + "deprecated": true, + "launch_stage": "GA" + }, + "sql_task": { + "description": "The task runs a SQL query or file, or it refreshes a SQL alert or a legacy SQL dashboard when the `sql_task` field is present.", + "ref": "jobs.SqlTask", + "launch_stage": "GA" + }, + "start_time": { + "description": "The time at which this run was started in epoch milliseconds (milliseconds since 1/1/1970 UTC). This may not be the time when the job task starts executing, for example, if the job is scheduled to run on a new cluster, this is the time the cluster creation call is issued.", + "launch_stage": "GA" + }, + "state": { + "description": "Deprecated. Please use the `status` field instead.", + "ref": "jobs.RunState", + "deprecated": true, + "launch_stage": "GA" + }, + "status": { + "ref": "jobs.RunStatus", + "launch_stage": "GA" + }, + "task_key": { + "description": "A unique name for the task. This field is used to refer to this task from other tasks.\nThis field is required and must be unique within its parent job.\nOn Update or Reset, this field is used to reference the tasks to be updated or reset.", + "launch_stage": "GA" + }, + "timeout_seconds": { + "description": "An optional timeout applied to each run of this job task. A value of `0` means no timeout.", + "launch_stage": "GA" + }, + "webhook_notifications": { + "description": "A collection of system notification IDs to notify when the run begins or completes. The default behavior is to not send any system notifications. Task webhooks respect the task notification settings.", + "ref": "jobs.WebhookNotifications", + "launch_stage": "GA" + } + } + }, + "jobs.RunType": { + "description": "The type of a run.\n* `JOB_RUN`: Normal job run. A run created with :method:jobs/runNow.\n* `WORKFLOW_RUN`: Workflow run. A run created with [dbutils.notebook.run](https://docs.databricks.com/dev-tools/databricks-utils.html#dbutils-workflow).\n* `SUBMIT_RUN`: Submit run. A run created with :method:jobs/submit.", + "enum": [ + "JOB_RUN", + "WORKFLOW_RUN", + "SUBMIT_RUN" + ], + "enum_launch_stages": { + "JOB_RUN": "GA", + "SUBMIT_RUN": "GA", + "WORKFLOW_RUN": "GA" + }, + "enum_descriptions": { + "JOB_RUN": "Normal job run. A run created with :method:jobs/runNow.", + "SUBMIT_RUN": "Submit run. A run created with :method:jobs/submit.", + "WORKFLOW_RUN": "Workflow run. A run created with [dbutils.notebook.run](/dev-tools/databricks-utils.html#dbutils-workflow)." + } + }, + "jobs.ScheduleTriggerState": { + "description": "Runtime state for a schedule trigger. Currently empty because schedule triggers\ndo not expose any trigger-specific runtime state." + }, + "jobs.Source": { + "description": "Optional location type of the SQL file. When set to `WORKSPACE`, the SQL file will be retrieved\\\nfrom the local Databricks workspace. When set to `GIT`, the SQL file will be retrieved from a Git repository\ndefined in `git_source`. If the value is empty, the task will use `GIT` if `git_source` is defined and `WORKSPACE` otherwise.\n\n* `WORKSPACE`: SQL file is located in Databricks workspace.\n* `GIT`: SQL file is located in cloud Git provider.", + "enum": [ + "WORKSPACE", + "GIT" + ], + "enum_launch_stages": { + "GIT": "GA", + "WORKSPACE": "GA" + }, + "enum_descriptions": { + "GIT": "SQL file is located in cloud Git provider.", + "WORKSPACE": "SQL file is located in \u003cDatabricks\u003e workspace." + } + }, + "jobs.SparkJarTask": { + "fields": { + "jar_uri": { + "description": "Deprecated since 04/2016. For classic compute, provide a `jar` through the `libraries` field instead. For serverless compute, provide a `jar` though the `java_dependencies` field inside the `environments` list.\n\nSee the examples of classic and serverless compute usage at the top of the page.", + "deprecated": true, + "launch_stage": "GA" + }, + "main_class_name": { + "description": "The full name of the class containing the main method to be executed. This class must be contained in a JAR provided as a library.\n\nThe code must use `SparkContext.getOrCreate` to obtain a Spark context; otherwise, runs of the job fail.", + "launch_stage": "GA" + }, + "parameters": { + "description": "Parameters passed to the main method.\n\nUse [Task parameter variables](https://docs.databricks.com/jobs.html#parameter-variables) to set parameters containing information about job runs.", + "launch_stage": "GA" + }, + "run_as_repl": { + "description": "Deprecated. A value of `false` is no longer supported.", + "deprecated": true, + "launch_stage": "GA" + } + } + }, + "jobs.SparkPythonTask": { + "fields": { + "parameters": { + "description": "Command line parameters passed to the Python file.\n\nUse [Task parameter variables](https://docs.databricks.com/jobs.html#parameter-variables) to set parameters containing information about job runs.", + "launch_stage": "GA" + }, + "python_file": { + "description": "The Python file to be executed. Cloud file URIs (such as dbfs:/, s3:/, adls:/, gcs:/) and workspace paths are supported. For python files stored in the Databricks workspace, the path must be absolute and begin with `/`. For files stored in a remote repository, the path must be relative. This field is required.", + "launch_stage": "GA" + }, + "source": { + "description": "Optional location type of the Python file. When set to `WORKSPACE` or not specified, the file will be retrieved from the local\nDatabricks workspace or cloud location (if the `python_file` has a URI format). When set to `GIT`,\nthe Python file will be retrieved from a Git repository defined in `git_source`.\n\n* `WORKSPACE`: The Python file is located in a Databricks workspace or at a cloud filesystem URI.\n* `GIT`: The Python file is located in a remote Git repository.", + "ref": "jobs.Source", + "launch_stage": "GA" + } + } + }, + "jobs.SparkSubmitTask": { + "fields": { + "parameters": { + "description": "Command-line parameters passed to spark submit.\n\nUse [Task parameter variables](https://docs.databricks.com/jobs.html#parameter-variables) to set parameters containing information about job runs.", + "launch_stage": "GA" + } + } + }, + "jobs.SparseCheckout": { + "fields": { + "patterns": { + "description": "List of patterns to include for sparse checkout.", + "launch_stage": "GA" + } + } + }, + "jobs.SqlAlertOutput": { + "fields": { + "alert_state": { + "ref": "jobs.SqlAlertState", + "launch_stage": "GA" + }, + "output_link": { + "description": "The link to find the output results.", + "launch_stage": "GA" + }, + "query_text": { + "description": "The text of the SQL query. Can Run permission of the SQL query associated with the SQL alert is required to view this field.", + "launch_stage": "GA" + }, + "sql_statements": { + "description": "Information about SQL statements executed in the run.", + "launch_stage": "GA" + }, + "warehouse_id": { + "description": "The canonical identifier of the SQL warehouse.", + "launch_stage": "GA" + } + } + }, + "jobs.SqlAlertState": { + "description": "The state of the SQL alert.\n\n* UNKNOWN: alert yet to be evaluated\n* OK: alert evaluated and did not fulfill trigger conditions\n* TRIGGERED: alert evaluated and fulfilled trigger conditions", + "enum": [ + "UNKNOWN", + "OK", + "TRIGGERED" + ], + "enum_launch_stages": { + "OK": "GA", + "TRIGGERED": "GA", + "UNKNOWN": "GA" + } + }, + "jobs.SqlConditionConfiguration": { + "fields": { + "sql_query_id": { + "description": "The ID of the SQL query to evaluate as the trigger condition.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "trigger_mode": { + "description": "Determines how the SQL query result is interpreted to decide whether the condition fires.\nMust be set to a recognized value when provided.\nWhen unset on an existing serialized configuration, the server preserves the original\nsemantics by interpreting it as `QUERY_RETURNS_ROWS`. New configurations should set this\nexplicitly — explicit `SQL_CONDITION_TRIGGER_MODE_UNSPECIFIED` is rejected at validation.", + "ref": "jobs.SqlConditionTriggerMode", + "launch_stage": "PRIVATE_PREVIEW" + }, + "warehouse_id": { + "description": "The canonical identifier of the SQL warehouse to run the condition query against.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.SqlConditionRunInfoDetails": { + "description": "SQL condition evaluation details captured at the time the run was triggered", + "fields": { + "condition_evaluation_satisfied": { + "description": "Whether the last condition evaluation was satisfied (query returned truthy result).", + "launch_stage": "PRIVATE_PREVIEW" + }, + "condition_evaluation_sql_session_id": { + "description": "The ID of the SQL session, used by the UI to track session context.\nSet for the QUERY_RETURNS_ROWS trigger mode.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "condition_evaluation_sql_statement_id": { + "description": "The SQL statement ID of the condition evaluation, set when the condition is\nevaluated by running a single SQL statement (the RESULT_VALUE_CHANGES trigger\nmode). The UI uses it to link to the query execution details.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.SqlConditionState": { + "fields": { + "latest_condition_evaluation_satisfied": { + "description": "Whether the last condition evaluation was satisfied (query returned truthy result).", + "launch_stage": "PRIVATE_PREVIEW" + }, + "latest_condition_evaluation_sql_session_id": { + "description": "The ID of the SQL session, used by UI to track session context.\nPopulated for QUERY_RETURNS_ROWS, which executes the query through Redash.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "latest_condition_evaluation_sql_statement_id": { + "description": "The SEA statement ID of the SQL statement executed for the latest condition evaluation.\nPopulated for RESULT_VALUE_CHANGES, which executes the query through the SQL execution API.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.SqlConditionTriggerMode": { + "description": "The strategy used to evaluate a SQL condition trigger against a query result set.\n\n* `SQL_CONDITION_TRIGGER_MODE_UNSPECIFIED`: Sentinel zero-value. Not a valid input — the\nvalidator rejects this when sent explicitly. Internally treated as `QUERY_RETURNS_ROWS`\nwhen reading legacy data that predates this field.\n* `QUERY_RETURNS_ROWS`: Fires whenever the result set has at least one row. Zero rows means\nthe condition is not met. This is the original SQL condition behavior.\n* `RESULT_VALUE_CHANGES`: Fires whenever the query's single result value differs from the\nprevious evaluation. The first evaluation always fires. Queries must return exactly one\ncell (one row, one column).", + "enum": [ + "QUERY_RETURNS_ROWS", + "RESULT_VALUE_CHANGES" + ], + "enum_launch_stages": { + "QUERY_RETURNS_ROWS": "PRIVATE_PREVIEW", + "RESULT_VALUE_CHANGES": "PRIVATE_PREVIEW" + }, + "enum_descriptions": { + "QUERY_RETURNS_ROWS": "Fires whenever the result set has at least one row. Zero rows means", + "RESULT_VALUE_CHANGES": "Fires whenever the query's single result value differs from the" + } + }, + "jobs.SqlDashboardOutput": { + "fields": { + "warehouse_id": { + "description": "The canonical identifier of the SQL warehouse.", + "launch_stage": "GA" + }, + "widgets": { + "description": "Widgets executed in the run. Only SQL query based widgets are listed.", + "launch_stage": "GA" + } + } + }, + "jobs.SqlDashboardWidgetOutput": { + "fields": { + "end_time": { + "description": "Time (in epoch milliseconds) when execution of the SQL widget ends.", + "launch_stage": "GA" + }, + "error": { + "description": "The information about the error when execution fails.", + "ref": "jobs.SqlOutputError", + "launch_stage": "GA" + }, + "output_link": { + "description": "The link to find the output results.", + "launch_stage": "GA" + }, + "start_time": { + "description": "Time (in epoch milliseconds) when execution of the SQL widget starts.", + "launch_stage": "GA" + }, + "status": { + "description": "The execution status of the SQL widget.", + "ref": "jobs.SqlDashboardWidgetOutputStatus", + "launch_stage": "GA" + }, + "widget_id": { + "description": "The canonical identifier of the SQL widget.", + "launch_stage": "GA" + }, + "widget_title": { + "description": "The title of the SQL widget.", + "launch_stage": "GA" + } + } + }, + "jobs.SqlDashboardWidgetOutputStatus": { + "enum": [ + "PENDING", + "RUNNING", + "SUCCESS", + "FAILED", + "CANCELLED" + ], + "enum_launch_stages": { + "CANCELLED": "GA", + "FAILED": "GA", + "PENDING": "GA", + "RUNNING": "GA", + "SUCCESS": "GA" + } + }, + "jobs.SqlOutput": { + "fields": { + "alert_output": { + "description": "The output of a SQL alert task, if available.", + "ref": "jobs.SqlAlertOutput", + "launch_stage": "GA" + }, + "dashboard_output": { + "description": "The output of a SQL dashboard task, if available.", + "ref": "jobs.SqlDashboardOutput", + "launch_stage": "GA" + }, + "query_output": { + "description": "The output of a SQL query task, if available.", + "ref": "jobs.SqlQueryOutput", + "launch_stage": "GA" + } + } + }, + "jobs.SqlOutputError": { + "fields": { + "message": { + "description": "The error message when execution fails.", + "launch_stage": "GA" + } + } + }, + "jobs.SqlQueryOutput": { + "fields": { + "endpoint_id": { + "launch_stage": "GA" + }, + "output_link": { + "description": "The link to find the output results.", + "launch_stage": "GA" + }, + "query_text": { + "description": "The text of the SQL query. Can Run permission of the SQL query is required to view this field.", + "launch_stage": "GA" + }, + "sql_statements": { + "description": "Information about SQL statements executed in the run.", + "launch_stage": "GA" + }, + "warehouse_id": { + "description": "The canonical identifier of the SQL warehouse.", + "launch_stage": "GA" + } + } + }, + "jobs.SqlStatementOutput": { + "fields": { + "lookup_key": { + "description": "A key that can be used to look up query details.", + "launch_stage": "GA" + } + } + }, + "jobs.SqlTask": { + "fields": { + "alert": { + "description": "If alert, indicates that this job must refresh a SQL alert.", + "ref": "jobs.SqlTaskAlert", + "launch_stage": "GA" + }, + "dashboard": { + "description": "If dashboard, indicates that this job must refresh a SQL dashboard.", + "ref": "jobs.SqlTaskDashboard", + "launch_stage": "GA" + }, + "file": { + "description": "If file, indicates that this job runs a SQL file in a remote Git repository.", + "ref": "jobs.SqlTaskFile", + "launch_stage": "GA" + }, + "parameters": { + "description": "Parameters to be used for each run of this job. The SQL alert task does not support custom parameters.", + "launch_stage": "GA" + }, + "query": { + "description": "If query, indicates that this job must execute a SQL query.", + "ref": "jobs.SqlTaskQuery", + "launch_stage": "GA" + }, + "warehouse_id": { + "description": "The canonical identifier of the SQL warehouse. Recommended to use with serverless or pro SQL warehouses. Classic SQL warehouses are only supported for SQL alert, dashboard and query tasks and are limited to scheduled single-task jobs.", + "launch_stage": "GA" + } + } + }, + "jobs.SqlTaskAlert": { + "fields": { + "alert_id": { + "description": "The canonical identifier of the SQL alert.", + "launch_stage": "GA" + }, + "pause_subscriptions": { + "description": "If true, the alert notifications are not sent to subscribers.", + "launch_stage": "GA" + }, + "subscriptions": { + "description": "If specified, alert notifications are sent to subscribers.", + "launch_stage": "GA" + } + } + }, + "jobs.SqlTaskDashboard": { + "fields": { + "custom_subject": { + "description": "Subject of the email sent to subscribers of this task.", + "launch_stage": "GA" + }, + "dashboard_id": { + "description": "The canonical identifier of the SQL dashboard.", + "launch_stage": "GA" + }, + "pause_subscriptions": { + "description": "If true, the dashboard snapshot is not taken, and emails are not sent to subscribers.", + "launch_stage": "GA" + }, + "subscriptions": { + "description": "If specified, dashboard snapshots are sent to subscriptions.", + "launch_stage": "GA" + } + } + }, + "jobs.SqlTaskFile": { + "fields": { + "path": { + "description": "Path of the SQL file. Must be relative if the source is a remote Git repository and absolute for workspace paths.", + "launch_stage": "GA" + }, + "source": { + "description": "Optional location type of the SQL file. When set to `WORKSPACE`, the SQL file will be retrieved\nfrom the local Databricks workspace. When set to `GIT`, the SQL file will be retrieved from a Git repository\ndefined in `git_source`. If the value is empty, the task will use `GIT` if `git_source` is defined and `WORKSPACE` otherwise.\n\n* `WORKSPACE`: SQL file is located in Databricks workspace.\n* `GIT`: SQL file is located in cloud Git provider.", + "ref": "jobs.Source", + "launch_stage": "GA" + } + } + }, + "jobs.SqlTaskQuery": { + "fields": { + "query_id": { + "description": "The canonical identifier of the SQL query.", + "launch_stage": "GA" + } + } + }, + "jobs.SqlTaskSubscription": { + "fields": { + "destination_id": { + "description": "The canonical identifier of the destination to receive email notification. This parameter is mutually exclusive with user_name. You cannot set both destination_id and user_name for subscription notifications.", + "launch_stage": "GA" + }, + "user_name": { + "description": "The user name to receive the subscription email. This parameter is mutually exclusive with destination_id. You cannot set both destination_id and user_name for subscription notifications.", + "launch_stage": "GA" + } + } + }, + "jobs.StorageMode": { + "enum": [ + "DIRECT_QUERY", + "IMPORT", + "DUAL" + ], + "enum_launch_stages": { + "DIRECT_QUERY": "PUBLIC_PREVIEW", + "DUAL": "PUBLIC_PREVIEW", + "IMPORT": "PUBLIC_PREVIEW" + } + }, + "jobs.SubmitRun": { + "fields": { + "access_control_list": { + "description": "List of permissions to set on the job.", + "launch_stage": "GA" + }, + "budget_policy_id": { + "description": "The user specified id of the budget policy to use for this one-time run.\nIf not specified, the run will be not be attributed to any budget policy.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "duration_target": { + "description": "The window the run aims to finish within, in hours, for a Cost-optimized serverless run.\nRequired only when `performance_target` is `COST_OPTIMIZED`. Must be one of the\nsupported values: `NO_FLEXIBILITY`, `4h`, `12h`, `24h`, `72h`. `NO_FLEXIBILITY` means the run\nuses the default cost-optimized performance level without additional cost-saving optimizations.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "email_notifications": { + "description": "An optional set of email addresses notified when the run begins or completes.", + "ref": "jobs.JobEmailNotifications", + "launch_stage": "GA" + }, + "environment_variables": { + "description": "Named environment-variable entries that tasks of this one-time run can\nreference by key from `RunTaskSettings.environment_variables_key`. Each\nentry's `spec` holds inline `variables` and optional `.env` `files`.\nHandled identically to `JobSettings.environment_variables`. Maximum 10 entries.\nEntries are independent of one another — there is no cross-entry merging.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "environments": { + "description": "A list of task execution environment specifications that can be referenced by tasks of this run.", + "launch_stage": "GA" + }, + "git_source": { + "description": "An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks.\n\nIf `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task.\n\nNote: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job.", + "ref": "jobs.GitSource", + "launch_stage": "GA" + }, + "health": { + "ref": "jobs.JobsHealthRules", + "launch_stage": "GA" + }, + "idempotency_token": { + "description": "An optional token that can be used to guarantee the idempotency of job run requests. If a run with the provided token already exists,\nthe request does not create a new run but returns the ID of the existing run instead. If a run with the provided token is deleted,\nan error is returned.\n\nIf you specify the idempotency token, upon failure you can retry until the request succeeds. Databricks guarantees that exactly\none run is launched with that idempotency token.\n\nThis token must have at most 64 characters.", + "launch_stage": "GA" + }, + "notification_settings": { + "description": "Optional notification settings that are used when sending notifications to each of the `email_notifications` and `webhook_notifications` for this run.", + "ref": "jobs.JobNotificationSettings", + "launch_stage": "GA" + }, + "performance_target": { + "description": "The performance mode on a serverless one-time run. This field determines the level of compute performance or cost-efficiency for the run.\nThe performance target does not apply to tasks that run on Serverless GPU compute.\n\n* `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance.\n* `STANDARD`: Enables cost-efficient execution of serverless workloads.\n* `COST_OPTIMIZED`: Enables lower job costs by optimizing compute for your selected target duration time. Must provide a duration target.", + "ref": "jobs.PerformanceTarget", + "launch_stage": "GA" + }, + "queue": { + "description": "The queue settings of the one-time run.", + "ref": "jobs.QueueSettings", + "launch_stage": "GA" + }, + "run_as": { + "description": "Specifies the user or service principal that the job runs as. If not specified, the job runs as the user who submits the request.", + "ref": "jobs.JobRunAs", + "launch_stage": "GA" + }, + "run_name": { + "description": "An optional name for the run. The default value is `Untitled`.", + "launch_stage": "GA" + }, + "tasks": { + "launch_stage": "GA" + }, + "timeout_seconds": { + "description": "An optional timeout applied to each run of this job. A value of `0` means no timeout.", + "launch_stage": "GA" + }, + "usage_policy_id": { + "description": "The user specified id of the usage policy to use for this one-time run.\nIf not specified, a default usage policy may be applied when creating or modifying the job.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "webhook_notifications": { + "description": "A collection of system notification IDs to notify when the run begins or completes.", + "ref": "jobs.WebhookNotifications", + "launch_stage": "GA" + } + } + }, + "jobs.SubmitRunResponse": { + "description": "Run was created and started successfully.", + "fields": { + "run_id": { + "description": "The canonical identifier for the newly submitted run.", + "launch_stage": "GA" + } + } + }, + "jobs.SubmitTask": { + "fields": { + "ai_runtime_task": { + "description": "The task runs a multi-gpu compute workload on Databricks AI Runtime. Specify\nthe accelerator type and count, the command to run, and where the workload's\ncode and MLflow output are stored.", + "ref": "jobs.AiRuntimeTask", + "launch_stage": "PUBLIC_PREVIEW" + }, + "alert_task": { + "description": "The task evaluates a Databricks alert and sends notifications to subscribers\nwhen the `alert_task` field is present.", + "ref": "jobs.AlertTask", + "launch_stage": "PUBLIC_PREVIEW" + }, + "clean_rooms_notebook_task": { + "description": "The task runs a [clean rooms](https://docs.databricks.com/clean-rooms/index.html) notebook\nwhen the `clean_rooms_notebook_task` field is present.", + "ref": "jobs.CleanRoomsNotebookTask", + "launch_stage": "GA" + }, + "compute": { + "description": "Task level compute configuration.", + "ref": "jobs.Compute", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "condition_task": { + "description": "The task evaluates a condition that can be used to control the execution of other tasks when the `condition_task` field is present.\nThe condition task does not require a cluster to execute and does not support retries or notifications.", + "ref": "jobs.ConditionTask", + "launch_stage": "GA" + }, + "dashboard_task": { + "description": "The task refreshes a dashboard and sends a snapshot to subscribers.", + "ref": "jobs.DashboardTask", + "launch_stage": "GA" + }, + "dbt_cloud_task": { + "description": "Task type for dbt cloud, deprecated in favor of the new name dbt_platform_task", + "ref": "jobs.DbtCloudTask", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "dbt_platform_task": { + "ref": "jobs.DbtPlatformTask", + "launch_stage": "PRIVATE_PREVIEW" + }, + "dbt_task": { + "description": "The task runs one or more dbt commands when the `dbt_task` field is present. The dbt task requires both Databricks SQL and the ability to use a serverless or a pro SQL warehouse.", + "ref": "jobs.DbtTask", + "launch_stage": "GA" + }, + "depends_on": { + "description": "An optional array of objects specifying the dependency graph of the task. All tasks specified in this field must complete successfully before executing this task.\nThe key is `task_key`, and the value is the name assigned to the dependent task.", + "launch_stage": "GA" + }, + "description": { + "description": "An optional description for this task.", + "launch_stage": "GA" + }, + "disable_auto_optimization": { + "description": "An option to disable auto optimization in serverless", + "launch_stage": "GA" + }, + "disabled": { + "description": "An optional flag to disable the task. If set to true, the task will not run even if it is part of a job.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "email_notifications": { + "description": "An optional set of email addresses notified when the task run begins or completes. The default behavior is to not send any emails.", + "ref": "jobs.JobEmailNotifications", + "launch_stage": "GA" + }, + "environment_key": { + "description": "The key that references an environment spec in a job. This field is required for Python script, Python wheel and dbt tasks when using serverless compute or a compute resource that uses Environments mode.", + "launch_stage": "GA" + }, + "environment_variables_key": { + "description": "Reference to a `JobEnvironmentVariables` entry defined in\n`RunSettings.environment_variables` for one-time runs or preserved in\n`Run.environment_variables` for run snapshots. The selected entry's\nvariables are applied to this task at execution time. This field supports\nserverless tasks using environment version 5 or later.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "existing_cluster_id": { + "description": "If existing_cluster_id, the ID of an existing cluster that is used for all runs.\nWhen running jobs or tasks on an existing cluster, you may need to manually restart\nthe cluster if it stops responding. We suggest running jobs and tasks on new clusters for\ngreater reliability", + "launch_stage": "GA" + }, + "for_each_task": { + "description": "The task executes a nested task for every input provided when the `for_each_task` field is present.", + "ref": "jobs.ForEachTask", + "launch_stage": "GA" + }, + "gen_ai_compute_task": { + "ref": "jobs.GenAiComputeTask", + "launch_stage": "PRIVATE_PREVIEW" + }, + "health": { + "ref": "jobs.JobsHealthRules", + "launch_stage": "GA" + }, + "libraries": { + "description": "An optional list of libraries to be installed on the cluster.\nThe default value is an empty list.", + "launch_stage": "GA" + }, + "max_retries": { + "description": "An optional maximum number of times to retry an unsuccessful run. A run is considered to be unsuccessful if it completes with the `FAILED` result_state or `INTERNAL_ERROR` `life_cycle_state`. The value `-1` means to retry indefinitely and the value `0` means to never retry.", + "launch_stage": "GA" + }, + "min_retry_interval_millis": { + "description": "An optional minimal interval in milliseconds between the start of the failed run and the subsequent retry run. The default behavior is that unsuccessful runs are immediately retried.", + "launch_stage": "GA" + }, + "new_cluster": { + "description": "If new_cluster, a description of a new cluster that is created for each run.", + "ref": "compute.ClusterSpec", + "launch_stage": "GA" + }, + "notebook_task": { + "description": "The task runs a notebook when the `notebook_task` field is present.", + "ref": "jobs.NotebookTask", + "launch_stage": "GA" + }, + "notification_settings": { + "description": "Optional notification settings that are used when sending notifications to each of the `email_notifications` and `webhook_notifications` for this task run.", + "ref": "jobs.TaskNotificationSettings", + "launch_stage": "GA" + }, + "pipeline_task": { + "description": "The task triggers a pipeline update when the `pipeline_task` field is present. Only pipelines configured to use triggered more are supported.", + "ref": "jobs.PipelineTask", + "launch_stage": "GA" + }, + "power_bi_task": { + "description": "The task triggers a Power BI semantic model update when the `power_bi_task` field is present.", + "ref": "jobs.PowerBiTask", + "launch_stage": "PUBLIC_PREVIEW" + }, + "python_operator_task": { + "description": "The task runs a Python operator task.", + "ref": "jobs.PythonOperatorTask", + "launch_stage": "PRIVATE_PREVIEW" + }, + "python_wheel_task": { + "description": "The task runs a Python wheel when the `python_wheel_task` field is present.", + "ref": "jobs.PythonWheelTask", + "launch_stage": "GA" + }, + "retry_on_timeout": { + "description": "An optional policy to specify whether to retry a job when it times out. The default behavior\nis to not retry on timeout.", + "launch_stage": "GA" + }, + "run_if": { + "description": "An optional value indicating the condition that determines whether the task should be run once its dependencies have been completed. When omitted, defaults to `ALL_SUCCESS`. See :method:jobs/create for a list of possible values.", + "ref": "jobs.RunIf", + "launch_stage": "GA" + }, + "run_job_task": { + "description": "The task triggers another job when the `run_job_task` field is present.", + "ref": "jobs.RunJobTask", + "launch_stage": "GA" + }, + "spark_jar_task": { + "description": "The task runs a JAR when the `spark_jar_task` field is present.", + "ref": "jobs.SparkJarTask", + "launch_stage": "GA" + }, + "spark_python_task": { + "description": "The task runs a Python file when the `spark_python_task` field is present.", + "ref": "jobs.SparkPythonTask", + "launch_stage": "GA" + }, + "spark_submit_task": { + "description": "(Legacy) The task runs the spark-submit script when the spark_submit_task field is present. Databricks recommends using the spark_jar_task instead; see [Spark Submit task for jobs](/jobs/spark-submit).", + "ref": "jobs.SparkSubmitTask", + "deprecated": true, + "launch_stage": "GA" + }, + "sql_task": { + "description": "The task runs a SQL query or file, or it refreshes a SQL alert or a legacy SQL dashboard when the `sql_task` field is present.", + "ref": "jobs.SqlTask", + "launch_stage": "GA" + }, + "task_key": { + "description": "A unique name for the task. This field is used to refer to this task from other tasks.\nThis field is required and must be unique within its parent job.\nOn Update or Reset, this field is used to reference the tasks to be updated or reset.", + "launch_stage": "GA" + }, + "timeout_seconds": { + "description": "An optional timeout applied to each run of this job task. A value of `0` means no timeout.", + "launch_stage": "GA" + }, + "webhook_notifications": { + "description": "A collection of system notification IDs to notify when the run begins or completes. The default behavior is to not send any system notifications. Task webhooks respect the task notification settings.", + "ref": "jobs.WebhookNotifications", + "launch_stage": "GA" + } + } + }, + "jobs.Subscription": { + "fields": { + "attachment": { + "description": "Optional: The configuration for the files attached to the dashboard snapshot notification. It\ncontrols the underlying data of dashboard widgets that is attached as data files and which\npages are included in the attached PDF. If not specified, the notification is sent with only\nthe default snapshot.", + "ref": "jobs.SubscriptionAttachment", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "custom_subject": { + "description": "Optional: Allows users to specify a custom subject line on the email sent\nto subscribers.", + "launch_stage": "GA" + }, + "paused": { + "description": "When true, the subscription will not send emails.", + "launch_stage": "GA" + }, + "subscribers": { + "description": "The list of subscribers to send the snapshot of the dashboard to.", + "launch_stage": "GA" + } + } + }, + "jobs.SubscriptionAttachment": { + "description": "The configuration for the files attached to the dashboard snapshot notification sent to\nsubscribers. `data_attachment` describes the underlying data of dashboard widgets attached\nas data files, and `page_attachment` describes which dashboard pages are included in the\nattached PDF.", + "fields": { + "data_attachment": { + "description": "Optional: The configuration for the underlying data of dashboard widgets attached as tabular\ndata files. If not specified, no tabular data is attached.", + "ref": "jobs.SubscriptionAttachmentDataAttachment", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_attachment": { + "description": "Optional: The selection of dashboard pages included in the attached PDF. If not specified,\nonly the first page is included.", + "ref": "jobs.SubscriptionAttachmentPageAttachment", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "jobs.SubscriptionAttachmentDataAttachment": { + "description": "The configuration for the tabular data files attached to the dashboard snapshot. `widgets`\nlists the widgets whose data is exported and `file_format` is the output format; each\nreferenced widget's data is exported as a separate file.", + "fields": { + "file_format": { + "description": "The file format of the exported tabular data files.", + "ref": "jobs.SubscriptionAttachmentDataAttachmentFileFormat", + "launch_stage": "PRIVATE_PREVIEW" + }, + "include_applied_filters": { + "description": "When true, the dashboard's applied filter values are included alongside the tabular data as\nan additional attached file.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "widgets": { + "description": "The widgets whose underlying data is exported. At least one widget must be referenced.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.SubscriptionAttachmentDataAttachmentFileFormat": { + "description": "The output format of an exported tabular data file. Must be set to a value other than\n`FILE_FORMAT_UNSPECIFIED`.", + "enum": [ + "FILE_FORMAT_CSV", + "FILE_FORMAT_TSV", + "FILE_FORMAT_EXCEL" + ], + "enum_launch_stages": { + "FILE_FORMAT_CSV": "PRIVATE_PREVIEW", + "FILE_FORMAT_EXCEL": "PRIVATE_PREVIEW", + "FILE_FORMAT_TSV": "PRIVATE_PREVIEW" + } + }, + "jobs.SubscriptionAttachmentDataAttachmentWidget": { + "description": "Identifies a dashboard widget whose data to attach. `page_id` and `widget_id` are\nthe URL identifiers from the dashboard's serialized definition returned by the Get dashboard\nAPI (`serialized_dashboard`), and together they uniquely identify the widget.", + "fields": { + "page_id": { + "description": "The URL identifier of the page containing the widget. This is the value of the `name`\nfield of the corresponding entry under `pages` in the serialized dashboard definition.\nFormat: alphanumeric, hyphen, and underscore characters allowed, max length 63.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "widget_id": { + "description": "The URL identifier of the widget. This is the value of the `name` field of the\ncorresponding widget under that page's `layout` in the serialized dashboard definition.\nFormat: alphanumeric, hyphen, and underscore characters allowed, max length 63.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.SubscriptionAttachmentPageAttachment": { + "description": "The selection of dashboard pages included in the attached PDF. `page_selection` chooses\nbetween all pages, the first page only, or an explicit subset listed in `page_ids`.", + "fields": { + "page_ids": { + "description": "The identifiers of the pages to include in the PDF. Only specified when `page_selection` is\n`PAGE_SELECTION_SUBSET`. Each value is the identifier of a page in the dashboard's\nserialized definition returned by the Get dashboard API (`serialized_dashboard`): the value\nof the `name` field of an entry under `pages`.\nFormat: alphanumeric, hyphen, and underscore characters allowed, max length 63.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_selection": { + "description": "How the attached pages are selected. When set to `PAGE_SELECTION_SUBSET`, the pages to\ninclude are listed in `page_ids`.", + "ref": "jobs.SubscriptionAttachmentPageAttachmentPageSelection", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "jobs.SubscriptionAttachmentPageAttachmentPageSelection": { + "description": "Determines which dashboard pages are attached to the notification.", + "enum": [ + "PAGE_SELECTION_ALL", + "PAGE_SELECTION_SUBSET" + ], + "enum_launch_stages": { + "PAGE_SELECTION_ALL": "PRIVATE_PREVIEW", + "PAGE_SELECTION_SUBSET": "PRIVATE_PREVIEW" + } + }, + "jobs.SubscriptionSubscriber": { + "fields": { + "destination_id": { + "description": "A snapshot of the dashboard will be sent to the destination when the `destination_id` field is present.", + "launch_stage": "GA" + }, + "user_name": { + "description": "A snapshot of the dashboard will be sent to the user's email when the `user_name` field is present.", + "launch_stage": "GA" + } + } + }, + "jobs.TableState": { + "fields": { + "has_seen_updates": { + "description": "Whether or not the table has seen updates since either\nthe creation of the trigger or the last successful evaluation of the trigger", + "launch_stage": "GA" + }, + "table_name": { + "description": "Full table name of the table to monitor, e.g. `mycatalog.myschema.mytable`", + "launch_stage": "GA" + } + } + }, + "jobs.TableTriggerState": { + "fields": { + "last_seen_table_states": { + "launch_stage": "GA" + }, + "using_scalable_monitoring": { + "description": "Indicates whether the trigger is using scalable monitoring.", + "launch_stage": "GA" + } + } + }, + "jobs.TableUpdateTriggerConfiguration": { + "fields": { + "condition": { + "description": "The table(s) condition based on which to trigger a job run.", + "ref": "jobs.Condition", + "launch_stage": "GA" + }, + "min_time_between_triggers_seconds": { + "description": "If set, the trigger starts a run only after the specified amount of time has passed since\nthe last time the trigger fired. The minimum allowed value is 60 seconds.", + "launch_stage": "GA" + }, + "table_names": { + "description": "A list of tables to monitor for changes. The table name must be in the format `catalog_name.schema_name.table_name`.", + "launch_stage": "GA" + }, + "wait_after_last_change_seconds": { + "description": "If set, the trigger starts a run only after no table updates have occurred for the specified time\nand can be used to wait for a series of table updates before triggering a run. The\nminimum allowed value is 60 seconds.", + "launch_stage": "GA" + } + } + }, + "jobs.Task": { + "fields": { + "ai_runtime_task": { + "description": "The task runs a multi-gpu compute workload on Databricks AI Runtime. Specify\nthe accelerator type and count, the command to run, and where the workload's\ncode and MLflow output are stored.", + "ref": "jobs.AiRuntimeTask", + "launch_stage": "PUBLIC_PREVIEW" + }, + "alert_task": { + "description": "The task evaluates a Databricks alert and sends notifications to subscribers\nwhen the `alert_task` field is present.", + "ref": "jobs.AlertTask", + "launch_stage": "PUBLIC_PREVIEW" + }, + "clean_rooms_notebook_task": { + "description": "The task runs a [clean rooms](https://docs.databricks.com/clean-rooms/index.html) notebook\nwhen the `clean_rooms_notebook_task` field is present.", + "ref": "jobs.CleanRoomsNotebookTask", + "launch_stage": "GA" + }, + "compute": { + "description": "Task level compute configuration.", + "ref": "jobs.Compute", + "launch_stage": "PUBLIC_PREVIEW" + }, + "condition_task": { + "description": "The task evaluates a condition that can be used to control the execution of other tasks when the `condition_task` field is present.\nThe condition task does not require a cluster to execute and does not support retries or notifications.", + "ref": "jobs.ConditionTask", + "launch_stage": "GA" + }, + "dashboard_task": { + "description": "The task refreshes a dashboard and sends a snapshot to subscribers.", + "ref": "jobs.DashboardTask", + "launch_stage": "GA" + }, + "dbt_cloud_task": { + "description": "Task type for dbt cloud, deprecated in favor of the new name dbt_platform_task", + "ref": "jobs.DbtCloudTask", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "dbt_platform_task": { + "ref": "jobs.DbtPlatformTask", + "launch_stage": "PRIVATE_PREVIEW" + }, + "dbt_task": { + "description": "The task runs one or more dbt commands when the `dbt_task` field is present. The dbt task requires both Databricks SQL and the ability to use a serverless or a pro SQL warehouse.", + "ref": "jobs.DbtTask", + "launch_stage": "GA" + }, + "depends_on": { + "description": "An optional array of objects specifying the dependency graph of the task. All tasks specified in this field must complete before executing this task. The task will run only if the `run_if` condition is true.\nThe key is `task_key`, and the value is the name assigned to the dependent task.", + "launch_stage": "GA" + }, + "description": { + "description": "An optional description for this task.", + "launch_stage": "GA" + }, + "disable_auto_optimization": { + "description": "An option to disable auto optimization in serverless", + "launch_stage": "GA" + }, + "disabled": { + "description": "An optional flag to disable the task. If set to true, the task will not run even if it is part of a job.", + "launch_stage": "GA" + }, + "email_notifications": { + "description": "An optional set of email addresses that is notified when runs of this task begin or complete as well as when this task is deleted. The default behavior is to not send any emails.", + "ref": "jobs.TaskEmailNotifications", + "launch_stage": "GA" + }, + "environment_key": { + "description": "The key that references an environment spec in a job. This field is required for Python script, Python wheel and dbt tasks when using serverless compute or a compute resource that uses Environments mode.", + "launch_stage": "GA" + }, + "environment_variables_key": { + "description": "Reference to a `JobEnvironmentVariables` entry defined in\n`JobSettings.environment_variables`. The selected entry's variables are\napplied to this task at execution time. This field supports serverless\ntasks using environment version 5 or later.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "existing_cluster_id": { + "description": "If existing_cluster_id, the ID of an existing cluster that is used for all runs.\nWhen running jobs or tasks on an existing cluster, you may need to manually restart\nthe cluster if it stops responding. We suggest running jobs and tasks on new clusters for\ngreater reliability", + "launch_stage": "GA" + }, + "for_each_task": { + "description": "The task executes a nested task for every input provided when the `for_each_task` field is present.", + "ref": "jobs.ForEachTask", + "launch_stage": "GA" + }, + "gen_ai_compute_task": { + "ref": "jobs.GenAiComputeTask", + "launch_stage": "PRIVATE_PREVIEW" + }, + "health": { + "ref": "jobs.JobsHealthRules", + "launch_stage": "GA" + }, + "job_cluster_key": { + "description": "If job_cluster_key, this task is executed reusing the cluster specified in `job.settings.job_clusters`.", + "launch_stage": "GA" + }, + "libraries": { + "description": "An optional list of libraries to be installed on the cluster.\nThe default value is an empty list.", + "launch_stage": "GA" + }, + "max_retries": { + "description": "An optional maximum number of times to retry an unsuccessful run. A run is considered to be unsuccessful if it completes with the `FAILED` result_state or `INTERNAL_ERROR` `life_cycle_state`. The value `-1` means to retry indefinitely and the value `0` means to never retry.", + "launch_stage": "GA" + }, + "min_retry_interval_millis": { + "description": "An optional minimal interval in milliseconds between the start of the failed run and the subsequent retry run. The default behavior is that unsuccessful runs are immediately retried.", + "launch_stage": "GA" + }, + "new_cluster": { + "description": "If new_cluster, a description of a new cluster that is created for each run.", + "ref": "compute.ClusterSpec", + "launch_stage": "GA" + }, + "notebook_task": { + "description": "The task runs a notebook when the `notebook_task` field is present.", + "ref": "jobs.NotebookTask", + "launch_stage": "GA" + }, + "notification_settings": { + "description": "Optional notification settings that are used when sending notifications to each of the `email_notifications` and `webhook_notifications` for this task.", + "ref": "jobs.TaskNotificationSettings", + "launch_stage": "GA" + }, + "pipeline_task": { + "description": "The task triggers a pipeline update when the `pipeline_task` field is present. Only pipelines configured to use triggered more are supported.", + "ref": "jobs.PipelineTask", + "launch_stage": "GA" + }, + "power_bi_task": { + "description": "The task triggers a Power BI semantic model update when the `power_bi_task` field is present.", + "ref": "jobs.PowerBiTask", + "launch_stage": "PUBLIC_PREVIEW" + }, + "python_operator_task": { + "description": "The task runs a Python operator task.", + "ref": "jobs.PythonOperatorTask", + "launch_stage": "PRIVATE_PREVIEW" + }, + "python_wheel_task": { + "description": "The task runs a Python wheel when the `python_wheel_task` field is present.", + "ref": "jobs.PythonWheelTask", + "launch_stage": "GA" + }, + "retry_on_timeout": { + "description": "An optional policy to specify whether to retry a job when it times out. The default behavior\nis to not retry on timeout.", + "launch_stage": "GA" + }, + "run_if": { + "description": "An optional value specifying the condition determining whether the task is run once its dependencies have been completed.\n\n* `ALL_SUCCESS`: All dependencies have executed and succeeded\n* `AT_LEAST_ONE_SUCCESS`: At least one dependency has succeeded\n* `NONE_FAILED`: None of the dependencies have failed and at least one was executed\n* `ALL_DONE`: All dependencies have been completed\n* `AT_LEAST_ONE_FAILED`: At least one dependency failed\n* `ALL_FAILED`: ALl dependencies have failed", + "ref": "jobs.RunIf", + "launch_stage": "GA" + }, + "run_job_task": { + "description": "The task triggers another job when the `run_job_task` field is present.", + "ref": "jobs.RunJobTask", + "launch_stage": "GA" + }, + "spark_jar_task": { + "description": "The task runs a JAR when the `spark_jar_task` field is present.", + "ref": "jobs.SparkJarTask", + "launch_stage": "GA" + }, + "spark_python_task": { + "description": "The task runs a Python file when the `spark_python_task` field is present.", + "ref": "jobs.SparkPythonTask", + "launch_stage": "GA" + }, + "spark_submit_task": { + "description": "(Legacy) The task runs the spark-submit script when the spark_submit_task field is present. Databricks recommends using the spark_jar_task instead; see [Spark Submit task for jobs](/jobs/spark-submit).", + "ref": "jobs.SparkSubmitTask", + "deprecated": true, + "launch_stage": "GA" + }, + "sql_task": { + "description": "The task runs a SQL query or file, or it refreshes a SQL alert or a legacy SQL dashboard when the `sql_task` field is present.", + "ref": "jobs.SqlTask", + "launch_stage": "GA" + }, + "task_key": { + "description": "A unique name for the task. This field is used to refer to this task from other tasks.\nThis field is required and must be unique within its parent job.\nOn Update or Reset, this field is used to reference the tasks to be updated or reset.", + "launch_stage": "GA" + }, + "timeout_seconds": { + "description": "An optional timeout applied to each run of this job task. A value of `0` means no timeout.", + "launch_stage": "GA" + }, + "webhook_notifications": { + "description": "A collection of system notification IDs to notify when runs of this task begin or complete. The default behavior is to not send any system notifications.", + "ref": "jobs.WebhookNotifications", + "launch_stage": "GA" + } + } + }, + "jobs.TaskDependency": { + "fields": { + "outcome": { + "description": "Can only be specified on condition task dependencies. The outcome of the dependent task that must be met for this task to run.", + "launch_stage": "GA" + }, + "task_key": { + "description": "The name of the task this task depends on.", + "launch_stage": "GA" + } + } + }, + "jobs.TaskEmailNotifications": { + "fields": { + "no_alert_for_skipped_runs": { + "description": "If true, do not send email to recipients specified in `on_failure` if the run is skipped.\nThis field is `deprecated`. Please use the `notification_settings.no_alert_for_skipped_runs` field.", + "deprecated": true, + "launch_stage": "GA" + }, + "on_duration_warning_threshold_exceeded": { + "description": "A list of email addresses to be notified when the duration of a run exceeds the threshold specified for the `RUN_DURATION_SECONDS` metric in the `health` field. If no rule for the `RUN_DURATION_SECONDS` metric is specified in the `health` field for the job, notifications are not sent.", + "launch_stage": "GA" + }, + "on_failure": { + "description": "A list of email addresses to be notified when a run unsuccessfully completes. A run is considered to have completed unsuccessfully if it ends with an `INTERNAL_ERROR` `life_cycle_state` or a `FAILED`, or `TIMED_OUT` result_state. If this is not specified on job creation, reset, or update the list is empty, and notifications are not sent.", + "launch_stage": "GA" + }, + "on_maintenance_complete": { + "description": "A list of email addresses to notify when platform-initiated maintenance completes for a continuous job.", + "launch_stage": "GA" + }, + "on_maintenance_start": { + "description": "A list of email addresses to notify when platform-initiated maintenance starts for a continuous job.", + "launch_stage": "GA" + }, + "on_start": { + "description": "A list of email addresses to be notified when a run begins. If not specified on job creation, reset, or update, the list is empty, and notifications are not sent.", + "launch_stage": "GA" + }, + "on_streaming_backlog_exceeded": { + "description": "A list of email addresses to notify when any streaming backlog thresholds are exceeded for any stream.\nStreaming backlog thresholds can be set in the `health` field using the following metrics: `STREAMING_BACKLOG_BYTES`, `STREAMING_BACKLOG_RECORDS`, `STREAMING_BACKLOG_SECONDS`, or `STREAMING_BACKLOG_FILES`.\nAlerting is based on the 10-minute average of these metrics. If the issue persists, notifications are resent every 30 minutes.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "on_success": { + "description": "A list of email addresses to be notified when a run successfully completes. A run is considered to have completed successfully if it ends with a `TERMINATED` `life_cycle_state` and a `SUCCESS` result_state. If not specified on job creation, reset, or update, the list is empty, and notifications are not sent.", + "launch_stage": "GA" + } + } + }, + "jobs.TaskNotificationSettings": { + "fields": { + "alert_on_last_attempt": { + "description": "If true, do not send notifications to recipients specified in `on_start` for the retried runs and do not send notifications to recipients specified in `on_failure` until the last retry of the run.", + "launch_stage": "GA" + }, + "no_alert_for_canceled_runs": { + "description": "If true, do not send notifications to recipients specified in `on_failure` if the run is canceled.", + "launch_stage": "GA" + }, + "no_alert_for_skipped_runs": { + "description": "If true, do not send notifications to recipients specified in `on_failure` if the run is skipped.", + "launch_stage": "GA" + } + } + }, + "jobs.TaskRetryMode": { + "description": "task retry mode of the continuous job\n* NEVER: The failed task will not be retried.\n* ON_FAILURE: Retry a failed task if at least one other task in the job is still running its first attempt.\nWhen this condition is no longer met or the retry limit is reached, the job run is cancelled and a new run is started.", + "enum": [ + "NEVER", + "ON_FAILURE" + ], + "enum_launch_stages": { + "NEVER": "GA", + "ON_FAILURE": "GA" + } + }, + "jobs.TerminationCodeCode": { + "description": "The code indicates why the run was terminated. Additional codes might be introduced in future releases.\n* `SUCCESS`: The run was completed successfully.\n* `SUCCESS_WITH_FAILURES`: The run was completed successfully but some child runs failed.\n* `USER_CANCELED`: The run was successfully canceled during execution by a user.\n* `CANCELED`: The run was canceled during execution by the Databricks platform; for example, if the maximum run duration was exceeded.\n* `SKIPPED`: Run was never executed, for example, if the upstream task run failed, the dependency type condition was not met, or there were no material tasks to execute.\n* `INTERNAL_ERROR`: The run encountered an unexpected error. Refer to the state message for further details.\n* `DRIVER_ERROR`: The run encountered an error while communicating with the Spark Driver.\n* `CLUSTER_ERROR`: The run failed due to a cluster error. Refer to the state message for further details.\n* `REPOSITORY_CHECKOUT_FAILED`: Failed to complete the checkout due to an error when communicating with the third party service.\n* `INVALID_CLUSTER_REQUEST`: The run failed because it issued an invalid request to start the cluster.\n* `WORKSPACE_RUN_LIMIT_EXCEEDED`: The workspace has reached the quota for the maximum number of concurrent active runs. Consider scheduling the runs over a larger time frame.\n* `FEATURE_DISABLED`: The run failed because it tried to access a feature unavailable for the workspace.\n* `CLUSTER_REQUEST_LIMIT_EXCEEDED`: The number of cluster creation, start, and upsize requests have exceeded the allotted rate limit. Consider spreading the run execution over a larger time frame.\n* `STORAGE_ACCESS_ERROR`: The run failed due to an error when accessing the customer blob storage. Refer to the state message for further details.\n* `RUN_EXECUTION_ERROR`: The run was completed with task failures. For more details, refer to the state message or run output.\n* `UNAUTHORIZED_ERROR`: The run failed due to a permission issue while accessing a resource. Refer to the state message for further details.\n* `LIBRARY_INSTALLATION_ERROR`: The run failed while installing the user-requested library. Refer to the state message for further details. The causes might include, but are not limited to: The provided library is invalid, there are insufficient permissions to install the library, and so forth.\n* `MAX_CONCURRENT_RUNS_EXCEEDED`: The scheduled run exceeds the limit of maximum concurrent runs set for the job.\n* `MAX_SPARK_CONTEXTS_EXCEEDED`: The run is scheduled on a cluster that has already reached the maximum number of contexts it is configured to create. See: [Link](https://kb.databricks.com/en_US/notebooks/too-many-execution-contexts-are-open-right-now).\n* `RESOURCE_NOT_FOUND`: A resource necessary for run execution does not exist. Refer to the state message for further details.\n* `INVALID_RUN_CONFIGURATION`: The run failed due to an invalid configuration. Refer to the state message for further details.\n* `CLOUD_FAILURE`: The run failed due to a cloud provider issue. Refer to the state message for further details.\n* `MAX_JOB_QUEUE_SIZE_EXCEEDED`: The run was skipped due to reaching the job level queue size limit.\n* `DISABLED`: The run was never executed because it was disabled explicitly by the user.\n* `BREAKING_CHANGE`: Run failed because of an intentional breaking change in Spark, but it will be retried with a mitigation config.\n* `CLUSTER_TERMINATED_BY_USER`: The run failed because the externally managed cluster entered an unusable state, likely due to the user terminating or restarting it outside the jobs service.", + "enum": [ + "SUCCESS", + "CANCELED", + "DRIVER_ERROR", + "CLUSTER_ERROR", + "REPOSITORY_CHECKOUT_FAILED", + "INVALID_CLUSTER_REQUEST", + "WORKSPACE_RUN_LIMIT_EXCEEDED", + "FEATURE_DISABLED", + "CLUSTER_REQUEST_LIMIT_EXCEEDED", + "STORAGE_ACCESS_ERROR", + "RUN_EXECUTION_ERROR", + "UNAUTHORIZED_ERROR", + "LIBRARY_INSTALLATION_ERROR", + "MAX_CONCURRENT_RUNS_EXCEEDED", + "MAX_SPARK_CONTEXTS_EXCEEDED", + "RESOURCE_NOT_FOUND", + "INVALID_RUN_CONFIGURATION", + "INTERNAL_ERROR", + "CLOUD_FAILURE", + "MAX_JOB_QUEUE_SIZE_EXCEEDED", + "SKIPPED", + "USER_CANCELED", + "BUDGET_POLICY_LIMIT_EXCEEDED", + "DISABLED", + "SUCCESS_WITH_FAILURES", + "BREAKING_CHANGE" + ], + "enum_launch_stages": { + "BREAKING_CHANGE": "GA", + "BUDGET_POLICY_LIMIT_EXCEEDED": "GA", + "CANCELED": "GA", + "CLOUD_FAILURE": "GA", + "CLUSTER_ERROR": "GA", + "CLUSTER_REQUEST_LIMIT_EXCEEDED": "GA", + "DISABLED": "GA", + "DRIVER_ERROR": "GA", + "FEATURE_DISABLED": "GA", + "INTERNAL_ERROR": "GA", + "INVALID_CLUSTER_REQUEST": "GA", + "INVALID_RUN_CONFIGURATION": "GA", + "LIBRARY_INSTALLATION_ERROR": "GA", + "MAX_CONCURRENT_RUNS_EXCEEDED": "GA", + "MAX_JOB_QUEUE_SIZE_EXCEEDED": "GA", + "MAX_SPARK_CONTEXTS_EXCEEDED": "GA", + "REPOSITORY_CHECKOUT_FAILED": "GA", + "RESOURCE_NOT_FOUND": "GA", + "RUN_EXECUTION_ERROR": "GA", + "SKIPPED": "GA", + "STORAGE_ACCESS_ERROR": "GA", + "SUCCESS": "GA", + "SUCCESS_WITH_FAILURES": "GA", + "UNAUTHORIZED_ERROR": "GA", + "USER_CANCELED": "GA", + "WORKSPACE_RUN_LIMIT_EXCEEDED": "GA" + }, + "enum_descriptions": { + "BREAKING_CHANGE": "Run failed because of an intentional breaking change in Spark, but it will be retried with a mitigation config.", + "CANCELED": "The run was canceled during execution by the \u003cDatabricks\u003e platform; for example, if the maximum run duration was exceeded.", + "CLOUD_FAILURE": "The run failed due to a cloud provider issue. Refer to the state message for further details.", + "CLUSTER_ERROR": "The run failed due to a cluster error. Refer to the state message for further details.", + "CLUSTER_REQUEST_LIMIT_EXCEEDED": "The number of cluster creation, start, and upsize requests have exceeded the allotted rate limit. Consider spreading the run execution over a larger time frame.", + "DISABLED": "The run was never executed because it was disabled explicitly by the user.", + "DRIVER_ERROR": "The run encountered an error while communicating with the Spark Driver.", + "FEATURE_DISABLED": "The run failed because it tried to access a feature unavailable for the workspace.", + "INTERNAL_ERROR": "The run encountered an unexpected error. Refer to the state message for further details.", + "INVALID_CLUSTER_REQUEST": "The run failed because it issued an invalid request to start the cluster.", + "INVALID_RUN_CONFIGURATION": "The run failed due to an invalid configuration. Refer to the state message for further details.", + "LIBRARY_INSTALLATION_ERROR": "The run failed while installing the user-requested library. Refer to the state message for further details. The causes might include, but are not limited to: The provided library is invalid, there are insufficient permissions to install the library, and so forth.", + "MAX_CONCURRENT_RUNS_EXCEEDED": "The scheduled run exceeds the limit of maximum concurrent runs set for the job.", + "MAX_JOB_QUEUE_SIZE_EXCEEDED": "The run was skipped due to reaching the job level queue size limit.", + "MAX_SPARK_CONTEXTS_EXCEEDED": "The run is scheduled on a cluster that has already reached the maximum number of contexts it is configured to create. See: [Link](https://kb.databricks.com/en_US/notebooks/too-many-execution-contexts-are-open-right-now).", + "REPOSITORY_CHECKOUT_FAILED": "Failed to complete the checkout due to an error when communicating with the third party service.", + "RESOURCE_NOT_FOUND": "A resource necessary for run execution does not exist. Refer to the state message for further details.", + "RUN_EXECUTION_ERROR": "The run was completed with task failures. For more details, refer to the state message or run output.", + "SKIPPED": "Run was never executed, for example, if the upstream task run failed, the dependency type condition was not met, or there were no material tasks to execute.", + "STORAGE_ACCESS_ERROR": "The run failed due to an error when accessing the customer blob storage. Refer to the state message for further details.", + "SUCCESS": "The run was completed successfully.", + "SUCCESS_WITH_FAILURES": "The run was completed successfully but some child runs failed.", + "UNAUTHORIZED_ERROR": "The run failed due to a permission issue while accessing a resource. Refer to the state message for further details.", + "USER_CANCELED": "The run was successfully canceled during execution by a user.", + "WORKSPACE_RUN_LIMIT_EXCEEDED": "The workspace has reached the quota for the maximum number of concurrent active runs. Consider scheduling the runs over a larger time frame." + } + }, + "jobs.TerminationDetails": { + "fields": { + "code": { + "ref": "jobs.TerminationCodeCode", + "launch_stage": "GA" + }, + "message": { + "description": "A descriptive message with the termination details. This field is unstructured and the format might change.", + "launch_stage": "GA" + }, + "type": { + "ref": "jobs.TerminationTypeType", + "launch_stage": "GA" + } + } + }, + "jobs.TerminationTypeType": { + "description": "* `SUCCESS`: The run terminated without any issues\n* `INTERNAL_ERROR`: An error occurred in the Databricks platform. Please look at the [status page](https://status.databricks.com/) or contact support if the issue persists.\n* `CLIENT_ERROR`: The run was terminated because of an error caused by user input or the job configuration.\n* `CLOUD_FAILURE`: The run was terminated because of an issue with your cloud provider.", + "enum": [ + "SUCCESS", + "INTERNAL_ERROR", + "CLIENT_ERROR", + "CLOUD_FAILURE" + ], + "enum_launch_stages": { + "CLIENT_ERROR": "GA", + "CLOUD_FAILURE": "GA", + "INTERNAL_ERROR": "GA", + "SUCCESS": "GA" + }, + "enum_descriptions": { + "CLIENT_ERROR": "The run was terminated because of an error caused by user input or the job configuration.", + "CLOUD_FAILURE": "The run was terminated because of an issue with your cloud provider.", + "INTERNAL_ERROR": "An error occurred in the \u003cDatabricks\u003e platform. Please look at the [status page](https://status.databricks.com/) or contact support if the issue persists.", + "SUCCESS": "The run terminated without any issues" + } + }, + "jobs.TriggerConfiguration": { + "description": "A single trigger attached to a job via `JobSettings.triggers`. Exactly one of the trigger-type fields\n(`periodic`, `schedule`, `continuous`, `file_arrival`, `table_update`, `model`, `job_completion`) must be set;\nmutual exclusivity is enforced in the API handler rather than via `oneof` so that codegen, validation, and JSON\nserialization across SDKs and Terraform behave consistently.", + "fields": { + "continuous": { + "description": "Continuous trigger configuration.", + "ref": "jobs.ContinuousTriggerConfiguration", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "file_arrival": { + "description": "File arrival trigger configuration.", + "ref": "jobs.FileArrivalTriggerConfiguration", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "model": { + "description": "Model trigger configuration.", + "ref": "jobs.ModelTriggerConfiguration", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "pause_status": { + "description": "Whether this trigger is paused. Defaults to UNPAUSED when unset; the server always returns an explicit value on read.", + "ref": "jobs.PauseStatus", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "periodic": { + "description": "Trigger type: exactly one must be set; mutual exclusivity is enforced in the API handler\nPeriodic trigger configuration.", + "ref": "jobs.PeriodicTriggerConfiguration", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "schedule": { + "description": "Cron schedule trigger configuration.", + "ref": "jobs.CronTriggerConfiguration", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "sql_condition": { + "description": "Optional SQL condition that gates whether this trigger fires.", + "ref": "jobs.SqlConditionConfiguration", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "table_update": { + "description": "Table update trigger configuration.", + "ref": "jobs.TableUpdateTriggerConfiguration", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "jobs.TriggerDetails": { + "description": "Per-trigger runtime details returned by `GetJob`. Same length and order as\n`JobSettings.triggers`; sub-fields are populated independently based on the\ncorresponding `GetJob.include_trigger_state` / `include_trigger_history` flags.", + "fields": { + "history": { + "description": "Recent evaluation history. Populated when `GetJob.include_trigger_history` is set.", + "ref": "jobs.TriggerHistory", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "state": { + "description": "Current runtime state. Populated when `GetJob.include_trigger_state` is set.", + "ref": "jobs.PerTriggerState", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "jobs.TriggerEvaluation": { + "fields": { + "description": { + "description": "Human-readable description of the trigger evaluation result. Explains why the trigger evaluation triggered or did not trigger a run, or failed.", + "launch_stage": "PUBLIC_BETA" + }, + "run_id": { + "description": "The ID of the run that was triggered by the trigger evaluation. Only returned if a run was triggered.", + "launch_stage": "PUBLIC_BETA" + }, + "timestamp": { + "description": "Timestamp at which the trigger was evaluated.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "jobs.TriggerHistory": { + "fields": { + "last_failed": { + "description": "The last time the trigger failed to evaluate.", + "ref": "jobs.TriggerEvaluation", + "launch_stage": "PUBLIC_BETA" + }, + "last_not_triggered": { + "description": "The last time the trigger was evaluated but did not trigger a run.", + "ref": "jobs.TriggerEvaluation", + "launch_stage": "PUBLIC_BETA" + }, + "last_triggered": { + "description": "The last time the run was triggered due to a file arrival.", + "ref": "jobs.TriggerEvaluation", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "jobs.TriggerInfo": { + "description": "Additional details about what triggered the run", + "fields": { + "run_id": { + "description": "The run id of the Run Job task run", + "launch_stage": "GA" + }, + "sql_condition": { + "description": "SQL condition evaluation details for this run", + "ref": "jobs.SqlConditionRunInfoDetails", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "jobs.TriggerSettings": { + "fields": { + "file_arrival": { + "description": "File arrival trigger settings.", + "ref": "jobs.FileArrivalTriggerConfiguration", + "launch_stage": "GA" + }, + "model": { + "ref": "jobs.ModelTriggerConfiguration", + "launch_stage": "PRIVATE_PREVIEW" + }, + "pause_status": { + "description": "Whether this trigger is paused or not.", + "ref": "jobs.PauseStatus", + "launch_stage": "GA" + }, + "periodic": { + "description": "Periodic trigger settings.", + "ref": "jobs.PeriodicTriggerConfiguration", + "launch_stage": "GA" + }, + "sql_condition": { + "description": "SQL condition that must be satisfied for the trigger to fire. Can be used in combination with other trigger types and\nruns *after* other trigger types conditions are evaluated.", + "ref": "jobs.SqlConditionConfiguration", + "launch_stage": "PRIVATE_PREVIEW" + }, + "table_update": { + "ref": "jobs.TableUpdateTriggerConfiguration", + "launch_stage": "GA" + } + } + }, + "jobs.TriggerStateProto": { + "fields": { + "file_arrival": { + "ref": "jobs.FileArrivalTriggerState", + "launch_stage": "GA" + }, + "pause_status": { + "description": "Whether this trigger is paused or not. For continuous schedules, it can differ from the\nconfigured pause_status whenever a paused continuous job is kickstarted by an operation\nother than an update, such as a run-now.", + "ref": "jobs.PauseStatus", + "launch_stage": "PRIVATE_PREVIEW" + }, + "sql_condition": { + "description": "State for SQL condition evaluation, can coexist with other trigger states.", + "ref": "jobs.SqlConditionState", + "launch_stage": "PRIVATE_PREVIEW" + }, + "table": { + "ref": "jobs.TableTriggerState", + "launch_stage": "GA" + } + } + }, + "jobs.TriggerType": { + "description": "The type of trigger that fired this run.\n\n* `PERIODIC`: Schedules that periodically trigger runs, such as a cron scheduler.\n* `ONE_TIME`: One time triggers that fire a single run. This occurs you triggered a single run on demand through the UI or the API.\n* `RETRY`: Indicates a run that is triggered as a retry of a previously failed run. This occurs when you request to re-run the job in case of failures.\n* `RUN_JOB_TASK`: Indicates a run that is triggered using a Run Job task.\n* `FILE_ARRIVAL`: Indicates a run that is triggered by a file arrival.\n* `CONTINUOUS`: Indicates a run that is triggered by a continuous job.\n* `TABLE`: Indicates a run that is triggered by a table update.\n* `CONTINUOUS_RESTART`: Indicates a run created by user to manually restart a continuous job run.\n* `MODEL`: Indicates a run that is triggered by a model update.\n* `JOB_COMPLETION`: Indicates a run that is triggered by an upstream job completion.", + "enum": [ + "PERIODIC", + "ONE_TIME", + "RETRY", + "RUN_JOB_TASK", + "FILE_ARRIVAL", + "CONTINUOUS", + "TABLE", + "CONTINUOUS_RESTART" + ], + "enum_launch_stages": { + "CONTINUOUS": "GA", + "CONTINUOUS_RESTART": "GA", + "FILE_ARRIVAL": "GA", + "ONE_TIME": "GA", + "PERIODIC": "GA", + "RETRY": "GA", + "RUN_JOB_TASK": "GA", + "TABLE": "GA" + }, + "enum_descriptions": { + "CONTINUOUS": "Indicates a run that is triggered by a continuous job.", + "CONTINUOUS_RESTART": "Indicates a run created by user to manually restart a continuous job run.", + "FILE_ARRIVAL": "Indicates a run that is triggered by a file arrival.", + "ONE_TIME": "One time triggers that fire a single run. This occurs you triggered a single run on demand through the UI or the API.", + "PERIODIC": "Schedules that periodically trigger runs, such as a cron scheduler.", + "RETRY": "Indicates a run that is triggered as a retry of a previously failed run. This occurs when you request to re-run the job in case of failures.", + "RUN_JOB_TASK": "Indicates a run that is triggered using a Run Job task.", + "TABLE": "Indicates a run that is triggered by a table update." + } + }, + "jobs.UpdateJob": { + "fields": { + "fields_to_remove": { + "description": "Remove top-level fields in the job settings. Removing nested fields is not supported, except for tasks and job clusters (`tasks/task_1`). This field is optional.", + "launch_stage": "GA" + }, + "job_id": { + "description": "The canonical identifier of the job to update. This field is required.", + "launch_stage": "GA" + }, + "new_settings": { + "description": "The new settings for the job.\n\nTop-level fields specified in `new_settings` are completely replaced, except for arrays which are merged. That is, new and existing entries are completely replaced based on the respective key fields, i.e. `task_key` or `job_cluster_key`, while previous entries are kept.\n\nPartially updating nested fields is not supported.\n\nChanges to the field `JobSettings.timeout_seconds` are applied to active runs. Changes to other fields are applied to future runs only.", + "ref": "jobs.JobSettings", + "launch_stage": "GA" + } + } + }, + "jobs.ViewItem": { + "fields": { + "content": { + "description": "Content of the view.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the view item. In the case of code view, it would be the notebook’s name. In the case of dashboard view, it would be the dashboard’s name.", + "launch_stage": "GA" + }, + "type": { + "description": "Type of the view item.", + "ref": "jobs.ViewType", + "launch_stage": "GA" + } + } + }, + "jobs.ViewType": { + "description": "* `NOTEBOOK`: Notebook view item.\n* `DASHBOARD`: Dashboard view item.", + "enum": [ + "NOTEBOOK", + "DASHBOARD" + ], + "enum_launch_stages": { + "DASHBOARD": "GA", + "NOTEBOOK": "GA" + }, + "enum_descriptions": { + "DASHBOARD": "Dashboard view item.", + "NOTEBOOK": "Notebook view item." + } + }, + "jobs.ViewsToExport": { + "description": "* `CODE`: Code view of the notebook.\n* `DASHBOARDS`: All dashboard views of the notebook.\n* `ALL`: All views of the notebook.", + "enum": [ + "CODE", + "DASHBOARDS", + "ALL" + ], + "enum_launch_stages": { + "ALL": "GA", + "CODE": "GA", + "DASHBOARDS": "GA" + }, + "enum_descriptions": { + "ALL": "All views of the notebook.", + "CODE": "Code view of the notebook.", + "DASHBOARDS": "All dashboard views of the notebook." + } + }, + "jobs.Webhook": { + "fields": { + "id": { + "launch_stage": "GA" + } + } + }, + "jobs.WebhookNotifications": { + "fields": { + "on_duration_warning_threshold_exceeded": { + "description": "An optional list of system notification IDs to call when the duration of a run exceeds the threshold specified for the `RUN_DURATION_SECONDS` metric in the `health` field. A maximum of 3 destinations can be specified for the `on_duration_warning_threshold_exceeded` property.", + "launch_stage": "GA" + }, + "on_failure": { + "description": "An optional list of system notification IDs to call when the run fails. A maximum of 3 destinations can be specified for the `on_failure` property.", + "launch_stage": "GA" + }, + "on_maintenance_complete": { + "description": "An optional list of system notification IDs to call when platform-initiated maintenance completes for a continuous job.\nA maximum of 3 destinations can be specified for the `on_maintenance_complete` property.", + "launch_stage": "GA" + }, + "on_maintenance_start": { + "description": "An optional list of system notification IDs to call when platform-initiated maintenance starts for a continuous job.\nA maximum of 3 destinations can be specified for the `on_maintenance_start` property.", + "launch_stage": "GA" + }, + "on_start": { + "description": "An optional list of system notification IDs to call when the run starts. A maximum of 3 destinations can be specified for the `on_start` property.", + "launch_stage": "GA" + }, + "on_streaming_backlog_exceeded": { + "description": "An optional list of system notification IDs to call when any streaming backlog thresholds are exceeded for any stream.\nStreaming backlog thresholds can be set in the `health` field using the following metrics: `STREAMING_BACKLOG_BYTES`, `STREAMING_BACKLOG_RECORDS`, `STREAMING_BACKLOG_SECONDS`, or `STREAMING_BACKLOG_FILES`.\nAlerting is based on the 10-minute average of these metrics. If the issue persists, notifications are resent every 30 minutes.\nA maximum of 3 destinations can be specified for the `on_streaming_backlog_exceeded` property.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "on_success": { + "description": "An optional list of system notification IDs to call when the run completes successfully. A maximum of 3 destinations can be specified for the `on_success` property.", + "launch_stage": "GA" + } + } + }, + "jobs.WidgetErrorDetail": { + "fields": { + "message": { + "launch_stage": "GA" + } + } + }, + "knowledgeassistants.CreateExampleRequest": { + "fields": { + "example": { + "description": "The example to create under the parent Knowledge Assistant.", + "ref": "knowledgeassistants.Example", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.CreateKnowledgeAssistantRequest": { + "fields": { + "knowledge_assistant": { + "description": "The Knowledge Assistant to create.", + "ref": "knowledgeassistants.KnowledgeAssistant", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.CreateKnowledgeSourceRequest": { + "fields": { + "knowledge_source": { + "ref": "knowledgeassistants.KnowledgeSource", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.DeleteExampleRequest": {}, + "knowledgeassistants.DeleteKnowledgeAssistantRequest": {}, + "knowledgeassistants.DeleteKnowledgeSourceRequest": {}, + "knowledgeassistants.Example": { + "description": "An example associated with a Knowledge Assistant.\nContains a question and guidelines for how the assistant should respond.", + "fields": { + "create_time": { + "description": "Timestamp when this example was created.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "example_id": { + "description": "The universally unique identifier (UUID) of the example.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "guidelines": { + "description": "Guidelines for answering the question. Optional — examples may be created\nwith just a question; the front-end form does not require guidelines.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Full resource name:\nknowledge-assistants/{knowledge_assistant_id}/examples/{example_id}", + "launch_stage": "PUBLIC_BETA" + }, + "question": { + "description": "The example question.", + "launch_stage": "PUBLIC_BETA" + }, + "update_time": { + "description": "Timestamp when this example was last updated.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "knowledgeassistants.FileTableSpec": { + "description": "FileTableSpec specifies a file table source configuration.", + "fields": { + "file_col": { + "description": "The name of the column containing BINARY file content to be indexed.", + "launch_stage": "PUBLIC_BETA" + }, + "table_name": { + "description": "Full UC name of the table, in the format of {CATALOG}.{SCHEMA}.{TABLE_NAME}.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.FilesSpec": { + "description": "FilesSpec specifies a files source configuration.", + "fields": { + "path": { + "description": "A UC volume path that includes a list of files.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.GetExampleRequest": {}, + "knowledgeassistants.GetKnowledgeAssistantPermissionLevelsRequest": {}, + "knowledgeassistants.GetKnowledgeAssistantPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.GetKnowledgeAssistantPermissionsRequest": {}, + "knowledgeassistants.GetKnowledgeAssistantRequest": {}, + "knowledgeassistants.GetKnowledgeSourceRequest": {}, + "knowledgeassistants.IndexSpec": { + "description": "IndexSpec specifies a vector search index source configuration.", + "fields": { + "doc_uri_col": { + "description": "The column that specifies a link or reference to where the information came from.", + "launch_stage": "PUBLIC_BETA" + }, + "index_name": { + "description": "Full UC name of the vector search index, in the format of {CATALOG}.{SCHEMA}.{INDEX_NAME}.", + "launch_stage": "PUBLIC_BETA" + }, + "text_col": { + "description": "The column that includes the document text for retrieval.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.KnowledgeAssistant": { + "description": "Entity message that represents a knowledge assistant.\nNote: REQUIRED annotations below represent create-time requirements.\nFor updates, required fields are determined by the update mask.", + "fields": { + "create_time": { + "description": "Creation timestamp.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "creator": { + "description": "The creator of the Knowledge Assistant.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "launch_stage": "PUBLIC_BETA" + }, + "display_name": { + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "launch_stage": "PUBLIC_BETA" + }, + "endpoint_name": { + "description": "The name of the knowledge assistant agent endpoint.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "error_info": { + "description": "Error details when the Knowledge Assistant is in FAILED state.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "experiment_id": { + "description": "The MLflow experiment ID.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "id": { + "description": "Deprecated: use knowledge_assistant_id instead.", + "deprecated": true, + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "instructions": { + "description": "Additional global instructions on how the agent should generate answers.\nOptional on create and update.\nWhen updating a Knowledge Assistant, include this field in update_mask to\nmodify it.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "The resource name of the Knowledge Assistant.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "launch_stage": "PUBLIC_BETA" + }, + "state": { + "description": "State of the Knowledge Assistant. Not returned in List responses.", + "ref": "knowledgeassistants.KnowledgeAssistantState", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "knowledgeassistants.KnowledgeAssistantAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "PUBLIC_BETA" + }, + "permission_level": { + "ref": "knowledgeassistants.KnowledgeAssistantPermissionLevel", + "launch_stage": "PUBLIC_BETA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "PUBLIC_BETA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.KnowledgeAssistantAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "PUBLIC_BETA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "PUBLIC_BETA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "PUBLIC_BETA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "PUBLIC_BETA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.KnowledgeAssistantPermission": { + "fields": { + "inherited": { + "launch_stage": "PUBLIC_BETA" + }, + "inherited_from_object": { + "launch_stage": "PUBLIC_BETA" + }, + "permission_level": { + "ref": "knowledgeassistants.KnowledgeAssistantPermissionLevel", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.KnowledgeAssistantPermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_MANAGE", + "CAN_QUERY" + ] + }, + "knowledgeassistants.KnowledgeAssistantPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "PUBLIC_BETA" + }, + "object_id": { + "launch_stage": "PUBLIC_BETA" + }, + "object_type": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.KnowledgeAssistantPermissionsDescription": { + "fields": { + "description": { + "launch_stage": "PUBLIC_BETA" + }, + "permission_level": { + "ref": "knowledgeassistants.KnowledgeAssistantPermissionLevel", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.KnowledgeAssistantPermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.KnowledgeAssistantState": { + "enum": [ + "CREATING", + "ACTIVE", + "FAILED" + ], + "enum_launch_stages": { + "ACTIVE": "PUBLIC_BETA", + "CREATING": "PUBLIC_BETA", + "FAILED": "PUBLIC_BETA" + } + }, + "knowledgeassistants.KnowledgeSource": { + "description": "KnowledgeSource represents a source of knowledge for the KnowledgeAssistant.\nUsed in create/update requests and returned in Get/List responses.\nNote: REQUIRED annotations below represent create-time requirements.\nFor updates, required fields are determined by the update mask.", + "fields": { + "create_time": { + "description": "Timestamp when this knowledge source was created.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "launch_stage": "PUBLIC_BETA" + }, + "display_name": { + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "launch_stage": "PUBLIC_BETA" + }, + "file_table": { + "ref": "knowledgeassistants.FileTableSpec", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "files": { + "ref": "knowledgeassistants.FilesSpec", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "id": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "index": { + "ref": "knowledgeassistants.IndexSpec", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "knowledge_cutoff_time": { + "description": "Timestamp representing the cutoff before which content in this knowledge source is being ingested.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Full resource name:\nknowledge-assistants/{knowledge_assistant_id}/knowledge-sources/{knowledge_source_id}", + "launch_stage": "PUBLIC_BETA" + }, + "source_type": { + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "launch_stage": "PUBLIC_BETA" + }, + "state": { + "ref": "knowledgeassistants.KnowledgeSourceState", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "knowledgeassistants.KnowledgeSourceState": { + "enum": [ + "UPDATING", + "UPDATED", + "FAILED_UPDATE" + ], + "enum_launch_stages": { + "FAILED_UPDATE": "PUBLIC_BETA", + "UPDATED": "PUBLIC_BETA", + "UPDATING": "PUBLIC_BETA" + } + }, + "knowledgeassistants.ListExamplesRequest": { + "fields": { + "page_size": { + "description": "The maximum number of examples to return.\nIf unspecified, at most 100 examples will be returned.\nThe maximum value is 100; values above 100 will be coerced to 100.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous `ListExamples` call.\nProvide this to retrieve the subsequent page.\nIf unspecified, the first page will be returned.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "knowledgeassistants.ListExamplesResponse": { + "description": "A list of Knowledge Assistant examples.", + "fields": { + "examples": { + "launch_stage": "PUBLIC_BETA" + }, + "next_page_token": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.ListKnowledgeAssistantsRequest": { + "fields": { + "page_size": { + "description": "The maximum number of knowledge assistants to return.\nIf unspecified, at most 100 knowledge assistants will be returned.\nThe maximum value is 100; values above 100 will be coerced to 100.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous `ListKnowledgeAssistants` call.\nProvide this to retrieve the subsequent page.\nIf unspecified, the first page will be returned.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "knowledgeassistants.ListKnowledgeAssistantsResponse": { + "description": "A list of Knowledge Assistants.", + "fields": { + "knowledge_assistants": { + "launch_stage": "PUBLIC_BETA" + }, + "next_page_token": { + "description": "A token that can be sent as `page_token` to retrieve the next page.\nIf this field is omitted, there are no subsequent pages.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.ListKnowledgeSourcesRequest": { + "fields": { + "page_size": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "knowledgeassistants.ListKnowledgeSourcesResponse": { + "fields": { + "knowledge_sources": { + "launch_stage": "PUBLIC_BETA" + }, + "next_page_token": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.SyncKnowledgeSourcesRequest": {}, + "knowledgeassistants.UpdateExampleRequest": { + "fields": { + "example": { + "ref": "knowledgeassistants.Example", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Comma-delimited list of fields to update on the example.\nAllowed values: `question`, `guidelines`.\nExamples:\n- `question`\n- `question,guidelines`", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.UpdateKnowledgeAssistantRequest": { + "fields": { + "knowledge_assistant": { + "description": "The Knowledge Assistant update payload.\nOnly fields listed in update_mask are updated.\nREQUIRED annotations on Knowledge Assistant fields describe create-time\nrequirements and do not mean all those fields are required for update.", + "ref": "knowledgeassistants.KnowledgeAssistant", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Comma-delimited list of fields to update on the Knowledge Assistant.\nAllowed values: `display_name`, `description`, `instructions`.\nExamples:\n- `display_name`\n- `description,instructions`", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "knowledgeassistants.UpdateKnowledgeSourceRequest": { + "fields": { + "knowledge_source": { + "description": "The Knowledge Source update payload.\nOnly fields listed in update_mask are updated.\nREQUIRED annotations on Knowledge Source fields describe create-time\nrequirements and do not mean all those fields are required for update.", + "ref": "knowledgeassistants.KnowledgeSource", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Comma-delimited list of fields to update on the Knowledge Source.\nAllowed values: `display_name`, `description`.\nExamples:\n- `display_name`\n- `display_name,description`", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "marketplace.AddExchangeForListingRequest": { + "fields": { + "exchange_id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "listing_id": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.AddExchangeForListingResponse": { + "fields": { + "exchange_for_listing": { + "ref": "marketplace.ExchangeListing", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.AssetType": { + "enum": [ + "ASSET_TYPE_GIT_REPO", + "ASSET_TYPE_DATA_TABLE", + "ASSET_TYPE_MODEL", + "ASSET_TYPE_NOTEBOOK", + "ASSET_TYPE_MEDIA", + "ASSET_TYPE_PARTNER_INTEGRATION", + "ASSET_TYPE_APP", + "ASSET_TYPE_MCP" + ], + "enum_launch_stages": { + "ASSET_TYPE_APP": "GA", + "ASSET_TYPE_DATA_TABLE": "GA", + "ASSET_TYPE_GIT_REPO": "GA", + "ASSET_TYPE_MCP": "GA", + "ASSET_TYPE_MEDIA": "GA", + "ASSET_TYPE_MODEL": "GA", + "ASSET_TYPE_NOTEBOOK": "GA", + "ASSET_TYPE_PARTNER_INTEGRATION": "GA" + } + }, + "marketplace.BatchGetListingsRequest": { + "fields": { + "ids": { + "launch_stage": "GA" + } + } + }, + "marketplace.BatchGetListingsResponse": { + "fields": { + "listings": { + "launch_stage": "GA" + } + } + }, + "marketplace.BatchGetProvidersRequest": { + "fields": { + "ids": { + "launch_stage": "GA" + } + } + }, + "marketplace.BatchGetProvidersResponse": { + "fields": { + "providers": { + "launch_stage": "GA" + } + } + }, + "marketplace.Category": { + "enum": [ + "ADVERTISING_AND_MARKETING", + "CLIMATE_AND_ENVIRONMENT", + "COMMERCE", + "DEMOGRAPHICS", + "ECONOMICS", + "EDUCATION", + "ENERGY", + "FINANCIAL", + "GAMING", + "GEOSPATIAL", + "HEALTH", + "LOOKUP_TABLES", + "MANUFACTURING", + "MEDIA", + "OTHER", + "PUBLIC_SECTOR", + "RETAIL", + "SECURITY", + "SCIENCE_AND_RESEARCH", + "SPORTS", + "TRANSPORTATION_AND_LOGISTICS", + "TRAVEL_AND_TOURISM" + ], + "enum_launch_stages": { + "ADVERTISING_AND_MARKETING": "GA", + "CLIMATE_AND_ENVIRONMENT": "GA", + "COMMERCE": "GA", + "DEMOGRAPHICS": "GA", + "ECONOMICS": "GA", + "EDUCATION": "GA", + "ENERGY": "GA", + "FINANCIAL": "GA", + "GAMING": "GA", + "GEOSPATIAL": "GA", + "HEALTH": "GA", + "LOOKUP_TABLES": "GA", + "MANUFACTURING": "GA", + "MEDIA": "GA", + "OTHER": "GA", + "PUBLIC_SECTOR": "GA", + "RETAIL": "GA", + "SCIENCE_AND_RESEARCH": "GA", + "SECURITY": "GA", + "SPORTS": "GA", + "TRANSPORTATION_AND_LOGISTICS": "GA", + "TRAVEL_AND_TOURISM": "GA" + } + }, + "marketplace.ConsumerTerms": { + "fields": { + "version": { + "launch_stage": "GA" + } + } + }, + "marketplace.ContactInfo": { + "description": "contact info for the consumer requesting data or performing a listing installation", + "fields": { + "company": { + "launch_stage": "GA" + }, + "email": { + "launch_stage": "GA" + }, + "first_name": { + "launch_stage": "GA" + }, + "last_name": { + "launch_stage": "GA" + } + } + }, + "marketplace.Cost": { + "enum": [ + "FREE", + "PAID" + ], + "enum_launch_stages": { + "FREE": "GA", + "PAID": "GA" + } + }, + "marketplace.CreateExchangeFilterRequest": { + "fields": { + "filter": { + "ref": "marketplace.ExchangeFilter", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.CreateExchangeFilterResponse": { + "fields": { + "filter_id": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.CreateExchangeRequest": { + "fields": { + "exchange": { + "ref": "marketplace.Exchange", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.CreateExchangeResponse": { + "fields": { + "exchange_id": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.CreateFileRequest": { + "fields": { + "display_name": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "file_parent": { + "ref": "marketplace.FileParent", + "launch_stage": "PUBLIC_PREVIEW" + }, + "marketplace_file_type": { + "ref": "marketplace.MarketplaceFileType", + "launch_stage": "PUBLIC_PREVIEW" + }, + "mime_type": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.CreateFileResponse": { + "fields": { + "file_info": { + "ref": "marketplace.FileInfo", + "launch_stage": "PUBLIC_PREVIEW" + }, + "upload_url": { + "description": "Pre-signed POST URL to blob storage", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.CreateInstallationRequest": { + "fields": { + "accepted_consumer_terms": { + "ref": "marketplace.ConsumerTerms", + "launch_stage": "GA" + }, + "catalog_name": { + "launch_stage": "GA" + }, + "recipient_type": { + "ref": "marketplace.DeltaSharingRecipientType", + "launch_stage": "GA" + }, + "repo_detail": { + "description": "for git repo installations", + "ref": "marketplace.RepoInstallation", + "launch_stage": "GA" + }, + "share_name": { + "launch_stage": "GA" + } + } + }, + "marketplace.CreateListingRequest": { + "fields": { + "listing": { + "ref": "marketplace.Listing", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.CreateListingResponse": { + "fields": { + "listing_id": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.CreatePersonalizationRequest": { + "description": "Data request messages\nalso creates a lead (maybe)", + "fields": { + "accepted_consumer_terms": { + "ref": "marketplace.ConsumerTerms", + "launch_stage": "GA" + }, + "comment": { + "launch_stage": "GA" + }, + "company": { + "launch_stage": "GA" + }, + "first_name": { + "launch_stage": "GA" + }, + "intended_use": { + "launch_stage": "GA" + }, + "is_from_lighthouse": { + "launch_stage": "GA" + }, + "last_name": { + "launch_stage": "GA" + }, + "recipient_type": { + "ref": "marketplace.DeltaSharingRecipientType", + "launch_stage": "GA" + } + } + }, + "marketplace.CreatePersonalizationRequestResponse": { + "fields": { + "id": { + "launch_stage": "GA" + } + } + }, + "marketplace.CreateProviderAnalyticsDashboardRequest": {}, + "marketplace.CreateProviderRequest": { + "fields": { + "provider": { + "ref": "marketplace.ProviderInfo", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.CreateProviderResponse": { + "fields": { + "id": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.DataRefresh": { + "enum": [ + "NONE", + "SECOND", + "MINUTE", + "HOURLY", + "DAILY", + "WEEKLY", + "MONTHLY", + "QUARTERLY", + "YEARLY" + ], + "enum_launch_stages": { + "DAILY": "GA", + "HOURLY": "GA", + "MINUTE": "GA", + "MONTHLY": "GA", + "NONE": "GA", + "QUARTERLY": "GA", + "SECOND": "GA", + "WEEKLY": "GA", + "YEARLY": "GA" + } + }, + "marketplace.DataRefreshInfo": { + "fields": { + "interval": { + "launch_stage": "GA" + }, + "unit": { + "ref": "marketplace.DataRefresh", + "launch_stage": "GA" + } + } + }, + "marketplace.DeleteExchangeFilterRequest": {}, + "marketplace.DeleteExchangeFilterResponse": {}, + "marketplace.DeleteExchangeRequest": {}, + "marketplace.DeleteExchangeResponse": {}, + "marketplace.DeleteFileRequest": {}, + "marketplace.DeleteFileResponse": {}, + "marketplace.DeleteInstallationRequest": {}, + "marketplace.DeleteInstallationResponse": {}, + "marketplace.DeleteListingRequest": {}, + "marketplace.DeleteListingResponse": {}, + "marketplace.DeleteProviderRequest": {}, + "marketplace.DeleteProviderResponse": {}, + "marketplace.DeltaSharingRecipientType": { + "enum": [ + "DELTA_SHARING_RECIPIENT_TYPE_DATABRICKS", + "DELTA_SHARING_RECIPIENT_TYPE_OPEN" + ], + "enum_launch_stages": { + "DELTA_SHARING_RECIPIENT_TYPE_DATABRICKS": "GA", + "DELTA_SHARING_RECIPIENT_TYPE_OPEN": "GA" + } + }, + "marketplace.Exchange": { + "fields": { + "comment": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "created_at": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "created_by": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "filters": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "linked_listings": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "updated_at": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "updated_by": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.ExchangeFilter": { + "fields": { + "created_at": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "created_by": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "exchange_id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "filter_type": { + "ref": "marketplace.ExchangeFilterType", + "launch_stage": "PUBLIC_PREVIEW" + }, + "filter_value": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "updated_at": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "updated_by": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.ExchangeFilterType": { + "enum": [ + "GLOBAL_METASTORE_ID" + ], + "enum_launch_stages": { + "GLOBAL_METASTORE_ID": "PUBLIC_PREVIEW" + } + }, + "marketplace.ExchangeListing": { + "fields": { + "created_at": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "created_by": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "exchange_id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "exchange_name": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "listing_id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "listing_name": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.FileInfo": { + "fields": { + "created_at": { + "launch_stage": "GA" + }, + "display_name": { + "description": "Name displayed to users for applicable files, e.g. embedded notebooks", + "launch_stage": "GA" + }, + "download_link": { + "launch_stage": "GA" + }, + "file_parent": { + "ref": "marketplace.FileParent", + "launch_stage": "GA" + }, + "id": { + "launch_stage": "GA" + }, + "marketplace_file_type": { + "ref": "marketplace.MarketplaceFileType", + "launch_stage": "GA" + }, + "mime_type": { + "launch_stage": "GA" + }, + "status": { + "ref": "marketplace.FileStatus", + "launch_stage": "GA" + }, + "status_message": { + "description": "Populated if status is in a failed state with more information on reason for the failure.", + "launch_stage": "GA" + }, + "updated_at": { + "launch_stage": "GA" + } + } + }, + "marketplace.FileParent": { + "fields": { + "file_parent_type": { + "ref": "marketplace.FileParentType", + "launch_stage": "GA" + }, + "parent_id": { + "launch_stage": "GA" + } + } + }, + "marketplace.FileParentType": { + "enum": [ + "PROVIDER", + "LISTING", + "LISTING_RESOURCE" + ], + "enum_launch_stages": { + "LISTING": "GA", + "LISTING_RESOURCE": "GA", + "PROVIDER": "GA" + } + }, + "marketplace.FileStatus": { + "enum": [ + "FILE_STATUS_PUBLISHED", + "FILE_STATUS_STAGING", + "FILE_STATUS_SANITIZING", + "FILE_STATUS_SANITIZATION_FAILED" + ], + "enum_launch_stages": { + "FILE_STATUS_PUBLISHED": "GA", + "FILE_STATUS_SANITIZATION_FAILED": "GA", + "FILE_STATUS_SANITIZING": "GA", + "FILE_STATUS_STAGING": "GA" + } + }, + "marketplace.FulfillmentType": { + "enum": [ + "REQUEST_ACCESS", + "INSTALL" + ], + "enum_launch_stages": { + "INSTALL": "GA", + "REQUEST_ACCESS": "GA" + } + }, + "marketplace.GetExchangeRequest": {}, + "marketplace.GetExchangeResponse": { + "fields": { + "exchange": { + "ref": "marketplace.Exchange", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.GetFileRequest": {}, + "marketplace.GetFileResponse": { + "fields": { + "file_info": { + "ref": "marketplace.FileInfo", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.GetLatestVersionProviderAnalyticsDashboardRequest": {}, + "marketplace.GetLatestVersionProviderAnalyticsDashboardResponse": { + "fields": { + "version": { + "description": "version here is latest logical version of the dashboard template", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.GetListingContentMetadataRequest": { + "fields": { + "page_size": { + "launch_stage": "GA" + }, + "page_token": { + "launch_stage": "GA" + } + } + }, + "marketplace.GetListingContentMetadataResponse": { + "fields": { + "next_page_token": { + "launch_stage": "GA" + }, + "shared_data_objects": { + "launch_stage": "GA" + } + } + }, + "marketplace.GetListingRequest": {}, + "marketplace.GetListingResponse": { + "fields": { + "listing": { + "ref": "marketplace.Listing", + "launch_stage": "GA" + } + } + }, + "marketplace.GetListingsRequest": { + "fields": { + "page_size": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.GetListingsResponse": { + "fields": { + "listings": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "next_page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.GetPersonalizationRequestRequest": {}, + "marketplace.GetPersonalizationRequestResponse": { + "fields": { + "personalization_requests": { + "launch_stage": "GA" + } + } + }, + "marketplace.GetProviderRequest": {}, + "marketplace.GetProviderResponse": { + "fields": { + "provider": { + "ref": "marketplace.ProviderInfo", + "launch_stage": "GA" + } + } + }, + "marketplace.Installation": { + "fields": { + "installation": { + "ref": "marketplace.InstallationDetail", + "launch_stage": "GA" + } + } + }, + "marketplace.InstallationDetail": { + "fields": { + "catalog_name": { + "launch_stage": "GA" + }, + "error_message": { + "launch_stage": "GA" + }, + "id": { + "launch_stage": "GA" + }, + "installed_on": { + "launch_stage": "GA" + }, + "listing_id": { + "launch_stage": "GA" + }, + "listing_name": { + "launch_stage": "GA" + }, + "recipient_type": { + "ref": "marketplace.DeltaSharingRecipientType", + "launch_stage": "GA" + }, + "repo_name": { + "launch_stage": "GA" + }, + "repo_path": { + "launch_stage": "GA" + }, + "share_name": { + "launch_stage": "GA" + }, + "status": { + "ref": "marketplace.InstallationStatus", + "launch_stage": "GA" + }, + "token_detail": { + "ref": "marketplace.TokenDetail", + "launch_stage": "GA" + }, + "tokens": { + "launch_stage": "GA" + } + } + }, + "marketplace.InstallationStatus": { + "enum": [ + "INSTALLED", + "FAILED" + ], + "enum_launch_stages": { + "FAILED": "GA", + "INSTALLED": "GA" + } + }, + "marketplace.ListAllInstallationsRequest": { + "fields": { + "page_size": { + "launch_stage": "GA" + }, + "page_token": { + "launch_stage": "GA" + } + } + }, + "marketplace.ListAllInstallationsResponse": { + "fields": { + "installations": { + "launch_stage": "GA" + }, + "next_page_token": { + "launch_stage": "GA" + } + } + }, + "marketplace.ListAllPersonalizationRequestsRequest": { + "fields": { + "page_size": { + "launch_stage": "GA" + }, + "page_token": { + "launch_stage": "GA" + } + } + }, + "marketplace.ListAllPersonalizationRequestsResponse": { + "fields": { + "next_page_token": { + "launch_stage": "GA" + }, + "personalization_requests": { + "launch_stage": "GA" + } + } + }, + "marketplace.ListConsumerProvidersRequest": { + "fields": { + "is_featured": { + "launch_stage": "GA" + }, + "page_size": { + "launch_stage": "GA" + }, + "page_token": { + "launch_stage": "GA" + } + } + }, + "marketplace.ListExchangeFiltersRequest": { + "fields": { + "exchange_id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "page_size": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.ListExchangeFiltersResponse": { + "fields": { + "filters": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "next_page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.ListExchangesForListingRequest": { + "fields": { + "listing_id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "page_size": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.ListExchangesForListingResponse": { + "fields": { + "exchange_listing": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "next_page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.ListExchangesRequest": { + "fields": { + "page_size": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.ListExchangesResponse": { + "fields": { + "exchanges": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "next_page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.ListFilesRequest": { + "fields": { + "file_parent": { + "ref": "marketplace.FileParent", + "launch_stage": "PUBLIC_PREVIEW" + }, + "page_size": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.ListFilesResponse": { + "fields": { + "file_infos": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "next_page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.ListFulfillmentsRequest": { + "fields": { + "page_size": { + "launch_stage": "GA" + }, + "page_token": { + "launch_stage": "GA" + } + } + }, + "marketplace.ListFulfillmentsResponse": { + "fields": { + "fulfillments": { + "launch_stage": "GA" + }, + "next_page_token": { + "launch_stage": "GA" + } + } + }, + "marketplace.ListInstallationsRequest": { + "fields": { + "page_size": { + "launch_stage": "GA" + }, + "page_token": { + "launch_stage": "GA" + } + } + }, + "marketplace.ListInstallationsResponse": { + "fields": { + "installations": { + "launch_stage": "GA" + }, + "next_page_token": { + "launch_stage": "GA" + } + } + }, + "marketplace.ListListingsForExchangeRequest": { + "fields": { + "exchange_id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "page_size": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.ListListingsForExchangeResponse": { + "fields": { + "exchange_listings": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "next_page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.ListListingsRequest": { + "fields": { + "assets": { + "description": "Matches any of the following asset types", + "launch_stage": "GA" + }, + "categories": { + "description": "Matches any of the following categories", + "launch_stage": "GA" + }, + "is_free": { + "description": "Filters each listing based on if it is free.", + "launch_stage": "GA" + }, + "is_private_exchange": { + "description": "Filters each listing based on if it is a private exchange.", + "launch_stage": "GA" + }, + "is_staff_pick": { + "description": "Filters each listing based on whether it is a staff pick.", + "launch_stage": "GA" + }, + "page_size": { + "launch_stage": "GA" + }, + "page_token": { + "launch_stage": "GA" + }, + "provider_ids": { + "description": "Matches any of the following provider ids", + "launch_stage": "GA" + }, + "tags": { + "description": "Matches listings with this tag", + "ref": "marketplace.ListingTag", + "launch_stage": "GA" + } + } + }, + "marketplace.ListListingsResponse": { + "fields": { + "listings": { + "launch_stage": "GA" + }, + "next_page_token": { + "launch_stage": "GA" + } + } + }, + "marketplace.ListProviderAnalyticsDashboardRequest": {}, + "marketplace.ListProviderAnalyticsDashboardResponse": { + "fields": { + "dashboard_id": { + "description": "dashboard_id will be used to open Lakeview dashboard.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "version": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.ListProvidersRequest": { + "fields": { + "page_size": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "page_token": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.ListProvidersResponse": { + "fields": { + "next_page_token": { + "launch_stage": "GA" + }, + "providers": { + "launch_stage": "GA" + } + } + }, + "marketplace.Listing": { + "fields": { + "detail": { + "ref": "marketplace.ListingDetail", + "launch_stage": "GA" + }, + "id": { + "launch_stage": "GA" + }, + "summary": { + "ref": "marketplace.ListingSummary", + "launch_stage": "GA" + } + } + }, + "marketplace.ListingDetail": { + "fields": { + "assets": { + "description": "Type of assets included in the listing. eg. GIT_REPO, DATA_TABLE, MODEL, NOTEBOOK", + "launch_stage": "GA" + }, + "collection_date_end": { + "description": "The ending date timestamp for when the data spans", + "launch_stage": "GA" + }, + "collection_date_start": { + "description": "The starting date timestamp for when the data spans", + "launch_stage": "GA" + }, + "collection_granularity": { + "description": "Smallest unit of time in the dataset", + "ref": "marketplace.DataRefreshInfo", + "launch_stage": "GA" + }, + "cost": { + "description": "Whether the dataset is free or paid", + "ref": "marketplace.Cost", + "launch_stage": "GA" + }, + "data_source": { + "description": "Where/how the data is sourced", + "launch_stage": "GA" + }, + "description": { + "launch_stage": "GA" + }, + "documentation_link": { + "launch_stage": "GA" + }, + "embedded_notebook_file_infos": { + "launch_stage": "GA" + }, + "file_ids": { + "launch_stage": "GA" + }, + "geographical_coverage": { + "description": "Which geo region the listing data is collected from", + "launch_stage": "GA" + }, + "license": { + "description": "ID 20, 21 removed don't use\nLicense of the data asset - Required for listings with model based assets", + "launch_stage": "GA" + }, + "pricing_model": { + "description": "What the pricing model is (e.g. paid, subscription, paid upfront); should only be present if cost is paid", + "launch_stage": "GA" + }, + "privacy_policy_link": { + "launch_stage": "GA" + }, + "size": { + "description": "size of the dataset in GB", + "launch_stage": "GA" + }, + "support_link": { + "launch_stage": "GA" + }, + "tags": { + "description": "Listing tags - Simple key value pair to annotate listings.\nWhen should I use tags vs dedicated fields?\nUsing tags avoids the need to add new columns in the database for new annotations.\nHowever, this should be used sparingly since tags are stored as key value pair.\nUse tags only:\n1. If the field is optional and won't need to have NOT NULL integrity check\n2. The value is fairly fixed, static and low cardinality (eg. enums).\n3. The value won't be used in filters or joins with other tables.", + "launch_stage": "GA" + }, + "terms_of_service": { + "launch_stage": "GA" + }, + "update_frequency": { + "description": "How often data is updated", + "ref": "marketplace.DataRefreshInfo", + "launch_stage": "GA" + } + } + }, + "marketplace.ListingFulfillment": { + "fields": { + "fulfillment_type": { + "ref": "marketplace.FulfillmentType", + "launch_stage": "GA" + }, + "listing_id": { + "launch_stage": "GA" + }, + "recipient_type": { + "ref": "marketplace.DeltaSharingRecipientType", + "launch_stage": "GA" + }, + "repo_info": { + "ref": "marketplace.RepoInfo", + "launch_stage": "GA" + }, + "share_info": { + "ref": "marketplace.ShareInfo", + "launch_stage": "GA" + } + } + }, + "marketplace.ListingSetting": { + "fields": { + "visibility": { + "ref": "marketplace.Visibility", + "launch_stage": "GA" + } + } + }, + "marketplace.ListingShareType": { + "enum": [ + "SAMPLE", + "FULL" + ], + "enum_launch_stages": { + "FULL": "GA", + "SAMPLE": "GA" + } + }, + "marketplace.ListingStatus": { + "description": "Enums", + "enum": [ + "DRAFT", + "PENDING", + "PUBLISHED", + "SUSPENDED" + ], + "enum_launch_stages": { + "DRAFT": "GA", + "PENDING": "GA", + "PUBLISHED": "GA", + "SUSPENDED": "GA" + } + }, + "marketplace.ListingSummary": { + "fields": { + "categories": { + "launch_stage": "GA" + }, + "created_at": { + "launch_stage": "GA" + }, + "created_by": { + "launch_stage": "GA" + }, + "created_by_id": { + "launch_stage": "GA" + }, + "exchange_ids": { + "launch_stage": "GA" + }, + "git_repo": { + "description": "if a git repo is being created, a listing will be initialized with this field as opposed to a share", + "ref": "marketplace.RepoInfo", + "launch_stage": "GA" + }, + "listingType": { + "ref": "marketplace.ListingType", + "launch_stage": "GA" + }, + "name": { + "launch_stage": "GA" + }, + "provider_id": { + "launch_stage": "GA" + }, + "provider_region": { + "ref": "marketplace.RegionInfo", + "launch_stage": "GA" + }, + "published_at": { + "launch_stage": "GA" + }, + "published_by": { + "launch_stage": "GA" + }, + "setting": { + "ref": "marketplace.ListingSetting", + "launch_stage": "GA" + }, + "share": { + "ref": "marketplace.ShareInfo", + "launch_stage": "GA" + }, + "status": { + "ref": "marketplace.ListingStatus", + "launch_stage": "GA" + }, + "subtitle": { + "launch_stage": "GA" + }, + "updated_at": { + "launch_stage": "GA" + }, + "updated_by": { + "launch_stage": "GA" + }, + "updated_by_id": { + "launch_stage": "GA" + } + } + }, + "marketplace.ListingTag": { + "fields": { + "tag_name": { + "description": "Tag name (enum)", + "ref": "marketplace.ListingTagType", + "launch_stage": "GA" + }, + "tag_values": { + "description": "String representation of the tag value. Values should be string literals (no complex types)", + "launch_stage": "GA" + } + } + }, + "marketplace.ListingTagType": { + "enum": [ + "LISTING_TAG_TYPE_LANGUAGE", + "LISTING_TAG_TYPE_TASK" + ], + "enum_launch_stages": { + "LISTING_TAG_TYPE_LANGUAGE": "GA", + "LISTING_TAG_TYPE_TASK": "GA" + } + }, + "marketplace.ListingType": { + "enum": [ + "STANDARD", + "PERSONALIZED" + ], + "enum_launch_stages": { + "PERSONALIZED": "GA", + "STANDARD": "GA" + } + }, + "marketplace.MarketplaceFileType": { + "enum": [ + "PROVIDER_ICON", + "EMBEDDED_NOTEBOOK", + "APP" + ], + "enum_launch_stages": { + "APP": "GA", + "EMBEDDED_NOTEBOOK": "GA", + "PROVIDER_ICON": "GA" + } + }, + "marketplace.PersonalizationRequest": { + "fields": { + "comment": { + "launch_stage": "GA" + }, + "consumer_region": { + "ref": "marketplace.RegionInfo", + "launch_stage": "GA" + }, + "contact_info": { + "ref": "marketplace.ContactInfo", + "launch_stage": "GA" + }, + "created_at": { + "launch_stage": "GA" + }, + "id": { + "launch_stage": "GA" + }, + "intended_use": { + "launch_stage": "GA" + }, + "is_from_lighthouse": { + "launch_stage": "GA" + }, + "listing_id": { + "launch_stage": "GA" + }, + "listing_name": { + "launch_stage": "GA" + }, + "metastore_id": { + "launch_stage": "GA" + }, + "provider_id": { + "launch_stage": "GA" + }, + "recipient_type": { + "ref": "marketplace.DeltaSharingRecipientType", + "launch_stage": "GA" + }, + "share": { + "description": "Share information is required for data listings\nbut should be empty/ignored for non-data listings (MCP and App).", + "ref": "marketplace.ShareInfo", + "launch_stage": "GA" + }, + "status": { + "ref": "marketplace.PersonalizationRequestStatus", + "launch_stage": "GA" + }, + "status_message": { + "launch_stage": "GA" + }, + "updated_at": { + "launch_stage": "GA" + } + } + }, + "marketplace.PersonalizationRequestStatus": { + "enum": [ + "NEW", + "REQUEST_PENDING", + "FULFILLED", + "DENIED" + ], + "enum_launch_stages": { + "DENIED": "GA", + "FULFILLED": "GA", + "NEW": "GA", + "REQUEST_PENDING": "GA" + } + }, + "marketplace.ProviderAnalyticsDashboard": { + "fields": { + "id": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.ProviderInfo": { + "fields": { + "business_contact_email": { + "launch_stage": "GA" + }, + "company_website_link": { + "launch_stage": "GA" + }, + "dark_mode_icon_file_id": { + "launch_stage": "GA" + }, + "dark_mode_icon_file_path": { + "launch_stage": "GA" + }, + "description": { + "launch_stage": "GA" + }, + "icon_file_id": { + "launch_stage": "GA" + }, + "icon_file_path": { + "launch_stage": "GA" + }, + "id": { + "launch_stage": "GA" + }, + "is_featured": { + "description": "is_featured is accessible by consumers only", + "launch_stage": "GA" + }, + "name": { + "launch_stage": "GA" + }, + "privacy_policy_link": { + "launch_stage": "GA" + }, + "published_by": { + "description": "published_by is only applicable to data aggregators (e.g. Crux)", + "launch_stage": "GA" + }, + "support_contact_email": { + "launch_stage": "GA" + }, + "term_of_service_link": { + "launch_stage": "GA" + } + } + }, + "marketplace.RegionInfo": { + "fields": { + "cloud": { + "launch_stage": "GA" + }, + "region": { + "launch_stage": "GA" + } + } + }, + "marketplace.RemoveExchangeForListingRequest": {}, + "marketplace.RemoveExchangeForListingResponse": {}, + "marketplace.RepoInfo": { + "fields": { + "git_repo_url": { + "description": "the git repo url e.g. https://github.com/databrickslabs/dolly.git", + "launch_stage": "GA" + } + } + }, + "marketplace.RepoInstallation": { + "fields": { + "repo_name": { + "description": "the user-specified repo name for their installed git repo listing", + "launch_stage": "GA" + }, + "repo_path": { + "description": "refers to the full url file path that navigates the user to the repo's entrypoint (e.g. a README.md file, or the repo file view in the unified UI)\nshould just be a relative path", + "launch_stage": "GA" + } + } + }, + "marketplace.SearchListingsRequest": { + "fields": { + "assets": { + "description": "Matches any of the following asset types", + "launch_stage": "GA" + }, + "categories": { + "description": "Matches any of the following categories", + "launch_stage": "GA" + }, + "is_free": { + "launch_stage": "GA" + }, + "is_private_exchange": { + "launch_stage": "GA" + }, + "page_size": { + "launch_stage": "GA" + }, + "page_token": { + "launch_stage": "GA" + }, + "provider_ids": { + "description": "Matches any of the following provider ids", + "launch_stage": "GA" + }, + "query": { + "description": "Fuzzy matches query", + "launch_stage": "GA" + } + } + }, + "marketplace.SearchListingsResponse": { + "fields": { + "listings": { + "launch_stage": "GA" + }, + "next_page_token": { + "launch_stage": "GA" + } + } + }, + "marketplace.ShareInfo": { + "fields": { + "name": { + "launch_stage": "GA" + }, + "type": { + "ref": "marketplace.ListingShareType", + "launch_stage": "GA" + } + } + }, + "marketplace.SharedDataObject": { + "fields": { + "data_object_type": { + "description": "The type of the data object. Could be one of: TABLE, SCHEMA, NOTEBOOK_FILE, MODEL, VOLUME", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the shared object", + "launch_stage": "GA" + } + } + }, + "marketplace.TokenDetail": { + "fields": { + "bearerToken": { + "launch_stage": "GA" + }, + "endpoint": { + "launch_stage": "GA" + }, + "expirationTime": { + "launch_stage": "GA" + }, + "shareCredentialsVersion": { + "description": "These field names must follow the delta sharing protocol.\nOriginal message: RetrieveToken.Response in managed-catalog/api/messages/recipient.proto", + "launch_stage": "GA" + } + } + }, + "marketplace.TokenInfo": { + "fields": { + "activation_url": { + "description": "Full activation url to retrieve the access token.\nIt will be empty if the token is already retrieved.", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this Recipient Token was created, in epoch milliseconds.", + "launch_stage": "GA" + }, + "created_by": { + "description": "Username of Recipient Token creator.", + "launch_stage": "GA" + }, + "expiration_time": { + "description": "Expiration timestamp of the token in epoch milliseconds.", + "launch_stage": "GA" + }, + "id": { + "description": "Unique id of the Recipient Token.", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Time at which this Recipient Token was updated, in epoch milliseconds.", + "launch_stage": "GA" + }, + "updated_by": { + "description": "Username of Recipient Token updater.", + "launch_stage": "GA" + } + } + }, + "marketplace.UpdateExchangeFilterRequest": { + "fields": { + "filter": { + "ref": "marketplace.ExchangeFilter", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.UpdateExchangeFilterResponse": { + "fields": { + "filter": { + "ref": "marketplace.ExchangeFilter", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.UpdateExchangeRequest": { + "fields": { + "exchange": { + "ref": "marketplace.Exchange", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.UpdateExchangeResponse": { + "fields": { + "exchange": { + "ref": "marketplace.Exchange", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.UpdateInstallationRequest": { + "fields": { + "installation": { + "ref": "marketplace.InstallationDetail", + "launch_stage": "GA" + }, + "rotate_token": { + "launch_stage": "GA" + } + } + }, + "marketplace.UpdateInstallationResponse": { + "fields": { + "installation": { + "ref": "marketplace.InstallationDetail", + "launch_stage": "GA" + } + } + }, + "marketplace.UpdateListingRequest": { + "fields": { + "listing": { + "ref": "marketplace.Listing", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.UpdateListingResponse": { + "fields": { + "listing": { + "ref": "marketplace.Listing", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.UpdatePersonalizationRequestRequest": { + "fields": { + "reason": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "share": { + "ref": "marketplace.ShareInfo", + "launch_stage": "PUBLIC_PREVIEW" + }, + "status": { + "ref": "marketplace.PersonalizationRequestStatus", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.UpdatePersonalizationRequestResponse": { + "fields": { + "request": { + "ref": "marketplace.PersonalizationRequest", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.UpdateProviderAnalyticsDashboardRequest": { + "fields": { + "version": { + "description": "this is the version of the dashboard template we want to update our user to\ncurrent expectation is that it should be equal to latest version of the dashboard template", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.UpdateProviderAnalyticsDashboardResponse": { + "fields": { + "dashboard_id": { + "description": "this is newly created Lakeview dashboard for the user", + "launch_stage": "PUBLIC_PREVIEW" + }, + "id": { + "description": "id \u0026 version should be the same as the request", + "launch_stage": "PUBLIC_PREVIEW" + }, + "version": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.UpdateProviderRequest": { + "fields": { + "provider": { + "ref": "marketplace.ProviderInfo", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.UpdateProviderResponse": { + "fields": { + "provider": { + "ref": "marketplace.ProviderInfo", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "marketplace.Visibility": { + "enum": [ + "PUBLIC", + "PRIVATE" + ], + "enum_launch_stages": { + "PRIVATE": "GA", + "PUBLIC": "GA" + } + }, + "ml.Activity": { + "description": "For activities, this contains the activity recorded for the action.\nFor comments, this contains the comment details.\nFor transition requests, this contains the transition request details.", + "fields": { + "activity_type": { + "ref": "ml.ActivityType", + "launch_stage": "GA" + }, + "comment": { + "description": "User-provided comment associated with the activity, comment, or transition request.", + "launch_stage": "GA" + }, + "creation_timestamp": { + "description": "Creation time of the object, as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "from_stage": { + "description": "Source stage of the transition (if the activity is stage transition related). Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "launch_stage": "GA" + }, + "id": { + "description": "Unique identifier for the object.", + "launch_stage": "GA" + }, + "last_updated_timestamp": { + "description": "Time of the object at last update, as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "system_comment": { + "description": "Comment made by system, for example explaining an activity of type `SYSTEM_TRANSITION`. It usually describes a side effect, such as a version being archived as part of another version's stage transition, and may not be returned for some activity types.", + "launch_stage": "GA" + }, + "to_stage": { + "description": "Target stage of the transition (if the activity is stage transition related). Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "launch_stage": "GA" + }, + "user_id": { + "description": "The username of the user that created the object.", + "launch_stage": "GA" + } + } + }, + "ml.ActivityAction": { + "description": "An action that a user (with sufficient permissions) could take on an activity or comment.\n\nFor activities, valid values are:\n* `APPROVE_TRANSITION_REQUEST`: Approve a transition request\n\n* `REJECT_TRANSITION_REQUEST`: Reject a transition request\n\n* `CANCEL_TRANSITION_REQUEST`: Cancel (delete) a transition request\n\nFor comments, valid values are:\n* `EDIT_COMMENT`: Edit the comment\n\n* `DELETE_COMMENT`: Delete the comment", + "enum": [ + "APPROVE_TRANSITION_REQUEST", + "REJECT_TRANSITION_REQUEST", + "CANCEL_TRANSITION_REQUEST", + "EDIT_COMMENT", + "DELETE_COMMENT" + ], + "enum_launch_stages": { + "APPROVE_TRANSITION_REQUEST": "GA", + "CANCEL_TRANSITION_REQUEST": "GA", + "DELETE_COMMENT": "GA", + "EDIT_COMMENT": "GA", + "REJECT_TRANSITION_REQUEST": "GA" + }, + "enum_descriptions": { + "APPROVE_TRANSITION_REQUEST": "Approve a transition request", + "CANCEL_TRANSITION_REQUEST": "Cancel (delete) a transition request", + "DELETE_COMMENT": "Delete the comment", + "EDIT_COMMENT": "Edit the comment", + "REJECT_TRANSITION_REQUEST": "Reject a transition request" + } + }, + "ml.ActivityType": { + "description": "Type of activity. Valid values are:\n* `APPLIED_TRANSITION`: User applied the corresponding stage transition.\n\n* `REQUESTED_TRANSITION`: User requested the corresponding stage transition.\n\n* `CANCELLED_REQUEST`: User cancelled an existing transition request.\n\n* `APPROVED_REQUEST`: User approved the corresponding stage transition.\n\n* `REJECTED_REQUEST`: User rejected the coressponding stage transition.\n\n* `SYSTEM_TRANSITION`: For events performed as a side effect, such as archiving existing model versions in a stage.", + "enum": [ + "APPLIED_TRANSITION", + "REQUESTED_TRANSITION", + "CANCELLED_REQUEST", + "APPROVED_REQUEST", + "REJECTED_REQUEST", + "NEW_COMMENT", + "SYSTEM_TRANSITION" + ], + "enum_launch_stages": { + "APPLIED_TRANSITION": "GA", + "APPROVED_REQUEST": "GA", + "CANCELLED_REQUEST": "GA", + "NEW_COMMENT": "GA", + "REJECTED_REQUEST": "GA", + "REQUESTED_TRANSITION": "GA", + "SYSTEM_TRANSITION": "GA" + }, + "enum_descriptions": { + "APPLIED_TRANSITION": "User applied the corresponding stage transition.", + "APPROVED_REQUEST": "User approved the corresponding stage transition.", + "CANCELLED_REQUEST": "User cancelled an existing transition request.", + "REJECTED_REQUEST": "User rejected the coressponding stage transition.", + "REQUESTED_TRANSITION": "User requested the corresponding stage transition.", + "SYSTEM_TRANSITION": "For events performed as a side effect, such as archiving existing model versions in a stage." + } + }, + "ml.AggregationFunction": { + "description": "An aggregation function applied over a time window.", + "fields": { + "approx_count_distinct": { + "ref": "ml.ApproxCountDistinctFunction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "approx_percentile": { + "ref": "ml.ApproxPercentileFunction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "avg": { + "ref": "ml.AvgFunction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "count_function": { + "ref": "ml.CountFunction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "first": { + "ref": "ml.FirstFunction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "first_distinct": { + "ref": "ml.FirstDistinctFunction", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "first_n": { + "ref": "ml.FirstNFunction", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "last": { + "ref": "ml.LastFunction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "last_distinct": { + "ref": "ml.LastDistinctFunction", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "last_n": { + "ref": "ml.LastNFunction", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "max": { + "ref": "ml.MaxFunction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "min": { + "ref": "ml.MinFunction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "stddev_pop": { + "ref": "ml.StddevPopFunction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "stddev_samp": { + "ref": "ml.StddevSampFunction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "sum": { + "ref": "ml.SumFunction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "time_window": { + "description": "The time window over which the aggregation is computed.", + "ref": "ml.TimeWindow", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "var_pop": { + "ref": "ml.VarPopFunction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "var_samp": { + "ref": "ml.VarSampFunction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.ApproveTransitionRequest": { + "description": "Details required to identify and approve a model version stage transition request.", + "fields": { + "archive_existing_versions": { + "description": "Specifies whether to archive all current model versions in the target stage.", + "launch_stage": "GA" + }, + "comment": { + "description": "User-provided comment on the action.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the model.", + "launch_stage": "GA" + }, + "stage": { + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "launch_stage": "GA" + }, + "version": { + "description": "Version of the model.", + "launch_stage": "GA" + } + } + }, + "ml.ApproveTransitionRequestResponse": { + "fields": { + "activity": { + "description": "New activity generated as a result of this operation.", + "ref": "ml.Activity", + "launch_stage": "GA" + } + } + }, + "ml.ApproxCountDistinctFunction": { + "description": "Computes the approximate count of distinct values.", + "fields": { + "input": { + "description": "The input column from which the approximate count of distinct values is computed.", + "launch_stage": "GA" + }, + "relative_sd": { + "description": "The maximum relative standard deviation allowed (default defined by Spark).", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.ApproxPercentileFunction": { + "description": "Computes the approximate percentile of values.", + "fields": { + "accuracy": { + "description": "The accuracy parameter (higher is more accurate but slower).", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "input": { + "description": "The input column from which the approximate percentile is computed.", + "launch_stage": "GA" + }, + "percentile": { + "description": "The percentile value to compute (between 0 and 1).", + "launch_stage": "GA" + } + } + }, + "ml.AuthConfig": { + "fields": { + "mtls_config": { + "description": "Mutual-TLS authentication. See MtlsConfig.", + "ref": "ml.MtlsConfig", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "uc_service_credential_name": { + "description": "Name of the Unity Catalog service credential. This value will be set under the option databricks.serviceCredential", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.AvgFunction": { + "description": "Computes the average of values.", + "fields": { + "input": { + "description": "The input column from which the average is computed. For Kafka sources, use dot-prefixed path\nnotation (e.g., \"value.amount\"). For nested fields, the leaf node name is used.\nColon-prefixed notation (e.g., \"value:amount\") is supported for backwards\ncompatibility but is deprecated; migrate to dot notation.", + "launch_stage": "GA" + } + } + }, + "ml.BackfillFeaturesRequest": { + "fields": { + "backfill_ranges": { + "description": "Output ranges to backfill.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "budget_policy_id": { + "description": "The budget policy ID, in UUID format, used to attribute the serverless compute cost of this\nbackfill. If not specified, a default budget policy may be applied.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "feature_full_names": { + "description": "Full names of the features to backfill.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "request_id": { + "description": "Idempotency token for the request.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "tags": { + "description": "Custom tags to associate with this backfill. They are applied to the backfill job and\nforwarded to the underlying compute as Databricks resource tags, so backfill cost can be\nattributed in the billing system tables. These tags apply only to the backfill compute; they\nare not applied to the Unity Catalog Feature resources themselves, whose tags are managed\nseparately through the Unity Catalog tagging API. A maximum of 25 tags is supported; keys and\nvalues are subject to the same limitations as Databricks resource tags.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.BackfillFeaturesResponse": { + "description": "Result of a completed backfill." + }, + "ml.BackfillOperationMetadata": { + "description": "Progress and configuration for a backfill.", + "fields": { + "backfill_ranges": { + "description": "Output ranges targeted by the backfill.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "feature_full_names": { + "description": "Full names of the features targeted by the backfill.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "state": { + "description": "Current state of the backfill.", + "ref": "ml.BackfillOperationMetadataState", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "ml.BackfillOperationMetadataState": { + "description": "Lifecycle state of a backfill.", + "enum": [ + "PENDING", + "RUNNING", + "SUCCEEDED", + "FAILED", + "CANCELLED" + ], + "enum_launch_stages": { + "CANCELLED": "PRIVATE_PREVIEW", + "FAILED": "PRIVATE_PREVIEW", + "PENDING": "PRIVATE_PREVIEW", + "RUNNING": "PRIVATE_PREVIEW", + "SUCCEEDED": "PRIVATE_PREVIEW" + } + }, + "ml.BackfillRange": { + "description": "A time range for a backfill.", + "fields": { + "end_time": { + "description": "End of the backfill range, exclusive. If unset, defaults to the current time.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "start_time": { + "description": "Start of the backfill range, inclusive. If unset, defaults to the earliest source timestamp of the feature.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.BackfillSource": { + "fields": { + "delta_table_name": { + "description": "The full three-part name (catalog, schema, name) of the Delta table containing the historical data to backfill.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "delta_table_source": { + "description": "Deprecated: Use delta_table_name instead. Kept for backwards compatibility.\nThe Delta table source containing the historical data to backfill.\nOnly the delta table name is used for backfill, other fields are ignored.", + "ref": "ml.DeltaTableSource", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.BatchCreateMaterializedFeaturesRequest": { + "fields": { + "requests": { + "description": "The requests to create materialized features.", + "launch_stage": "GA" + } + } + }, + "ml.BatchCreateMaterializedFeaturesResponse": { + "fields": { + "materialized_features": { + "description": "The created materialized features with assigned IDs.", + "launch_stage": "GA" + } + } + }, + "ml.CancelOperationRequest": { + "description": "The request message for `CancelOperation` method." + }, + "ml.ColumnIdentifier": { + "fields": { + "variant_expr_path": { + "description": "String representation of the column name using dot-prefixed path notation.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.ColumnSelection": { + "description": "A ColumnSelection function, equivalent to the LAST() record of an entity over a lifetime window", + "fields": { + "column": { + "description": "Column name from source to select as the feature value.", + "launch_stage": "GA" + } + } + }, + "ml.CommentActivityAction": { + "description": "An action that a user (with sufficient permissions) could take on an activity or comment.\n\nFor activities, valid values are:\n* `APPROVE_TRANSITION_REQUEST`: Approve a transition request\n\n* `REJECT_TRANSITION_REQUEST`: Reject a transition request\n\n* `CANCEL_TRANSITION_REQUEST`: Cancel (delete) a transition request\n\nFor comments, valid values are:\n* `EDIT_COMMENT`: Edit the comment\n\n* `DELETE_COMMENT`: Delete the comment", + "enum": [ + "APPROVE_TRANSITION_REQUEST", + "REJECT_TRANSITION_REQUEST", + "CANCEL_TRANSITION_REQUEST", + "EDIT_COMMENT", + "DELETE_COMMENT" + ], + "enum_launch_stages": { + "APPROVE_TRANSITION_REQUEST": "GA", + "CANCEL_TRANSITION_REQUEST": "GA", + "DELETE_COMMENT": "GA", + "EDIT_COMMENT": "GA", + "REJECT_TRANSITION_REQUEST": "GA" + }, + "enum_descriptions": { + "APPROVE_TRANSITION_REQUEST": "Approve a transition request", + "CANCEL_TRANSITION_REQUEST": "Cancel (delete) a transition request", + "DELETE_COMMENT": "Delete the comment", + "EDIT_COMMENT": "Edit the comment", + "REJECT_TRANSITION_REQUEST": "Reject a transition request" + } + }, + "ml.CommentObject": { + "description": "For activities, this contains the activity recorded for the action.\nFor comments, this contains the comment details.\nFor transition requests, this contains the transition request details.", + "fields": { + "available_actions": { + "description": "Array of actions on the activity allowed for the current viewer.", + "launch_stage": "GA" + }, + "comment": { + "description": "User-provided comment associated with the activity, comment, or transition request.", + "launch_stage": "GA" + }, + "creation_timestamp": { + "description": "Creation time of the object, as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "id": { + "description": "Unique identifier for the object.", + "launch_stage": "GA" + }, + "last_updated_timestamp": { + "description": "Time of the object at last update, as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "user_id": { + "description": "The username of the user that created the object.", + "launch_stage": "GA" + } + } + }, + "ml.ContinuousWindow": { + "fields": { + "offset": { + "description": "The offset of the continuous window (must be non-positive).", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "window_duration": { + "description": "The duration of the continuous window (must be positive).", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.CountFunction": { + "description": "Computes the count of values.", + "fields": { + "input": { + "description": "The input column from which the count is computed. For Kafka sources, use dot-prefixed path\nnotation (e.g., \"value.amount\"). For nested fields, the leaf node name is used.\nColon-prefixed notation (e.g., \"value:amount\") is supported for backwards\ncompatibility but is deprecated; migrate to dot notation.", + "launch_stage": "GA" + } + } + }, + "ml.CreateComment": { + "description": "Details required to create a comment on a model version.", + "fields": { + "comment": { + "description": "User-provided comment on the action.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the model.", + "launch_stage": "GA" + }, + "version": { + "description": "Version of the model.", + "launch_stage": "GA" + } + } + }, + "ml.CreateCommentResponse": { + "fields": { + "comment": { + "description": "New comment object", + "ref": "ml.CommentObject", + "launch_stage": "GA" + } + } + }, + "ml.CreateExperiment": { + "fields": { + "artifact_location": { + "description": "Location where all artifacts for the experiment are stored.\nIf not provided, the remote server will select an appropriate default.", + "launch_stage": "GA" + }, + "name": { + "description": "Experiment name.", + "launch_stage": "GA" + }, + "tags": { + "description": "A collection of tags to set on the experiment. Maximum tag size and number of tags per request\ndepends on the storage backend. All storage backends are guaranteed to support tag keys up\nto 250 bytes in size and tag values up to 5000 bytes in size. All storage backends are also\nguaranteed to support up to 20 tags per request.", + "launch_stage": "GA" + }, + "trace_location": { + "description": "The location where the experiment's traces are stored. When set, the\nunderlying storage is provisioned and the experiment's traces are routed\nto it. When unset, traces are stored in the default MLflow backend. This\nfield cannot be updated after the experiment is created.", + "ref": "ml.ExperimentTraceLocation", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + } + } + }, + "ml.CreateExperimentResponse": { + "fields": { + "experiment_id": { + "description": "Unique identifier for the experiment.", + "launch_stage": "GA" + } + } + }, + "ml.CreateFeatureRequest": { + "fields": { + "feature": { + "description": "Feature to create.", + "ref": "ml.Feature", + "launch_stage": "GA" + } + } + }, + "ml.CreateFeatureTagRequest": { + "fields": { + "feature_tag": { + "ref": "ml.FeatureTag", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.CreateForecastingExperimentRequest": { + "fields": { + "custom_weights_column": { + "description": "The column in the training table used to customize weights for each time series.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "experiment_path": { + "description": "The path in the workspace to store the created experiment.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "forecast_granularity": { + "description": "The time interval between consecutive rows in the time series data.\nPossible values include: '1 second', '1 minute', '5 minutes', '10 minutes', '15 minutes', '30 minutes', 'Hourly', 'Daily', 'Weekly', 'Monthly', 'Quarterly', 'Yearly'.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "forecast_horizon": { + "description": "The number of time steps into the future to make predictions, calculated as a multiple of forecast_granularity. This value represents how far ahead the model should forecast.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "future_feature_data_path": { + "description": "The fully qualified path of a Unity Catalog table, formatted as catalog_name.schema_name.table_name, used to store future feature data for predictions.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "holiday_regions": { + "description": "The region code(s) to automatically add holiday features. Currently supports only one region.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "include_features": { + "description": "Specifies the list of feature columns to include in model training. These columns must exist\nin the training data and be of type string, numerical, or boolean. If not specified, no additional\nfeatures will be included.\nNote: Certain columns are automatically handled:\n- Automatically excluded: split_column, target_column, custom_weights_column.\n- Automatically included: time_column.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "max_runtime": { + "description": "The maximum duration for the experiment in minutes. The experiment stops automatically if it exceeds this limit.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "prediction_data_path": { + "description": "The fully qualified path of a Unity Catalog table, formatted as catalog_name.schema_name.table_name, used to store predictions.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "primary_metric": { + "description": "The evaluation metric used to optimize the forecasting model.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "register_to": { + "description": "The fully qualified path of a Unity Catalog model, formatted as catalog_name.schema_name.model_name, used to store the best model.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "split_column": { + "description": "// The column in the training table used for custom data splits. Values must be 'train', 'validate', or 'test'.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "target_column": { + "description": "The column in the input training table used as the prediction target for model training. The values in this column are used as the ground truth for model training.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "time_column": { + "description": "The column in the input training table that represents each row's timestamp.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "timeseries_identifier_columns": { + "description": "The column in the training table used to group the dataset for predicting individual time series.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "train_data_path": { + "description": "The fully qualified path of a Unity Catalog table, formatted as catalog_name.schema_name.table_name, used as training data for the forecasting model.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "training_frameworks": { + "description": "List of frameworks to include for model tuning. Possible values are 'Prophet', 'ARIMA', 'DeepAR'. An empty list includes all supported frameworks.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.CreateForecastingExperimentResponse": { + "fields": { + "experiment_id": { + "description": "The unique ID of the created forecasting experiment", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.CreateIssueRequest": { + "fields": { + "issue": { + "description": "Output-only fields are ignored.", + "ref": "ml.Issue", + "launch_stage": "PUBLIC_BETA" + }, + "issue_id": { + "description": "Optional client-chosen ID: iss- followed by 32 lowercase hex digits. A retry\nwith the same ID fails with ALREADY_EXISTS rather than making a duplicate.\nThe server generates one if unset.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.CreateKafkaConfigRequest": { + "fields": { + "kafka_config": { + "ref": "ml.KafkaConfig", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.CreateLoggedModelRequest": { + "fields": { + "experiment_id": { + "description": "The ID of the experiment that owns the model.", + "launch_stage": "GA" + }, + "model_type": { + "description": "The type of the model, such as ``\"Agent\"``, ``\"Classifier\"``, ``\"LLM\"``.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the model (optional). If not specified one will be generated.", + "launch_stage": "GA" + }, + "params": { + "description": "Parameters attached to the model.", + "launch_stage": "GA" + }, + "source_run_id": { + "description": "The ID of the run that created the model.", + "launch_stage": "GA" + }, + "tags": { + "description": "Tags attached to the model.", + "launch_stage": "GA" + } + } + }, + "ml.CreateLoggedModelResponse": { + "fields": { + "model": { + "description": "The newly created logged model.", + "ref": "ml.LoggedModel", + "launch_stage": "GA" + } + } + }, + "ml.CreateMaterializedFeatureRequest": { + "fields": { + "materialized_feature": { + "description": "The materialized feature to create.", + "ref": "ml.MaterializedFeature", + "launch_stage": "GA" + } + } + }, + "ml.CreateModelRequest": { + "fields": { + "description": { + "description": "Optional description for registered model.", + "launch_stage": "GA" + }, + "name": { + "description": "Register models under this name", + "launch_stage": "GA" + }, + "tags": { + "description": "Additional metadata for registered model.", + "launch_stage": "GA" + } + } + }, + "ml.CreateModelResponse": { + "fields": { + "registered_model": { + "ref": "ml.Model", + "launch_stage": "GA" + } + } + }, + "ml.CreateModelVersionRequest": { + "fields": { + "description": { + "description": "Optional description for model version.", + "launch_stage": "GA" + }, + "name": { + "description": "Register model under this name", + "launch_stage": "GA" + }, + "run_id": { + "description": "MLflow run ID for correlation, if `source` was generated by an experiment run in\nMLflow tracking server", + "launch_stage": "GA" + }, + "run_link": { + "description": "MLflow run link - this is the exact link of the run that generated this model version,\npotentially hosted at another instance of MLflow.", + "launch_stage": "GA" + }, + "source": { + "description": "URI indicating the location of the model artifacts.", + "launch_stage": "GA" + }, + "tags": { + "description": "Additional metadata for model version.", + "launch_stage": "GA" + } + } + }, + "ml.CreateModelVersionResponse": { + "fields": { + "model_version": { + "description": "Return new version number generated for this model in registry.", + "ref": "ml.ModelVersion", + "launch_stage": "GA" + } + } + }, + "ml.CreateOnlineStoreRequest": { + "fields": { + "online_store": { + "description": "Online store to create.", + "ref": "ml.OnlineStore", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.CreateRegistryWebhook": { + "description": "Details required to create a registry webhook.", + "fields": { + "description": { + "description": "User-specified description for the webhook.", + "launch_stage": "GA" + }, + "events": { + "description": "Events that can trigger a registry webhook:\n* `MODEL_VERSION_CREATED`: A new model version was created for the associated model.\n\n* `MODEL_VERSION_TRANSITIONED_STAGE`: A model version’s stage was changed.\n\n* `TRANSITION_REQUEST_CREATED`: A user requested a model version’s stage be transitioned.\n\n* `COMMENT_CREATED`: A user wrote a comment on a registered model.\n\n* `REGISTERED_MODEL_CREATED`: A new registered model was created. This event type can only be specified for a registry-wide webhook, which can be created by not specifying a model name in the create request.\n\n* `MODEL_VERSION_TAG_SET`: A user set a tag on the model version.\n\n* `MODEL_VERSION_TRANSITIONED_TO_STAGING`: A model version was transitioned to staging.\n\n* `MODEL_VERSION_TRANSITIONED_TO_PRODUCTION`: A model version was transitioned to production.\n\n* `MODEL_VERSION_TRANSITIONED_TO_ARCHIVED`: A model version was archived.\n\n* `TRANSITION_REQUEST_TO_STAGING_CREATED`: A user requested a model version be transitioned to staging.\n\n* `TRANSITION_REQUEST_TO_PRODUCTION_CREATED`: A user requested a model version be transitioned to production.\n\n* `TRANSITION_REQUEST_TO_ARCHIVED_CREATED`: A user requested a model version be archived.", + "launch_stage": "GA" + }, + "http_url_spec": { + "description": "External HTTPS URL called on event trigger (by using a POST request).", + "ref": "ml.HttpUrlSpec", + "launch_stage": "GA" + }, + "job_spec": { + "description": "ID of the job that the webhook runs.", + "ref": "ml.JobSpec", + "launch_stage": "GA" + }, + "model_name": { + "description": "If model name is not specified, a registry-wide webhook is created that listens for the specified events across all versions of all registered models.", + "launch_stage": "GA" + }, + "status": { + "description": "Enable or disable triggering the webhook, or put the webhook into test mode. The default is `ACTIVE`:\n* `ACTIVE`: Webhook is triggered when an associated event happens.\n\n* `DISABLED`: Webhook is not triggered.\n\n* `TEST_MODE`: Webhook can be triggered through the test endpoint, but is not triggered on a real event.", + "ref": "ml.RegistryWebhookStatus", + "launch_stage": "GA" + } + } + }, + "ml.CreateRun": { + "fields": { + "experiment_id": { + "description": "ID of the associated experiment.", + "launch_stage": "GA" + }, + "run_name": { + "description": "The name of the run.", + "launch_stage": "GA" + }, + "start_time": { + "description": "Unix timestamp in milliseconds of when the run started.", + "launch_stage": "GA" + }, + "tags": { + "description": "Additional metadata for run.", + "launch_stage": "GA" + }, + "user_id": { + "description": "ID of the user executing the run.\nThis field is deprecated as of MLflow 1.0, and will be removed in a future\nMLflow release. Use 'mlflow.user' tag instead.", + "deprecated": true, + "launch_stage": "GA" + } + } + }, + "ml.CreateRunResponse": { + "fields": { + "run": { + "description": "The newly created run.", + "ref": "ml.Run", + "launch_stage": "GA" + } + } + }, + "ml.CreateStreamRequest": { + "fields": { + "stream": { + "description": "The Stream to create.", + "ref": "ml.Stream", + "launch_stage": "GA" + } + } + }, + "ml.CreateTransitionRequest": { + "description": "Details required to create a model version stage transition request.", + "fields": { + "comment": { + "description": "User-provided comment on the action.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the model.", + "launch_stage": "GA" + }, + "stage": { + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "launch_stage": "GA" + }, + "version": { + "description": "Version of the model.", + "launch_stage": "GA" + } + } + }, + "ml.CreateTransitionRequestResponse": { + "fields": { + "request": { + "description": "New activity generated for stage transition request.", + "ref": "ml.TransitionRequest", + "launch_stage": "GA" + } + } + }, + "ml.CreateWebhookResponse": { + "fields": { + "webhook": { + "ref": "ml.RegistryWebhook", + "launch_stage": "GA" + } + } + }, + "ml.CronSchedule": { + "description": "A cron-based schedule trigger for the materialization pipeline.", + "fields": { + "cron_expression": { + "description": "The cron expression defining the schedule (e.g., \"0 0 * * *\" for daily at midnight). The\nschedule is interpreted in timezone_id (defaults to UTC). Required when mode is MANUAL (or\nunset). Left empty when mode is DERIVED, where the service computes it (aligned to UTC) from\nthe features' window timing and fills it in on the response.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "mode": { + "description": "How the schedule is determined. Defaults to MANUAL when unset.", + "ref": "ml.CronScheduleMode", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "timezone_id": { + "description": "A Java timezone ID. The schedule is resolved with respect to this timezone. Defaults to UTC\nwhen omitted. Can only be configured for MANUAL schedules; DERIVED schedules are always aligned\nto UTC.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.CronScheduleMode": { + "description": "The way a materialization schedule is arrived at.", + "enum": [ + "MANUAL", + "DERIVED" + ], + "enum_launch_stages": { + "DERIVED": "PRIVATE_PREVIEW", + "MANUAL": "PRIVATE_PREVIEW" + } + }, + "ml.CustomUdf": { + "description": "A CustomUdf function applies a registered Unity Catalog function row-wise to\nsource columns, producing a single output column per row.", + "fields": { + "function_path": { + "description": "Fully qualified 3-part Unity Catalog path of the function to apply.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "input_bindings": { + "description": "Binds each UC function parameter to a source column.\nMay be empty for zero-argument functions (e.g. a timestamp generator).", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.DataSource": { + "description": "Specifies the data source backing a feature. Exactly one source type must be set.", + "fields": { + "delta_table_source": { + "description": "A Delta table data source.", + "ref": "ml.DeltaTableSource", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "feature_view_source": { + "description": "A data source composed from registered upstream Features.", + "ref": "ml.FeatureViewSource", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "kafka_source": { + "description": "A Kafka stream data source.", + "ref": "ml.KafkaSource", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "lateness": { + "description": "Completeness timing for this Feature's use of the source. This configuration is part of the\nFeature definition; it does not modify the underlying table or stream.", + "ref": "ml.SourceLateness", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "request_source": { + "description": "A request-time data source.", + "ref": "ml.RequestSource", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "stream_source": { + "description": "A Stream data source.", + "ref": "ml.StreamSource", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.DatabricksServiceExceptionWithDetailsProto": { + "description": "Databricks Error that is returned by all Databricks APIs.", + "fields": { + "details": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "error_code": { + "ref": "ml.ErrorCode", + "launch_stage": "PRIVATE_PREVIEW" + }, + "message": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "stack_trace": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.Dataset": { + "description": "Dataset. Represents a reference to data used for training, testing, or evaluation during\nthe model development process.", + "fields": { + "digest": { + "description": "Dataset digest, e.g. an md5 hash of the dataset that uniquely identifies it within datasets of the same name.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the dataset. E.g. “my.uc.table@2” “nyc-taxi-dataset”, “fantastic-elk-3”", + "launch_stage": "GA" + }, + "profile": { + "description": "The profile of the dataset. Summary statistics for the dataset, such as the number of rows\nin a table, the mean / std / mode of each column in a table, or the number of elements\nin an array.", + "launch_stage": "GA" + }, + "schema": { + "description": "The schema of the dataset. E.g., MLflow ColSpec JSON for a dataframe, MLflow TensorSpec JSON\nfor an ndarray, or another schema format.", + "launch_stage": "GA" + }, + "source": { + "description": "Source information for the dataset. Note that the source may not exactly reproduce the\ndataset if it was transformed / modified before use with MLflow.", + "launch_stage": "GA" + }, + "source_type": { + "description": "The type of the dataset source, e.g. ‘databricks-uc-table’, ‘DBFS’, ‘S3’, ...", + "launch_stage": "GA" + } + } + }, + "ml.DatasetInput": { + "description": "DatasetInput. Represents a dataset and input tags.", + "fields": { + "dataset": { + "description": "The dataset being used as a Run input.", + "ref": "ml.Dataset", + "launch_stage": "GA" + }, + "tags": { + "description": "A list of tags for the dataset input, e.g. a “context” tag with value “training”", + "launch_stage": "GA" + } + } + }, + "ml.DeleteCommentRequest": { + "fields": { + "id": { + "description": "Unique identifier of an activity", + "launch_stage": "GA" + } + } + }, + "ml.DeleteCommentResponse": {}, + "ml.DeleteExperiment": { + "fields": { + "experiment_id": { + "description": "ID of the associated experiment.", + "launch_stage": "GA" + } + } + }, + "ml.DeleteExperimentResponse": {}, + "ml.DeleteFeatureRequest": {}, + "ml.DeleteFeatureTagRequest": {}, + "ml.DeleteKafkaConfigRequest": {}, + "ml.DeleteLoggedModelRequest": {}, + "ml.DeleteLoggedModelResponse": {}, + "ml.DeleteLoggedModelTagRequest": {}, + "ml.DeleteLoggedModelTagResponse": {}, + "ml.DeleteMaterializedFeatureRequest": {}, + "ml.DeleteModelRequest": { + "fields": { + "name": { + "description": "Registered model unique name identifier.", + "launch_stage": "GA" + } + } + }, + "ml.DeleteModelResponse": {}, + "ml.DeleteModelTagRequest": { + "fields": { + "key": { + "description": "Name of the tag. The name must be an exact match; wild-card deletion is not supported. Maximum size is 250 bytes.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the registered model that the tag was logged under.", + "launch_stage": "GA" + } + } + }, + "ml.DeleteModelTagResponse": {}, + "ml.DeleteModelVersionRequest": { + "fields": { + "name": { + "description": "Name of the registered model", + "launch_stage": "GA" + }, + "version": { + "description": "Model version number", + "launch_stage": "GA" + } + } + }, + "ml.DeleteModelVersionResponse": {}, + "ml.DeleteModelVersionTagRequest": { + "fields": { + "key": { + "description": "Name of the tag. The name must be an exact match; wild-card deletion is not supported. Maximum size is 250 bytes.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the registered model that the tag was logged under.", + "launch_stage": "GA" + }, + "version": { + "description": "Model version number that the tag was logged under.", + "launch_stage": "GA" + } + } + }, + "ml.DeleteModelVersionTagResponse": {}, + "ml.DeleteOnlineStoreRequest": {}, + "ml.DeleteOnlineTableRequest": {}, + "ml.DeleteRun": { + "fields": { + "run_id": { + "description": "ID of the run to delete.", + "launch_stage": "GA" + } + } + }, + "ml.DeleteRunResponse": {}, + "ml.DeleteRuns": { + "fields": { + "experiment_id": { + "description": "The ID of the experiment containing the runs to delete.", + "launch_stage": "GA" + }, + "max_runs": { + "description": "An optional positive integer indicating the maximum number of runs to delete. The maximum allowed value for\nmax_runs is 10000.", + "launch_stage": "GA" + }, + "max_timestamp_millis": { + "description": "The maximum creation timestamp in milliseconds since the UNIX epoch for deleting runs. Only runs created prior to\nor at this timestamp are deleted.", + "launch_stage": "GA" + } + } + }, + "ml.DeleteRunsResponse": { + "fields": { + "runs_deleted": { + "description": "The number of runs deleted.", + "launch_stage": "GA" + } + } + }, + "ml.DeleteStreamRequest": {}, + "ml.DeleteTag": { + "fields": { + "key": { + "description": "Name of the tag. Maximum size is 255 bytes. Must be provided.", + "launch_stage": "GA" + }, + "run_id": { + "description": "ID of the run that the tag was logged under. Must be provided.", + "launch_stage": "GA" + } + } + }, + "ml.DeleteTagResponse": {}, + "ml.DeleteTransitionRequestRequest": { + "fields": { + "comment": { + "description": "User-provided comment on the action.", + "launch_stage": "GA" + }, + "creator": { + "description": "Username of the user who created this request. Of the transition requests matching the specified details, only the one transition created by this user will be deleted.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the model.", + "launch_stage": "GA" + }, + "stage": { + "description": "Target stage of the transition request. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "launch_stage": "GA" + }, + "version": { + "description": "Version of the model.", + "launch_stage": "GA" + } + } + }, + "ml.DeleteTransitionRequestResponse": { + "fields": { + "activity": { + "description": "New activity generated as a result of this operation.", + "ref": "ml.Activity", + "launch_stage": "GA" + } + } + }, + "ml.DeleteWebhookRequest": { + "fields": { + "id": { + "description": "Webhook ID required to delete a registry webhook.", + "launch_stage": "GA" + } + } + }, + "ml.DeleteWebhookResponse": {}, + "ml.DeltaTableSource": { + "fields": { + "dataframe_schema": { + "description": "Schema of the resulting dataframe after transformations, in Spark StructType JSON format (from df.schema.json()).\nRequired if transformation_sql is specified.\nExample: {\"type\":\"struct\",\"fields\":[{\"name\":\"col_a\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"col_c\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}]}", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "entity_columns": { + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "filter_condition": { + "description": "Single WHERE clause to filter delta table before applying transformations. Will be row-wise evaluated, so should only include conditionals and projections.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "full_name": { + "description": "The full three-part (catalog, schema, table) name of the Delta table.", + "launch_stage": "GA" + }, + "timeseries_column": { + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "transformation_sql": { + "description": "A single SQL SELECT expression applied after filter_condition.\nShould contains all the columns needed (eg. \"SELECT *, col_a + col_b AS col_c FROM x.y.z WHERE col_a \u003e 0\" would have `transformation_sql` \"*, col_a + col_b AS col_c\")\nIf transformation_sql is not provided, all columns of the delta table are present in the DataSource dataframe.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.DirectMtlsConfig": { + "description": "Direct connection configs for mTLS, as Kafka Connections do not support mTLS yet.", + "fields": { + "bootstrap_servers": { + "description": "A comma-separated list of host:port pairs for the Kafka bootstrap servers.", + "launch_stage": "GA" + }, + "mtls_config": { + "description": "Mutual-TLS authentication configuration.", + "ref": "ml.MtlsConfig", + "launch_stage": "GA" + } + } + }, + "ml.DirectSchemas": { + "description": "Schema definitions provided directly on the Stream, as opposed to referencing a schema registry.\nTo resolve schemas from a registry instead, use SchemaRegistryConfig.", + "fields": { + "key_schema": { + "description": "Schema for the message key. This is only used for Kafka streams.\nFor Kafka, at least one of payload_schema or key_schema must be specified.", + "ref": "ml.SchemaConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "payload_schema": { + "description": "Schema for the message payload. For Kafka, this is the value schema.\nUnless the platform supports another schema (e.g. keys for Kafka), this must be specified.", + "ref": "ml.SchemaConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.EntityColumn": { + "fields": { + "name": { + "description": "The name of the entity column. For Kafka sources, use dot-prefixed path notation to reference\nfields within the key or value schema (e.g., \"value.user_id\", \"key.partition_key\"). For nested\nfields, the leaf node name (e.g., \"user_id\" from \"value.trip_details.user_id\") is what will\nbe present in materialized tables and expected to match at query time.\nColon-prefixed notation (e.g., \"value:user_id\") is supported for backwards\ncompatibility but is deprecated; migrate to dot notation.", + "launch_stage": "GA" + } + } + }, + "ml.ErrorCode": { + "description": "Error codes returned by Databricks APIs to indicate specific failure conditions.", + "enum": [ + "UNKNOWN", + "INTERNAL_ERROR", + "TEMPORARILY_UNAVAILABLE", + "IO_ERROR", + "BAD_REQUEST", + "SERVICE_UNDER_MAINTENANCE", + "WORKSPACE_TEMPORARILY_UNAVAILABLE", + "DEADLINE_EXCEEDED", + "CANCELLED", + "RESOURCE_EXHAUSTED", + "ABORTED", + "NOT_FOUND", + "ALREADY_EXISTS", + "UNAUTHENTICATED", + "UNAVAILABLE", + "INVALID_PARAMETER_VALUE", + "ENDPOINT_NOT_FOUND", + "MALFORMED_REQUEST", + "INVALID_STATE", + "PERMISSION_DENIED", + "FEATURE_DISABLED", + "CUSTOMER_UNAUTHORIZED", + "REQUEST_LIMIT_EXCEEDED", + "RESOURCE_CONFLICT", + "UNPARSEABLE_HTTP_ERROR", + "NOT_IMPLEMENTED", + "DATA_LOSS", + "INVALID_STATE_TRANSITION", + "COULD_NOT_ACQUIRE_LOCK", + "RESOURCE_ALREADY_EXISTS", + "RESOURCE_DOES_NOT_EXIST", + "QUOTA_EXCEEDED", + "MAX_BLOCK_SIZE_EXCEEDED", + "MAX_READ_SIZE_EXCEEDED", + "PARTIAL_DELETE", + "MAX_LIST_SIZE_EXCEEDED", + "DRY_RUN_FAILED", + "RESOURCE_LIMIT_EXCEEDED", + "DIRECTORY_NOT_EMPTY", + "DIRECTORY_PROTECTED", + "MAX_NOTEBOOK_SIZE_EXCEEDED", + "MAX_CHILD_NODE_SIZE_EXCEEDED", + "SEARCH_QUERY_TOO_LONG", + "SEARCH_QUERY_TOO_SHORT", + "MANAGED_RESOURCE_GROUP_DOES_NOT_EXIST", + "PERMISSION_NOT_PROPAGATED", + "DEPLOYMENT_TIMEOUT", + "GIT_CONFLICT", + "GIT_UNKNOWN_REF", + "GIT_SENSITIVE_TOKEN_DETECTED", + "GIT_URL_NOT_ON_ALLOW_LIST", + "GIT_REMOTE_ERROR", + "PROJECTS_OPERATION_TIMEOUT", + "IPYNB_FILE_IN_REPO", + "INSECURE_PARTNER_RESPONSE", + "MALFORMED_PARTNER_RESPONSE", + "METASTORE_DOES_NOT_EXIST", + "DAC_DOES_NOT_EXIST", + "CATALOG_DOES_NOT_EXIST", + "SCHEMA_DOES_NOT_EXIST", + "TABLE_DOES_NOT_EXIST", + "SHARE_DOES_NOT_EXIST", + "RECIPIENT_DOES_NOT_EXIST", + "STORAGE_CREDENTIAL_DOES_NOT_EXIST", + "EXTERNAL_LOCATION_DOES_NOT_EXIST", + "PRINCIPAL_DOES_NOT_EXIST", + "PROVIDER_DOES_NOT_EXIST", + "METASTORE_ALREADY_EXISTS", + "DAC_ALREADY_EXISTS", + "CATALOG_ALREADY_EXISTS", + "SCHEMA_ALREADY_EXISTS", + "TABLE_ALREADY_EXISTS", + "SHARE_ALREADY_EXISTS", + "RECIPIENT_ALREADY_EXISTS", + "STORAGE_CREDENTIAL_ALREADY_EXISTS", + "EXTERNAL_LOCATION_ALREADY_EXISTS", + "PROVIDER_ALREADY_EXISTS", + "CATALOG_NOT_EMPTY", + "SCHEMA_NOT_EMPTY", + "METASTORE_NOT_EMPTY", + "PROVIDER_SHARE_NOT_ACCESSIBLE" + ], + "enum_launch_stages": { + "ABORTED": "PRIVATE_PREVIEW", + "ALREADY_EXISTS": "PRIVATE_PREVIEW", + "BAD_REQUEST": "PRIVATE_PREVIEW", + "CANCELLED": "PRIVATE_PREVIEW", + "CATALOG_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "CATALOG_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "CATALOG_NOT_EMPTY": "PRIVATE_PREVIEW", + "COULD_NOT_ACQUIRE_LOCK": "PRIVATE_PREVIEW", + "CUSTOMER_UNAUTHORIZED": "PRIVATE_PREVIEW", + "DAC_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "DAC_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "DATA_LOSS": "PRIVATE_PREVIEW", + "DEADLINE_EXCEEDED": "PRIVATE_PREVIEW", + "DEPLOYMENT_TIMEOUT": "PRIVATE_PREVIEW", + "DIRECTORY_NOT_EMPTY": "PRIVATE_PREVIEW", + "DIRECTORY_PROTECTED": "PRIVATE_PREVIEW", + "DRY_RUN_FAILED": "PRIVATE_PREVIEW", + "ENDPOINT_NOT_FOUND": "PRIVATE_PREVIEW", + "EXTERNAL_LOCATION_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "EXTERNAL_LOCATION_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "FEATURE_DISABLED": "PRIVATE_PREVIEW", + "GIT_CONFLICT": "PRIVATE_PREVIEW", + "GIT_REMOTE_ERROR": "PRIVATE_PREVIEW", + "GIT_SENSITIVE_TOKEN_DETECTED": "PRIVATE_PREVIEW", + "GIT_UNKNOWN_REF": "PRIVATE_PREVIEW", + "GIT_URL_NOT_ON_ALLOW_LIST": "PRIVATE_PREVIEW", + "INSECURE_PARTNER_RESPONSE": "PRIVATE_PREVIEW", + "INTERNAL_ERROR": "PRIVATE_PREVIEW", + "INVALID_PARAMETER_VALUE": "PRIVATE_PREVIEW", + "INVALID_STATE": "PRIVATE_PREVIEW", + "INVALID_STATE_TRANSITION": "PRIVATE_PREVIEW", + "IO_ERROR": "PRIVATE_PREVIEW", + "IPYNB_FILE_IN_REPO": "PRIVATE_PREVIEW", + "MALFORMED_PARTNER_RESPONSE": "PRIVATE_PREVIEW", + "MALFORMED_REQUEST": "PRIVATE_PREVIEW", + "MANAGED_RESOURCE_GROUP_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "MAX_BLOCK_SIZE_EXCEEDED": "PRIVATE_PREVIEW", + "MAX_CHILD_NODE_SIZE_EXCEEDED": "PRIVATE_PREVIEW", + "MAX_LIST_SIZE_EXCEEDED": "PRIVATE_PREVIEW", + "MAX_NOTEBOOK_SIZE_EXCEEDED": "PRIVATE_PREVIEW", + "MAX_READ_SIZE_EXCEEDED": "PRIVATE_PREVIEW", + "METASTORE_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "METASTORE_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "METASTORE_NOT_EMPTY": "PRIVATE_PREVIEW", + "NOT_FOUND": "PRIVATE_PREVIEW", + "NOT_IMPLEMENTED": "PRIVATE_PREVIEW", + "PARTIAL_DELETE": "PRIVATE_PREVIEW", + "PERMISSION_DENIED": "PRIVATE_PREVIEW", + "PERMISSION_NOT_PROPAGATED": "PRIVATE_PREVIEW", + "PRINCIPAL_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "PROJECTS_OPERATION_TIMEOUT": "PRIVATE_PREVIEW", + "PROVIDER_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "PROVIDER_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "PROVIDER_SHARE_NOT_ACCESSIBLE": "PRIVATE_PREVIEW", + "QUOTA_EXCEEDED": "PRIVATE_PREVIEW", + "RECIPIENT_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "RECIPIENT_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "REQUEST_LIMIT_EXCEEDED": "PRIVATE_PREVIEW", + "RESOURCE_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "RESOURCE_CONFLICT": "PRIVATE_PREVIEW", + "RESOURCE_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "RESOURCE_EXHAUSTED": "PRIVATE_PREVIEW", + "RESOURCE_LIMIT_EXCEEDED": "PRIVATE_PREVIEW", + "SCHEMA_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "SCHEMA_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "SCHEMA_NOT_EMPTY": "PRIVATE_PREVIEW", + "SEARCH_QUERY_TOO_LONG": "PRIVATE_PREVIEW", + "SEARCH_QUERY_TOO_SHORT": "PRIVATE_PREVIEW", + "SERVICE_UNDER_MAINTENANCE": "PRIVATE_PREVIEW", + "SHARE_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "SHARE_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "STORAGE_CREDENTIAL_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "STORAGE_CREDENTIAL_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "TABLE_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "TABLE_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "TEMPORARILY_UNAVAILABLE": "PRIVATE_PREVIEW", + "UNAUTHENTICATED": "PRIVATE_PREVIEW", + "UNAVAILABLE": "PRIVATE_PREVIEW", + "UNKNOWN": "PRIVATE_PREVIEW", + "UNPARSEABLE_HTTP_ERROR": "PRIVATE_PREVIEW", + "WORKSPACE_TEMPORARILY_UNAVAILABLE": "PRIVATE_PREVIEW" + } + }, + "ml.Experiment": { + "description": "An experiment and its metadata.", + "fields": { + "artifact_location": { + "description": "Location where artifacts for the experiment are stored.", + "launch_stage": "GA" + }, + "creation_time": { + "description": "Creation time", + "launch_stage": "GA" + }, + "experiment_id": { + "description": "Unique identifier for the experiment.", + "launch_stage": "GA" + }, + "last_update_time": { + "description": "Last update time", + "launch_stage": "GA" + }, + "lifecycle_stage": { + "description": "Current life cycle stage of the experiment: \"active\" or \"deleted\".\nDeleted experiments are not returned by APIs.", + "launch_stage": "GA" + }, + "name": { + "description": "Human readable name that identifies the experiment.", + "launch_stage": "GA" + }, + "tags": { + "description": "Tags: Additional metadata key-value pairs.", + "launch_stage": "GA" + }, + "trace_location": { + "description": "The location where the experiment's traces are stored. Unset when traces\nare stored in the default MLflow backend. This field cannot be updated\nafter the experiment is created.", + "ref": "ml.ExperimentTraceLocation", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + } + } + }, + "ml.ExperimentAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "ml.ExperimentPermissionLevel", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "ml.ExperimentAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "ml.ExperimentPermission": { + "fields": { + "inherited": { + "launch_stage": "GA" + }, + "inherited_from_object": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "ml.ExperimentPermissionLevel", + "launch_stage": "GA" + } + } + }, + "ml.ExperimentPermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_MANAGE", + "CAN_EDIT", + "CAN_READ" + ] + }, + "ml.ExperimentPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "launch_stage": "GA" + }, + "object_type": { + "launch_stage": "GA" + } + } + }, + "ml.ExperimentPermissionsDescription": { + "fields": { + "description": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "ml.ExperimentPermissionLevel", + "launch_stage": "GA" + } + } + }, + "ml.ExperimentPermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "ml.ExperimentTag": { + "description": "A tag for an experiment.", + "fields": { + "key": { + "description": "The tag key.", + "launch_stage": "GA" + }, + "value": { + "description": "The tag value.", + "launch_stage": "GA" + } + } + }, + "ml.ExperimentTraceLocation": { + "description": "The storage location for an experiment's traces.", + "fields": { + "uc_trace_location": { + "description": "A Unity Catalog schema where the experiment's traces are stored as\nDelta tables.", + "ref": "ml.UcTraceLocation", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.Feature": { + "fields": { + "catalog_name": { + "description": "Name of parent catalog.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_at": { + "description": "Time at which this feature was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "Username of the feature creator.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "The description of the feature.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "entities": { + "description": "The entity columns for the feature, used as aggregation keys and for query-time lookup.\nOptional since entities are not set for RequestSource features or on-demand calculated features.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "filter_condition": { + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "full_name": { + "description": "The full three-part name (catalog, schema, name) of the feature.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "function": { + "description": "The function by which the feature is computed.", + "ref": "ml.Function", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "inputs": { + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "lineage_context": { + "description": "Lineage context information for this feature.\nWARNING: This field is primarily intended for internal use by Databricks systems and\nis automatically populated when features are created through Databricks notebooks or jobs.\nUsers should not manually set this field as incorrect values may lead to inaccurate lineage tracking or unexpected behavior.\nThis field will be set by feature-engineering client and should be left unset by SDK and terraform users.", + "ref": "ml.LineageContext", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "name": { + "description": "Name of the feature, extracted from the full three-part name (catalog.schema.name).", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "schema_name": { + "description": "Name of parent schema relative to its parent catalog.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "source": { + "description": "The data source of the feature.", + "ref": "ml.DataSource", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "time_window": { + "ref": "ml.TimeWindow", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "timeseries_column": { + "description": "Column recording time, used for point-in-time joins, backfills, and aggregations.\nOptional since a timeseries column is not set for RequestSource features or on-demand\ncalculated features.", + "ref": "ml.TimeseriesColumn", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + } + } + }, + "ml.FeatureLineage": { + "fields": { + "feature_specs": { + "description": "List of feature specs that contain this feature.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "models": { + "description": "List of Unity Catalog models that were trained on this feature.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "online_features": { + "description": "List of online features that use this feature as source.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.FeatureLineageFeatureSpec": { + "fields": { + "name": { + "description": "The full name of the feature spec in Unity Catalog.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.FeatureLineageModel": { + "fields": { + "name": { + "description": "The full name of the model in Unity Catalog.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "version": { + "description": "The version of the model.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.FeatureLineageOnlineFeature": { + "fields": { + "feature_name": { + "description": "The name of the online feature (column name).", + "launch_stage": "PRIVATE_PREVIEW" + }, + "table_name": { + "description": "The full name of the online table in Unity Catalog.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.FeatureList": { + "description": "Feature list wrap all the features for a model version", + "fields": { + "features": { + "launch_stage": "GA" + } + } + }, + "ml.FeatureReference": { + "description": "A reference to one registered upstream Feature. A message rather than a bare name so an\nupstream can later be pinned more precisely (e.g. by version) without a breaking type change.", + "fields": { + "feature": { + "description": "The three-part full name of the upstream Feature.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.FeatureTag": { + "description": "Represents a tag on a feature in a feature table.", + "fields": { + "key": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "value": { + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.FeatureViewSource": { + "description": "A data source composed from registered upstream Features.", + "fields": { + "feature_references": { + "description": "The upstream Features this source reads. Must include at least one feature.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.FieldDefinition": { + "description": "A single field definition within a FlatSchema, specifying the field name and its scalar data type.\nDoes not support nested or complex types (arrays, maps, structs).", + "fields": { + "data_type": { + "description": "The scalar data type of the field.", + "ref": "ml.ScalarDataType", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the field.", + "launch_stage": "GA" + } + } + }, + "ml.FileInfo": { + "description": "Metadata of a single artifact file or directory.", + "fields": { + "file_size": { + "description": "The size in bytes of the file. Unset for directories.", + "launch_stage": "GA" + }, + "is_dir": { + "description": "Whether the path is a directory.", + "launch_stage": "GA" + }, + "path": { + "description": "The path relative to the root artifact directory run.", + "launch_stage": "GA" + } + } + }, + "ml.FinalizeLoggedModelRequest": { + "fields": { + "status": { + "description": "Whether or not the model is ready for use. ``\"LOGGED_MODEL_UPLOAD_FAILED\"`` indicates that something went wrong\nwhen logging the model weights / agent code.", + "ref": "ml.LoggedModelStatus", + "launch_stage": "GA" + } + } + }, + "ml.FinalizeLoggedModelResponse": { + "fields": { + "model": { + "description": "The updated logged model.", + "ref": "ml.LoggedModel", + "launch_stage": "GA" + } + } + }, + "ml.FirstDistinctFunction": { + "description": "Returns the first N distinct values, ordered by the feature's timeseries column.", + "fields": { + "input": { + "description": "The input column from which the first N distinct values are returned.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "n": { + "description": "The number of distinct values to return.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.FirstFunction": { + "description": "Returns the first value.", + "fields": { + "input": { + "description": "The input column from which the first value is returned.", + "launch_stage": "GA" + } + } + }, + "ml.FirstNFunction": { + "description": "Returns the first N values, ordered by the feature's timeseries column.", + "fields": { + "input": { + "description": "The input column from which the first N values are returned.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "n": { + "description": "The number of values to return.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.FlatSchema": { + "description": "A flat (non-nested) schema for request-time fields, defined as an ordered list of field definitions.\nThis schema only supports scalar types.", + "fields": { + "fields": { + "description": "The list of fields in this schema.", + "launch_stage": "GA" + } + } + }, + "ml.ForecastingExperiment": { + "description": "Represents a forecasting experiment with its unique identifier, URL, and state.", + "fields": { + "experiment_id": { + "description": "The unique ID for the forecasting experiment.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "experiment_page_url": { + "description": "The URL to the forecasting experiment page.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "state": { + "description": "The current state of the forecasting experiment.", + "ref": "ml.ForecastingExperimentState", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.ForecastingExperimentState": { + "enum": [ + "PENDING", + "RUNNING", + "SUCCEEDED", + "FAILED", + "CANCELLED" + ], + "enum_launch_stages": { + "CANCELLED": "PRIVATE_PREVIEW", + "FAILED": "PRIVATE_PREVIEW", + "PENDING": "PRIVATE_PREVIEW", + "RUNNING": "PRIVATE_PREVIEW", + "SUCCEEDED": "PRIVATE_PREVIEW" + } + }, + "ml.Function": { + "fields": { + "aggregation_function": { + "description": "An aggregation function applied over a time window.", + "ref": "ml.AggregationFunction", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "column_selection": { + "description": "Selects the latest value of a single column in a data source", + "ref": "ml.ColumnSelection", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "custom_udf": { + "description": "Applies a registered Unity Catalog function row-wise to source columns.", + "ref": "ml.CustomUdf", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "extra_parameters": { + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "function_type": { + "ref": "ml.FunctionFunctionType", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.FunctionExtraParameter": { + "fields": { + "key": { + "description": "The name of the parameter.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "value": { + "description": "The value of the parameter.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.FunctionFunctionType": { + "enum": [ + "FUNCTION_TYPE_UNSPECIFIED", + "AVG", + "COUNT", + "SUM", + "MIN", + "MAX", + "FIRST", + "LAST", + "APPROX_COUNT_DISTINCT", + "APPROX_PERCENTILE", + "STDDEV_POP", + "STDDEV_SAMP", + "VAR_POP", + "VAR_SAMP" + ], + "enum_launch_stages": { + "APPROX_COUNT_DISTINCT": "PRIVATE_PREVIEW", + "APPROX_PERCENTILE": "PRIVATE_PREVIEW", + "AVG": "PRIVATE_PREVIEW", + "COUNT": "PRIVATE_PREVIEW", + "FIRST": "PRIVATE_PREVIEW", + "FUNCTION_TYPE_UNSPECIFIED": "PRIVATE_PREVIEW", + "LAST": "PRIVATE_PREVIEW", + "MAX": "PRIVATE_PREVIEW", + "MIN": "PRIVATE_PREVIEW", + "STDDEV_POP": "PRIVATE_PREVIEW", + "STDDEV_SAMP": "PRIVATE_PREVIEW", + "SUM": "PRIVATE_PREVIEW", + "VAR_POP": "PRIVATE_PREVIEW", + "VAR_SAMP": "PRIVATE_PREVIEW" + } + }, + "ml.GetByNameRequest": { + "fields": { + "experiment_name": { + "description": "Name of the associated experiment.", + "launch_stage": "GA" + } + } + }, + "ml.GetExperimentByNameResponse": { + "fields": { + "experiment": { + "description": "Experiment details.", + "ref": "ml.Experiment", + "launch_stage": "GA" + } + } + }, + "ml.GetExperimentPermissionLevelsRequest": {}, + "ml.GetExperimentPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "GA" + } + } + }, + "ml.GetExperimentPermissionsRequest": {}, + "ml.GetExperimentRequest": { + "fields": { + "experiment_id": { + "description": "ID of the associated experiment.", + "launch_stage": "GA" + } + } + }, + "ml.GetExperimentResponse": { + "fields": { + "experiment": { + "description": "Experiment details.", + "ref": "ml.Experiment", + "launch_stage": "GA" + } + } + }, + "ml.GetFeatureLineageRequest": {}, + "ml.GetFeatureRequest": {}, + "ml.GetFeatureTagRequest": {}, + "ml.GetForecastingExperimentRequest": {}, + "ml.GetHistoryRequest": { + "fields": { + "max_results": { + "description": "Maximum number of Metric records to return per paginated request. Default is set to 25,000. If set higher than\n25,000, a request Exception will be raised.", + "launch_stage": "GA" + }, + "metric_key": { + "description": "Name of the metric.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Token indicating the page of metric histories to fetch.", + "launch_stage": "GA" + }, + "run_id": { + "description": "ID of the run from which to fetch metric values. Must be provided.", + "launch_stage": "GA" + }, + "run_uuid": { + "description": "[Deprecated, use `run_id` instead] ID of the run from which to fetch metric values. This field\nwill be removed in a future MLflow version.", + "deprecated": true, + "launch_stage": "GA" + } + } + }, + "ml.GetIssueRequest": {}, + "ml.GetKafkaConfigRequest": {}, + "ml.GetLatestVersionsRequest": { + "fields": { + "name": { + "description": "Registered model unique name identifier.", + "launch_stage": "GA" + }, + "stages": { + "description": "List of stages.", + "launch_stage": "GA" + } + } + }, + "ml.GetLatestVersionsResponse": { + "fields": { + "model_versions": { + "description": "Latest version models for each requests stage. Only return models with current `READY` status.\nIf no `stages` provided, returns the latest version for each stage, including `\"None\"`.", + "launch_stage": "GA" + } + } + }, + "ml.GetLoggedModelRequest": {}, + "ml.GetLoggedModelResponse": { + "fields": { + "model": { + "description": "The retrieved logged model.", + "ref": "ml.LoggedModel", + "launch_stage": "GA" + } + } + }, + "ml.GetMaterializedFeatureRequest": {}, + "ml.GetMetricHistoryResponse": { + "fields": { + "metrics": { + "description": "All logged values for this metric if `max_results` is not specified in the request or if the total count of\nmetrics returned is less than the service level pagination threshold. Otherwise, this is one page of results.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "A token that can be used to issue a query for the next page of metric history values. A missing token indicates\nthat no additional metrics are available to fetch.", + "launch_stage": "GA" + } + } + }, + "ml.GetModelRequest": { + "fields": { + "name": { + "description": "Registered model unique name identifier.", + "launch_stage": "GA" + } + } + }, + "ml.GetModelResponse": { + "fields": { + "registered_model_databricks": { + "ref": "ml.ModelDatabricks", + "launch_stage": "GA" + } + } + }, + "ml.GetModelVersionDownloadUriRequest": { + "fields": { + "name": { + "description": "Name of the registered model", + "launch_stage": "GA" + }, + "version": { + "description": "Model version number", + "launch_stage": "GA" + } + } + }, + "ml.GetModelVersionDownloadUriResponse": { + "fields": { + "artifact_uri": { + "description": "URI corresponding to where artifacts for this model version are stored.", + "launch_stage": "GA" + } + } + }, + "ml.GetModelVersionRequest": { + "fields": { + "name": { + "description": "Name of the registered model", + "launch_stage": "GA" + }, + "version": { + "description": "Model version number", + "launch_stage": "GA" + } + } + }, + "ml.GetModelVersionResponse": { + "fields": { + "model_version": { + "ref": "ml.ModelVersion", + "launch_stage": "GA" + } + } + }, + "ml.GetOnlineStoreRequest": {}, + "ml.GetOperationRequest": {}, + "ml.GetRegisteredModelPermissionLevelsRequest": {}, + "ml.GetRegisteredModelPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "GA" + } + } + }, + "ml.GetRegisteredModelPermissionsRequest": {}, + "ml.GetRunRequest": { + "fields": { + "run_id": { + "description": "ID of the run to fetch. Must be provided.", + "launch_stage": "GA" + }, + "run_uuid": { + "description": "[Deprecated, use `run_id` instead] ID of the run to fetch. This field will\nbe removed in a future MLflow version.", + "deprecated": true, + "launch_stage": "GA" + } + } + }, + "ml.GetRunResponse": { + "fields": { + "run": { + "description": "Run metadata (name, start time, etc) and data (metrics, params, and tags).", + "ref": "ml.Run", + "launch_stage": "GA" + } + } + }, + "ml.GetStreamRequest": {}, + "ml.HttpUrlSpec": { + "fields": { + "authorization": { + "description": "Value of the authorization header that should be sent in the request sent by the wehbook. It should be of the form `\"\u003cauth type\u003e \u003ccredentials\u003e\"`. If set to an empty string, no authorization header will be included in the request.", + "launch_stage": "GA" + }, + "enable_ssl_verification": { + "description": "Enable/disable SSL certificate validation. Default is true. For self-signed certificates, this field must be false AND the destination server must disable certificate validation as well. For security purposes, it is encouraged to perform secret validation with the HMAC-encoded portion of the payload and acknowledge the risk associated with disabling hostname validation whereby it becomes more likely that requests can be maliciously routed to an unintended host.", + "launch_stage": "GA" + }, + "secret": { + "description": "Shared secret required for HMAC encoding payload. The HMAC-encoded payload will be sent in the header as: { \"X-Databricks-Signature\": $encoded_payload }.", + "launch_stage": "GA" + }, + "url": { + "description": "External HTTPS URL called on event trigger (by using a POST request).", + "launch_stage": "GA" + } + } + }, + "ml.HttpUrlSpecWithoutSecret": { + "fields": { + "enable_ssl_verification": { + "description": "Enable/disable SSL certificate validation. Default is true. For self-signed certificates, this field must be false AND the destination server must disable certificate validation as well. For security purposes, it is encouraged to perform secret validation with the HMAC-encoded portion of the payload and acknowledge the risk associated with disabling hostname validation whereby it becomes more likely that requests can be maliciously routed to an unintended host.", + "launch_stage": "GA" + }, + "url": { + "description": "External HTTPS URL called on event trigger (by using a POST request).", + "launch_stage": "GA" + } + } + }, + "ml.IngestionConfig": { + "description": "Configuration for the Databricks-managed ingestion pipeline.\nGroups the ingestion destination (required) and optional backfill source.", + "fields": { + "backfill_job_id": { + "description": "The ID of the Databricks Job that performs the historical backfill of the ingestion Delta table.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "backfill_source": { + "description": "A user-provided source for backfilling data. Historical data is used when creating a training set from streaming features linked to this Stream.\nThe backfill data stored in this location will be copied into the ingestion table for offline querying and training.\nThe schema for this source must match exactly that of the key and payload schemas specified for this Stream,\nexcept that it may omit any columns listed in excluded_columns.", + "ref": "ml.BackfillSource", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "budget_policy_id": { + "description": "The ID of the budget policy used to attribute the serverless compute cost of this stream's\nmanaged ingestion. If not specified, a default budget policy may be applied.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "deduplication_columns": { + "description": "Column paths used to identify duplicate rows during ingestion; only one row per\ndistinct combination of these values is kept. Use dot notation for nested fields\n(e.g. `value.user_id`). Empty list means every column is compared.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "ingestion_destination": { + "description": "Destination for the Databricks-managed Delta table that holds an offline copy of the streaming data for querying and training.\nThis table contains both 1) forward-filled data from the Stream and 2) backfilled data from the BackfillSource (if provided).\nThis table is created and managed by Databricks and is deleted when the Stream is deleted.", + "ref": "ml.IngestionDestination", + "launch_stage": "GA" + }, + "ingestion_job_id": { + "description": "The ID of the Databricks Job that performs the forward-fill ingestion.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "ingestion_pipeline_id": { + "description": "The ID of the SDP pipeline that continuously copies new events from the streaming source\ninto the ingestion Delta table.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "tags": { + "description": "Custom tags to associate with this stream's managed ingestion. They are applied to the\ningestion pipeline and its forward-fill and backfill jobs, and forwarded to the underlying\ncompute as cluster tags, so ingestion cost can be attributed in the billing system tables.\nThese tags apply only to the managed ingestion compute; they are not applied to the Stream\nentity itself, and are distinct from any Unity Catalog tags on the Stream.\nA maximum of 25 tags is supported; keys and values are subject to the same limitations as\ncluster tags.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.IngestionDestination": { + "description": "Destination for the Databricks-managed Delta table that holds an offline copy of the streaming data for querying and training.", + "fields": { + "delta_table_name": { + "description": "The full three-part name (catalog, schema, name) of the Delta table to be created for ingestion.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.InputBinding": { + "description": "Binds a single UC function parameter to a source column.", + "fields": { + "column": { + "description": "Source column whose value is passed for this parameter at execution time.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "parameter": { + "description": "Name of the UC function parameter.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.InputTag": { + "description": "Tag for a dataset input.", + "fields": { + "key": { + "description": "The tag key.", + "launch_stage": "GA" + }, + "value": { + "description": "The tag value.", + "launch_stage": "GA" + } + } + }, + "ml.Issue": { + "description": "A quality or operational problem found in an experiment's traces.", + "fields": { + "categories": { + "description": "At most 10 values of at most 64 UTF-8 bytes each, unique case-insensitively.\nLeading and trailing whitespace is trimmed.", + "launch_stage": "PUBLIC_BETA" + }, + "create_time": { + "description": "When the Issue was created.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "The email of the user whose request created the Issue. source_type tells\nwhether issue detection created it.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "Markdown, at most 32 KiB.", + "launch_stage": "PUBLIC_BETA" + }, + "issue_id": { + "description": "The last segment of `name`. Issue assessments on traces reference the Issue\nby this ID.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_seen_time": { + "description": "The request time of the latest trace the Issue affects. Required, and can't\nbe cleared, unless source_type is MANUAL. A MANUAL Issue without one returns\nits create_time.", + "launch_stage": "PUBLIC_BETA" + }, + "last_updated_by": { + "description": "The email of the user whose request last updated the Issue.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "metadata": { + "description": "Additional details about the Issue, such as how issue detection observed it.\nNot a stable contract: keys and values can change without notice, so clients\nmust tolerate unknown and missing keys. At most 20 entries, with keys of at\nmost 64 UTF-8 bytes.", + "launch_stage": "PUBLIC_BETA" + }, + "name": { + "description": "experiments/{experiment}/issues/{issue}", + "launch_stage": "PUBLIC_BETA" + }, + "severity": { + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "ref": "ml.IssueSeverity", + "launch_stage": "PUBLIC_BETA" + }, + "source_id": { + "description": "Set once at create. For ADHOC_RUN and SCHEDULED_RUN, the ID of the issue\ndetection run in the same experiment that created the Issue. Absent for\nMANUAL.", + "launch_stage": "PUBLIC_BETA" + }, + "source_type": { + "description": "Set once at create. Defaults to MANUAL.", + "ref": "ml.IssueSourceType", + "launch_stage": "PUBLIC_BETA" + }, + "status": { + "description": "Defaults to PENDING on create, and can't be cleared.", + "ref": "ml.IssueStatus", + "launch_stage": "PUBLIC_BETA" + }, + "tags": { + "description": "Caller-owned; the server never writes system values here. At most 10\nentries. Keys match ^[A-Za-z0-9_.:/-]+$ and are at most 128 UTF-8 bytes;\nvalues are at most 256 UTF-8 bytes.", + "launch_stage": "PUBLIC_BETA" + }, + "title": { + "description": "Non-empty, at most 250 UTF-8 bytes.", + "launch_stage": "PUBLIC_BETA" + }, + "update_time": { + "description": "When the Issue was last updated.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "ml.IssueSeverity": { + "description": "How serious an Issue is, ordered LOW \u003c MEDIUM \u003c HIGH.", + "enum": [ + "LOW", + "MEDIUM", + "HIGH" + ], + "enum_launch_stages": { + "HIGH": "PUBLIC_BETA", + "LOW": "PUBLIC_BETA", + "MEDIUM": "PUBLIC_BETA" + } + }, + "ml.IssueSortKey": { + "description": "The field that search results are ordered by. SEVERITY breaks ties by\nlast_seen_time, in the same direction. Results are grouped by status first\n(PENDING, RESOLVED, then REJECTED, whatever the sort_order), and remaining\nties are broken by issue ID, so paging is stable.", + "enum": [ + "SEVERITY", + "LAST_SEEN_TIME", + "UPDATE_TIME", + "CREATE_TIME" + ], + "enum_launch_stages": { + "CREATE_TIME": "PUBLIC_BETA", + "LAST_SEEN_TIME": "PUBLIC_BETA", + "SEVERITY": "PUBLIC_BETA", + "UPDATE_TIME": "PUBLIC_BETA" + } + }, + "ml.IssueSourceType": { + "description": "What created an Issue: ADHOC_RUN, an issue detection run started on demand;\nSCHEDULED_RUN, one started by a schedule; SINGLE_TRACE_ANALYSIS, an analysis\nof a single trace; or MANUAL, a person.", + "enum": [ + "ADHOC_RUN", + "SCHEDULED_RUN", + "SINGLE_TRACE_ANALYSIS", + "MANUAL" + ], + "enum_launch_stages": { + "ADHOC_RUN": "PUBLIC_BETA", + "MANUAL": "PUBLIC_BETA", + "SCHEDULED_RUN": "PUBLIC_BETA", + "SINGLE_TRACE_ANALYSIS": "PUBLIC_BETA" + } + }, + "ml.IssueStatus": { + "description": "The triage status of an Issue: PENDING means open and awaiting triage,\nRESOLVED means judged real and addressed, and REJECTED means judged not to be\nan issue.", + "enum": [ + "PENDING", + "RESOLVED", + "REJECTED" + ], + "enum_launch_stages": { + "PENDING": "PUBLIC_BETA", + "REJECTED": "PUBLIC_BETA", + "RESOLVED": "PUBLIC_BETA" + } + }, + "ml.IssueTagFilter": { + "description": "One predicate over Issue.tags.", + "fields": { + "key": { + "description": "Matched exactly.", + "launch_stage": "PUBLIC_BETA" + }, + "values": { + "description": "Matched exactly, and ORed together. Empty matches any Issue carrying the key.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "ml.IssueView": { + "description": "Which fields each search result includes: BASIC has every field except\n`description`, and may omit large `metadata` entries; FULL has every field.", + "enum": [ + "BASIC", + "FULL" + ], + "enum_launch_stages": { + "BASIC": "PUBLIC_BETA", + "FULL": "PUBLIC_BETA" + } + }, + "ml.JobContext": { + "fields": { + "job_id": { + "description": "The job ID where this API invoked.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "job_run_id": { + "description": "The job run ID where this API was invoked.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.JobSpec": { + "fields": { + "access_token": { + "description": "The personal access token used to authorize webhook's job runs.", + "launch_stage": "GA" + }, + "job_id": { + "description": "ID of the job that the webhook runs.", + "launch_stage": "GA" + }, + "workspace_url": { + "description": "URL of the workspace containing the job that this webhook runs. If not specified, the job’s workspace URL is assumed to be the same as the workspace where the webhook is created.", + "launch_stage": "GA" + } + } + }, + "ml.JobSpecWithoutSecret": { + "fields": { + "job_id": { + "description": "ID of the job that the webhook runs.", + "launch_stage": "GA" + }, + "workspace_url": { + "description": "URL of the workspace containing the job that this webhook runs. If not specified, the job’s workspace URL is assumed to be the same as the workspace where the webhook is created.", + "launch_stage": "GA" + } + } + }, + "ml.KafkaConfig": { + "fields": { + "auth_config": { + "description": "Authentication configuration for connection to topics.", + "ref": "ml.AuthConfig", + "launch_stage": "PRIVATE_PREVIEW" + }, + "backfill_source": { + "description": "A user-provided and managed source for backfilling data. Historical data is used when creating a training set from streaming features linked to this Kafka config.\nIn the future, a separate table will be maintained by Databricks for forward filling data.\nThe schema for this source must match exactly that of the key and value schemas specified for this Kafka config.", + "ref": "ml.BackfillSource", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "bootstrap_servers": { + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "extra_options": { + "description": "Catch-all for miscellaneous options. Keys should be source options or Kafka consumer options (kafka.*)", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "ingestion_config": { + "description": "Configuration for ingesting Kafka data into a Databricks-managed\nDelta table.", + "ref": "ml.IngestionConfig", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "key_schema": { + "description": "Schema configuration for extracting message keys from topics. At least one of key_schema and value_schema must be provided.", + "ref": "ml.SchemaConfig", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "subscription_mode": { + "description": "Options to configure which Kafka topics to pull data from.", + "ref": "ml.SubscriptionMode", + "launch_stage": "PRIVATE_PREVIEW" + }, + "value_schema": { + "description": "Schema configuration for extracting message values from topics. At least one of key_schema and value_schema must be provided.", + "ref": "ml.SchemaConfig", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.KafkaSource": { + "fields": { + "entity_column_identifiers": { + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "filter_condition": { + "description": "The filter condition applied to the source data before aggregation.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Name of the Kafka source, used to identify it. This is used to look up the corresponding KafkaConfig object. Can be distinct from topic name.", + "launch_stage": "GA" + }, + "timeseries_column_identifier": { + "ref": "ml.ColumnIdentifier", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.KafkaStreamConfig": { + "description": "Kafka-specific configuration for a Stream.", + "fields": { + "extra_options": { + "description": "Optional Kafka source or consumer options, validated against a server-side\nallowlist at request time. Allowed keys:\n- `maxOffsetsPerTrigger`\n- `startingOffsets`\n- `includeHeaders`\n- `kafka.request.timeout.ms`\n- `kafka.session.timeout.ms`\n- `kafka.max.partition.fetch.bytes`\nThe following keys are ingestion-only and are stripped before being forwarded to the materialization pipeline:\n- `maxOffsetsPerTrigger`\n- `startingOffsets`\nAuth and connection details belong on the parent Stream's `connection_config`, not here.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "subscription_mode": { + "description": "Options to configure which Kafka topics to pull data from.", + "ref": "ml.KafkaSubscriptionMode", + "launch_stage": "GA" + } + } + }, + "ml.KafkaSubscriptionMode": { + "description": "Subscription mode for Kafka topic selection, matching standard Spark Structured Streaming options.", + "fields": { + "assign": { + "description": "A JSON string that contains the specific topic-partitions to consume from.\nFor example, for '{\"topicA\":[0,1],\"topicB\":[2,4]}', topicA's 0'th and 1st partitions will be consumed from.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "subscribe": { + "description": "A comma-separated list of Kafka topics to read from. For example, 'topicA,topicB,topicC'.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "subscribe_pattern": { + "description": "A regular expression matching topics to subscribe to. For example, 'topic.*' will subscribe to all topics starting with 'topic'.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.KinesisStreamConfig": { + "description": "Kinesis-specific configuration for a Stream. For the underlying connector and its source\noptions, see the Databricks documentation on connecting to Amazon Kinesis\n(https://docs.databricks.com/aws/en/connect/streaming/kinesis).", + "fields": { + "extra_options": { + "description": "Optional Kinesis source options, validated against a server-side allowlist at request time.\nAllowed keys:\n- `consumerMode`\n- `consumerNamePrefix`\n- `maxFetchRate`\n- `minFetchPeriod`\n- `maxFetchDuration`\n- `maxRecordsPerFetch`\n- `shardsPerTask`\n- `fetchBufferSize`\n- `shardFetchInterval`\n`consumerMode` must be `efo` or `polling` (case-insensitive).\n`maxRecordsPerFetch` applies only during ingestion and does not affect the materialization pipeline.\nAuth and connection details belong on the parent Stream's `connection_config`, not here.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "stream_arns": { + "description": "Kinesis stream ARNs to read from.", + "ref": "ml.StreamArnList", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "stream_names": { + "description": "Kinesis stream names to read from.", + "ref": "ml.StreamNameList", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.LastDistinctFunction": { + "description": "Returns the last N distinct values, ordered by the feature's timeseries column.", + "fields": { + "input": { + "description": "The input column from which the last N distinct values are returned.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "n": { + "description": "The number of distinct values to return.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.LastFunction": { + "description": "Returns the last value.", + "fields": { + "input": { + "description": "The input column from which the last value is returned.", + "launch_stage": "GA" + } + } + }, + "ml.LastNFunction": { + "description": "Returns the last N values, ordered by the feature's timeseries column.", + "fields": { + "input": { + "description": "The input column from which the last N values are returned.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "n": { + "description": "The number of values to return.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.LineageContext": { + "description": "Lineage context information for tracking where an API was invoked. This will allow us to track lineage, which currently uses caller entity information for use across the Lineage Client and Observability in Lumberjack.", + "fields": { + "job_context": { + "description": "Job context information including job ID and run ID.", + "ref": "ml.JobContext", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "notebook_id": { + "description": "The notebook ID where this API was invoked.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.LinkedFeature": { + "description": "Feature for model version.", + "fields": { + "feature_name": { + "description": "Feature name", + "launch_stage": "GA" + }, + "feature_table_id": { + "description": "Feature table id", + "launch_stage": "GA" + }, + "feature_table_name": { + "description": "Feature table name", + "launch_stage": "GA" + } + } + }, + "ml.ListArtifactsRequest": { + "fields": { + "page_token": { + "description": "The token indicating the page of artifact results to fetch. `page_token` is not supported when listing artifacts in UC\nVolumes. A maximum of 1000 artifacts will be retrieved for UC Volumes. Please call\n`/api/2.0/fs/directories{directory_path}` for listing artifacts in UC Volumes, which supports pagination. See [List\ndirectory contents | Files API](/api/workspace/files/listdirectorycontents).", + "launch_stage": "GA" + }, + "path": { + "description": "Filter artifacts matching this path (a relative path from the root artifact directory).", + "launch_stage": "GA" + }, + "run_id": { + "description": "ID of the run whose artifacts to list. Must be provided.", + "launch_stage": "GA" + }, + "run_uuid": { + "description": "[Deprecated, use `run_id` instead] ID of the run whose artifacts to list. This field will\nbe removed in a future MLflow version.", + "deprecated": true, + "launch_stage": "GA" + } + } + }, + "ml.ListArtifactsResponse": { + "fields": { + "files": { + "description": "The file location and metadata for artifacts.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "The token that can be used to retrieve the next page of artifact results.", + "launch_stage": "GA" + }, + "root_uri": { + "description": "The root artifact directory for the run.", + "launch_stage": "GA" + } + } + }, + "ml.ListExperimentsRequest": { + "fields": { + "max_results": { + "description": "Maximum number of experiments desired.\nIf `max_results` is unspecified, return all experiments.\nIf `max_results` is too large, it'll be automatically capped at 1000.\nCallers of this endpoint are encouraged to pass max_results explicitly and leverage\npage_token to iterate through experiments.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Token indicating the page of experiments to fetch", + "launch_stage": "GA" + }, + "view_type": { + "description": "Qualifier for type of experiments to be returned.\nIf unspecified, return only active experiments.", + "ref": "ml.ViewType", + "launch_stage": "GA" + } + } + }, + "ml.ListExperimentsResponse": { + "fields": { + "experiments": { + "description": "Paginated Experiments beginning with the first item on the requested page.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Token that can be used to retrieve the next page of experiments.\nEmpty token means no more experiment is available for retrieval.", + "launch_stage": "GA" + } + } + }, + "ml.ListFeatureTagsRequest": { + "fields": { + "page_size": { + "description": "The maximum number of results to return.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token to go to the next page based on a previous query.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.ListFeatureTagsResponse": { + "description": "Response message for ListFeatureTag.", + "fields": { + "feature_tags": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "next_page_token": { + "description": "Pagination token to request the next page of results for this query.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.ListFeaturesRequest": { + "fields": { + "catalog_name": { + "description": "Name of parent catalog for features of interest.", + "launch_stage": "GA" + }, + "page_size": { + "description": "The maximum number of results to return.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token to go to the next page based on a previous query.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "schema_name": { + "description": "Name of parent schema relative to its parent catalog.", + "launch_stage": "GA" + } + } + }, + "ml.ListFeaturesResponse": { + "fields": { + "features": { + "description": "List of features.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Pagination token to request the next page of results for this query.", + "launch_stage": "GA" + } + } + }, + "ml.ListKafkaConfigsRequest": { + "fields": { + "page_size": { + "description": "The maximum number of results to return.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token to go to the next page based on a previous query.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.ListKafkaConfigsResponse": { + "fields": { + "kafka_configs": { + "description": "List of Kafka configs. Schemas are not included in the response.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "next_page_token": { + "description": "Pagination token to request the next page of results for this query.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.ListMaterializedFeaturesRequest": { + "fields": { + "feature_name": { + "description": "Filter by feature name. If specified, only materialized features materialized from this feature will be returned.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_size": { + "description": "The maximum number of results to return. Defaults to 100 if not specified. Cannot be greater than 1000.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token to go to the next page based on a previous query.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.ListMaterializedFeaturesResponse": { + "fields": { + "materialized_features": { + "description": "List of materialized features.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Pagination token to request the next page of results for this query.", + "launch_stage": "GA" + } + } + }, + "ml.ListModelsRequest": { + "fields": { + "max_results": { + "description": "Maximum number of registered models desired. Max threshold is 1000.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Pagination token to go to the next page based on a previous query.", + "launch_stage": "GA" + } + } + }, + "ml.ListModelsResponse": { + "fields": { + "next_page_token": { + "description": "Pagination token to request next page of models for the same query.", + "launch_stage": "GA" + }, + "registered_models": { + "launch_stage": "GA" + } + } + }, + "ml.ListOnlineStoresRequest": { + "fields": { + "page_size": { + "description": "The maximum number of results to return. Defaults to 100 if not specified.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token to go to the next page based on a previous query.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.ListOnlineStoresResponse": { + "fields": { + "next_page_token": { + "description": "Pagination token to request the next page of results for this query.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "online_stores": { + "description": "List of online stores.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.ListRegistryWebhooks": { + "fields": { + "next_page_token": { + "description": "Token that can be used to retrieve the next page of artifact results", + "launch_stage": "GA" + }, + "webhooks": { + "description": "Array of registry webhooks.", + "launch_stage": "GA" + } + } + }, + "ml.ListStreamsRequest": { + "fields": { + "page_size": { + "description": "The maximum number of results to return.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token to go to the next page based on a previous query.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "parent": { + "description": "Two-part name (catalog.schema) of the parent under which to list Streams.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.ListStreamsResponse": { + "description": "Response to a ListStreamsRequest.\n\nNOTE: Results are post-filtered by access permission on each stream's ingestion\ntable. This means:\n- Returned results may be fewer than page_size (including zero)\n- Page token points to next unfiltered batch, not next filtered batch, and may\npoint to an item that will be filtered out\nCallers should paginate until next_page_token is empty to retrieve all\naccessible streams.", + "fields": { + "next_page_token": { + "description": "Pagination token to request the next page of results for this query.", + "launch_stage": "GA" + }, + "streams": { + "description": "List of Streams.", + "launch_stage": "GA" + } + } + }, + "ml.ListTransitionRequestsRequest": { + "fields": { + "name": { + "description": "Name of the registered model.", + "launch_stage": "GA" + }, + "version": { + "description": "Version of the model.", + "launch_stage": "GA" + } + } + }, + "ml.ListTransitionRequestsResponse": { + "fields": { + "requests": { + "description": "Array of open transition requests.", + "launch_stage": "GA" + } + } + }, + "ml.ListWebhooksRequest": { + "fields": { + "events": { + "description": "Events that trigger the webhook.\n* `MODEL_VERSION_CREATED`: A new model version was created for the associated model.\n\n* `MODEL_VERSION_TRANSITIONED_STAGE`: A model version’s stage was changed.\n\n* `TRANSITION_REQUEST_CREATED`: A user requested a model version’s stage be transitioned.\n\n* `COMMENT_CREATED`: A user wrote a comment on a registered model.\n\n* `REGISTERED_MODEL_CREATED`: A new registered model was created. This event type can only be specified for a registry-wide webhook, which can be created by not specifying a model name in the create request.\n\n* `MODEL_VERSION_TAG_SET`: A user set a tag on the model version.\n\n* `MODEL_VERSION_TRANSITIONED_TO_STAGING`: A model version was transitioned to staging.\n\n* `MODEL_VERSION_TRANSITIONED_TO_PRODUCTION`: A model version was transitioned to production.\n\n* `MODEL_VERSION_TRANSITIONED_TO_ARCHIVED`: A model version was archived.\n\n* `TRANSITION_REQUEST_TO_STAGING_CREATED`: A user requested a model version be transitioned to staging.\n\n* `TRANSITION_REQUEST_TO_PRODUCTION_CREATED`: A user requested a model version be transitioned to production.\n\n* `TRANSITION_REQUEST_TO_ARCHIVED_CREATED`: A user requested a model version be archived.\n\nIf `events` is specified, any webhook with one or more of the specified trigger events is included in the output.\nIf `events` is not specified, webhooks of all event types are included in the output.", + "launch_stage": "GA" + }, + "max_results": { + "launch_stage": "GA" + }, + "model_name": { + "description": "Registered model name\nIf not specified, all webhooks associated with the specified events are listed, regardless of their associated model.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Token indicating the page of artifact results to fetch", + "launch_stage": "GA" + } + } + }, + "ml.LogBatch": { + "fields": { + "metrics": { + "description": "Metrics to log. A single request can contain up to 1000 metrics, and up to 1000\nmetrics, params, and tags in total.", + "launch_stage": "GA" + }, + "params": { + "description": "Params to log. A single request can contain up to 100 params, and up to 1000\nmetrics, params, and tags in total.", + "launch_stage": "GA" + }, + "run_id": { + "description": "ID of the run to log under", + "launch_stage": "GA" + }, + "tags": { + "description": "Tags to log. A single request can contain up to 100 tags, and up to 1000\nmetrics, params, and tags in total.", + "launch_stage": "GA" + } + } + }, + "ml.LogBatchResponse": {}, + "ml.LogInputs": { + "fields": { + "datasets": { + "description": "Dataset inputs", + "launch_stage": "GA" + }, + "models": { + "description": "Model inputs", + "launch_stage": "GA" + }, + "run_id": { + "description": "ID of the run to log under", + "launch_stage": "GA" + } + } + }, + "ml.LogInputsResponse": {}, + "ml.LogLoggedModelParamsRequest": { + "fields": { + "params": { + "description": "Parameters to attach to the model.", + "launch_stage": "GA" + } + } + }, + "ml.LogLoggedModelParamsRequestResponse": {}, + "ml.LogMetric": { + "fields": { + "dataset_digest": { + "description": "Dataset digest of the dataset associated with the metric,\ne.g. an md5 hash of the dataset that uniquely identifies it\nwithin datasets of the same name.", + "launch_stage": "GA" + }, + "dataset_name": { + "description": "The name of the dataset associated with the metric.\nE.g. “my.uc.table@2” “nyc-taxi-dataset”, “fantastic-elk-3”", + "launch_stage": "GA" + }, + "key": { + "description": "Name of the metric.", + "launch_stage": "GA" + }, + "model_id": { + "description": "ID of the logged model associated with the metric, if applicable", + "launch_stage": "GA" + }, + "run_id": { + "description": "ID of the run under which to log the metric. Must be provided.", + "launch_stage": "GA" + }, + "run_uuid": { + "description": "[Deprecated, use `run_id` instead] ID of the run under which to log the metric. This field will\nbe removed in a future MLflow version.", + "deprecated": true, + "launch_stage": "GA" + }, + "step": { + "description": "Step at which to log the metric", + "launch_stage": "GA" + }, + "timestamp": { + "description": "Unix timestamp in milliseconds at the time metric was logged.", + "launch_stage": "GA" + }, + "value": { + "description": "Double value of the metric being logged.", + "launch_stage": "GA" + } + } + }, + "ml.LogMetricResponse": {}, + "ml.LogModel": { + "fields": { + "model_json": { + "description": "MLmodel file in json format.", + "launch_stage": "GA" + }, + "run_id": { + "description": "ID of the run to log under", + "launch_stage": "GA" + } + } + }, + "ml.LogModelResponse": {}, + "ml.LogOutputsRequest": { + "fields": { + "models": { + "description": "The model outputs from the Run.", + "launch_stage": "GA" + }, + "run_id": { + "description": "The ID of the Run from which to log outputs.", + "launch_stage": "GA" + } + } + }, + "ml.LogOutputsResponse": {}, + "ml.LogParam": { + "fields": { + "key": { + "description": "Name of the param. Maximum size is 255 bytes.", + "launch_stage": "GA" + }, + "run_id": { + "description": "ID of the run under which to log the param. Must be provided.", + "launch_stage": "GA" + }, + "run_uuid": { + "description": "[Deprecated, use `run_id` instead] ID of the run under which to log the param. This field will\nbe removed in a future MLflow version.", + "deprecated": true, + "launch_stage": "GA" + }, + "value": { + "description": "String value of the param being logged. Maximum size is 500 bytes.", + "launch_stage": "GA" + } + } + }, + "ml.LogParamResponse": {}, + "ml.LoggedModel": { + "description": "A logged model message includes logged model attributes,\ntags, registration info, params, and linked run metrics.", + "fields": { + "data": { + "description": "The params and metrics attached to the logged model.", + "ref": "ml.LoggedModelData", + "launch_stage": "GA" + }, + "info": { + "description": "The logged model attributes such as model ID, status, tags, etc.", + "ref": "ml.LoggedModelInfo", + "launch_stage": "GA" + } + } + }, + "ml.LoggedModelData": { + "description": "A LoggedModelData message includes logged model params and linked metrics.", + "fields": { + "metrics": { + "description": "Performance metrics linked to the model.", + "launch_stage": "GA" + }, + "params": { + "description": "Immutable string key-value pairs of the model.", + "launch_stage": "GA" + } + } + }, + "ml.LoggedModelInfo": { + "description": "A LoggedModelInfo includes logged model attributes,\ntags, and registration info.", + "fields": { + "artifact_uri": { + "description": "The URI of the directory where model artifacts are stored.", + "launch_stage": "GA" + }, + "creation_timestamp_ms": { + "description": "The timestamp when the model was created in milliseconds since the UNIX epoch.", + "launch_stage": "GA" + }, + "creator_id": { + "description": "The ID of the user or principal that created the model.", + "launch_stage": "GA" + }, + "experiment_id": { + "description": "The ID of the experiment that owns the model.", + "launch_stage": "GA" + }, + "last_updated_timestamp_ms": { + "description": "The timestamp when the model was last updated in milliseconds since the UNIX epoch.", + "launch_stage": "GA" + }, + "model_id": { + "description": "The unique identifier for the logged model.", + "launch_stage": "GA" + }, + "model_type": { + "description": "The type of model, such as ``\"Agent\"``, ``\"Classifier\"``, ``\"LLM\"``.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the model.", + "launch_stage": "GA" + }, + "source_run_id": { + "description": "The ID of the run that created the model.", + "launch_stage": "GA" + }, + "status": { + "description": "The status of whether or not the model is ready for use.", + "ref": "ml.LoggedModelStatus", + "launch_stage": "GA" + }, + "status_message": { + "description": "Details on the current model status.", + "launch_stage": "GA" + }, + "tags": { + "description": "Mutable string key-value pairs set on the model.", + "launch_stage": "GA" + } + } + }, + "ml.LoggedModelParameter": { + "description": "Parameter associated with a LoggedModel.", + "fields": { + "key": { + "description": "The key identifying this param.", + "launch_stage": "GA" + }, + "value": { + "description": "The value of this param.", + "launch_stage": "GA" + } + } + }, + "ml.LoggedModelStatus": { + "description": "A LoggedModelStatus enum value represents the status of a logged\nmodel.", + "enum": [ + "LOGGED_MODEL_PENDING", + "LOGGED_MODEL_READY", + "LOGGED_MODEL_UPLOAD_FAILED" + ], + "enum_launch_stages": { + "LOGGED_MODEL_PENDING": "GA", + "LOGGED_MODEL_READY": "GA", + "LOGGED_MODEL_UPLOAD_FAILED": "GA" + } + }, + "ml.LoggedModelTag": { + "description": "Tag for a LoggedModel.", + "fields": { + "key": { + "description": "The tag key.", + "launch_stage": "GA" + }, + "value": { + "description": "The tag value.", + "launch_stage": "GA" + } + } + }, + "ml.MaterializationFailureNotification": { + "description": "Recipients to notify when a materialization run fails.", + "fields": { + "destination_ids": { + "description": "IDs of the notification destinations (for example Slack, Microsoft Teams, PagerDuty, or a\ngeneric webhook) to notify. Not supported for streaming materialized features.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "email_addresses": { + "description": "Email addresses to notify.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "final_attempt_only": { + "description": "If true, notify only when the final attempt of a run fails. If false or unset, notify on\nevery failed attempt, including attempts that will be retried.\n\nBatch materialization does not retry failures that need a fix on your side, such as missing\npermissions or invalid configuration, so the first attempt is the final one. Other batch\nfailures are retried up to twice.\n\nStreaming materialization restarts a failed update indefinitely unless the error cannot be\nretried. With this set, a streaming materialized feature notifies only on errors that cannot\nbe retried, and never on failures that are restarted.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.MaterializationNotifications": { + "description": "Notifications for the jobs and pipelines that materialize a feature, one field per trigger.", + "fields": { + "on_failure": { + "description": "Who to notify when a run fails, and on which attempts.", + "ref": "ml.MaterializationFailureNotification", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "on_success": { + "description": "Who to notify when a run succeeds.", + "ref": "ml.MaterializationSuccessNotification", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.MaterializationSuccessNotification": { + "description": "Recipients to notify when a materialization run succeeds.", + "fields": { + "destination_ids": { + "description": "IDs of the notification destinations (for example Slack, Microsoft Teams, PagerDuty, or a\ngeneric webhook) to notify. Not supported for streaming materialized features.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "email_addresses": { + "description": "Email addresses to notify.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.MaterializedFeature": { + "description": "A materialized feature represents a feature that is continuously computed and stored.", + "fields": { + "budget_policy_id": { + "description": "The ID of the budget policy used to attribute the serverless compute cost of this\nmaterialization. If not specified, a default budget policy may be applied.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "cron_schedule": { + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "cron_schedule_trigger": { + "description": "A cron-based schedule trigger for the materialization pipeline.", + "ref": "ml.CronSchedule", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "feature_name": { + "description": "The full name of the feature in Unity Catalog.", + "launch_stage": "GA" + }, + "is_online": { + "description": "True if this is an online materialized feature. False if it is an offline materialized feature.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "job_id": { + "description": "The ID of the job that materializes the feature. This is present for both batch and streaming features.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_materialization_time": { + "description": "The timestamp when the pipeline last ran and updated the materialized feature values.\nIf the pipeline has not run yet, this field will be null.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "latest_backfill_operation": { + "description": "Name of the latest backfill operation on this materialized feature. Format: operations/{operation_id}.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "materialized_feature_id": { + "description": "Server-assigned unique identifier for the materialized feature.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "notifications": { + "description": "Notification configuration around the materialization job or pipeline lifecycle. They are\napplied to every job and pipeline that materializes this feature. Features which are\nmaterialized in the same pipeline will share the same notification.", + "ref": "ml.MaterializationNotifications", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "offline_store_config": { + "description": "Destination for writing feature values to an offline Delta table. The resulting table is\nreturned as `table_name`.", + "ref": "ml.OfflineStoreConfig", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "online_store_config": { + "description": "Destination for writing feature values to an online Lakebase table. The resulting table is\nreturned as `table_name`.", + "ref": "ml.OnlineStoreConfig", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "pipeline_id": { + "description": "The ID of the pipeline that materializes this feature. This is only present for streaming features.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "pipeline_schedule_state": { + "description": "The schedule state of the materialization pipeline.\nHidden from GraphQL: being deprecated, so not exposed to Catalog Explorer.", + "ref": "ml.MaterializedFeaturePipelineScheduleState", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "streaming_mode": { + "description": "The Structured Streaming trigger mode used for materialization. Real-time mode (RTM) targets\nsub-second latency for operational workloads; micro-batch mode (MBM) favors cost efficiency\nfor ETL and analytics workloads.", + "ref": "ml.StreamingMode", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "table_name": { + "description": "The fully qualified Unity Catalog path to the table containing the materialized feature (Delta table or Lakebase table). Output only.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "table_trigger": { + "description": "A trigger that fires when the upstream source table changes.", + "ref": "ml.TableTrigger", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "tags": { + "description": "Custom tags to associate with this materialization. They are applied to the materialization\njob (for batch features) or pipeline (for streaming features) and forwarded to the underlying\ncompute as cluster tags, so materialization cost can be attributed in the billing system\ntables. These tags apply only to the materialization compute; they are not applied to the\nUnity Catalog Feature resource itself, whose tags are managed separately through the Unity\nCatalog tagging API. A maximum of 25 tags is supported; keys and values are subject to the\nsame limitations as cluster tags.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.MaterializedFeaturePipelineScheduleState": { + "enum": [ + "SNAPSHOT", + "ACTIVE", + "PAUSED" + ], + "enum_launch_stages": { + "ACTIVE": "PRIVATE_PREVIEW", + "PAUSED": "PRIVATE_PREVIEW", + "SNAPSHOT": "PRIVATE_PREVIEW" + } + }, + "ml.MaxFunction": { + "description": "Computes the maximum value.", + "fields": { + "input": { + "description": "The input column from which the maximum is computed.", + "launch_stage": "GA" + } + } + }, + "ml.Metric": { + "description": "Metric associated with a run, represented as a key-value pair.", + "fields": { + "dataset_digest": { + "description": "The dataset digest of the dataset associated with the metric,\ne.g. an md5 hash of the dataset that uniquely identifies it\nwithin datasets of the same name.", + "launch_stage": "GA" + }, + "dataset_name": { + "description": "The name of the dataset associated with the metric.\nE.g. “my.uc.table@2” “nyc-taxi-dataset”, “fantastic-elk-3”", + "launch_stage": "GA" + }, + "key": { + "description": "The key identifying the metric.", + "launch_stage": "GA" + }, + "model_id": { + "description": "The ID of the logged model or registered model version associated with\nthe metric, if applicable.", + "launch_stage": "GA" + }, + "run_id": { + "description": "The ID of the run containing the metric.", + "launch_stage": "GA" + }, + "step": { + "description": "The step at which the metric was logged.", + "launch_stage": "GA" + }, + "timestamp": { + "description": "The timestamp at which the metric was recorded.", + "launch_stage": "GA" + }, + "value": { + "description": "The value of the metric.", + "launch_stage": "GA" + } + } + }, + "ml.MinFunction": { + "description": "Computes the minimum value.", + "fields": { + "input": { + "description": "The input column from which the minimum is computed.", + "launch_stage": "GA" + } + } + }, + "ml.Model": { + "fields": { + "creation_timestamp": { + "description": "Timestamp recorded when this `registered_model` was created.", + "launch_stage": "GA" + }, + "description": { + "description": "Description of this `registered_model`.", + "launch_stage": "GA" + }, + "last_updated_timestamp": { + "description": "Timestamp recorded when metadata for this `registered_model` was last updated.", + "launch_stage": "GA" + }, + "latest_versions": { + "description": "Collection of latest model versions for each stage.\nOnly contains models with current `READY` status.", + "launch_stage": "GA" + }, + "name": { + "description": "Unique name for the model.", + "launch_stage": "GA" + }, + "tags": { + "description": "Tags: Additional metadata key-value pairs for this `registered_model`.", + "launch_stage": "GA" + }, + "user_id": { + "description": "User that created this `registered_model`", + "launch_stage": "GA" + } + } + }, + "ml.ModelDatabricks": { + "fields": { + "creation_timestamp": { + "description": "Creation time of the object, as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "description": { + "description": "User-specified description for the object.", + "launch_stage": "GA" + }, + "id": { + "description": "Unique identifier for the object.", + "launch_stage": "GA" + }, + "last_updated_timestamp": { + "description": "Last update time of the object, as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "latest_versions": { + "description": "Array of model versions, each the latest version for its stage.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the model.", + "launch_stage": "GA" + }, + "permission_level": { + "description": "Permission level granted for the requesting user on this registered model", + "ref": "ml.PermissionLevel", + "launch_stage": "GA" + }, + "tags": { + "description": "Array of tags associated with the model.", + "launch_stage": "GA" + }, + "user_id": { + "description": "The username of the user that created the object.", + "launch_stage": "GA" + } + } + }, + "ml.ModelInput": { + "description": "Represents a LoggedModel or Registered Model Version input to a Run.", + "fields": { + "model_id": { + "description": "The unique identifier of the model.", + "launch_stage": "GA" + } + } + }, + "ml.ModelOutput": { + "description": "Represents a LoggedModel output of a Run.", + "fields": { + "model_id": { + "description": "The unique identifier of the model.", + "launch_stage": "GA" + }, + "step": { + "description": "The step at which the model was produced.", + "launch_stage": "GA" + } + } + }, + "ml.ModelTag": { + "description": "Tag for a registered model", + "fields": { + "key": { + "description": "The tag key.", + "launch_stage": "GA" + }, + "value": { + "description": "The tag value.", + "launch_stage": "GA" + } + } + }, + "ml.ModelVersion": { + "fields": { + "creation_timestamp": { + "description": "Timestamp recorded when this `model_version` was created.", + "launch_stage": "GA" + }, + "current_stage": { + "description": "Current stage for this `model_version`.", + "launch_stage": "GA" + }, + "description": { + "description": "Description of this `model_version`.", + "launch_stage": "GA" + }, + "last_updated_timestamp": { + "description": "Timestamp recorded when metadata for this `model_version` was last updated.", + "launch_stage": "GA" + }, + "name": { + "description": "Unique name of the model", + "launch_stage": "GA" + }, + "run_id": { + "description": "MLflow run ID used when creating `model_version`, if `source` was generated by an\nexperiment run stored in MLflow tracking server.", + "launch_stage": "GA" + }, + "run_link": { + "description": "Run Link: Direct link to the run that generated this version", + "launch_stage": "GA" + }, + "source": { + "description": "URI indicating the location of the source model artifacts, used when creating `model_version`", + "launch_stage": "GA" + }, + "status": { + "description": "Current status of `model_version`", + "ref": "ml.ModelVersionStatus", + "launch_stage": "GA" + }, + "status_message": { + "description": "Details on current `status`, if it is pending or failed.", + "launch_stage": "GA" + }, + "tags": { + "description": "Tags: Additional metadata key-value pairs for this `model_version`.", + "launch_stage": "GA" + }, + "user_id": { + "description": "User that created this `model_version`.", + "launch_stage": "GA" + }, + "version": { + "description": "Model's version number.", + "launch_stage": "GA" + } + } + }, + "ml.ModelVersionDatabricks": { + "fields": { + "creation_timestamp": { + "description": "Creation time of the object, as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "current_stage": { + "launch_stage": "GA" + }, + "description": { + "description": "User-specified description for the object.", + "launch_stage": "GA" + }, + "email_subscription_status": { + "description": "Email Subscription Status: This is the subscription status of the user to the model version\nUsers get subscribed by interacting with the model version.", + "ref": "ml.RegistryEmailSubscriptionType", + "launch_stage": "GA" + }, + "feature_list": { + "description": "Feature lineage of `model_version`.", + "ref": "ml.FeatureList", + "launch_stage": "GA" + }, + "last_updated_timestamp": { + "description": "Time of the object at last update, as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the model.", + "launch_stage": "GA" + }, + "open_requests": { + "description": "Open requests for this `model_versions`.\nGap in sequence number is intentional and is done in order to\nmatch field sequence numbers of `ModelVersion` proto message", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "ml.PermissionLevel", + "launch_stage": "GA" + }, + "run_id": { + "description": "Unique identifier for the MLflow tracking run associated with the source model artifacts.", + "launch_stage": "GA" + }, + "run_link": { + "description": "URL of the run associated with the model artifacts. This field is set at model version creation time only for model versions whose source run is from a tracking server that is different from the registry server.", + "launch_stage": "GA" + }, + "source": { + "description": "URI that indicates the location of the source model artifacts. This is used when creating the model version.", + "launch_stage": "GA" + }, + "status": { + "ref": "ml.Status", + "launch_stage": "GA" + }, + "status_message": { + "description": "Details on the current status, for example why registration failed.", + "launch_stage": "GA" + }, + "tags": { + "description": "Array of tags that are associated with the model version.", + "launch_stage": "GA" + }, + "user_id": { + "description": "The username of the user that created the object.", + "launch_stage": "GA" + }, + "version": { + "description": "Version of the model.", + "launch_stage": "GA" + } + } + }, + "ml.ModelVersionStatus": { + "description": "The status of the model version. Valid values are:\n* `PENDING_REGISTRATION`: Request to register a new model version is pending as server performs background tasks.\n\n* `FAILED_REGISTRATION`: Request to register a new model version has failed.\n\n* `READY`: Model version is ready for use.", + "enum": [ + "PENDING_REGISTRATION", + "FAILED_REGISTRATION", + "READY" + ], + "enum_launch_stages": { + "FAILED_REGISTRATION": "GA", + "PENDING_REGISTRATION": "GA", + "READY": "GA" + }, + "enum_descriptions": { + "FAILED_REGISTRATION": "Request to register a new model version has failed.", + "PENDING_REGISTRATION": "Request to register a new model version is pending as server performs background tasks.", + "READY": "Model version is ready for use." + } + }, + "ml.ModelVersionTag": { + "fields": { + "key": { + "description": "The tag key.", + "launch_stage": "GA" + }, + "value": { + "description": "The tag value.", + "launch_stage": "GA" + } + } + }, + "ml.MtlsConfig": { + "description": "Mutual-TLS (mTLS) authentication configuration. The keystore (client certificate +\nprivate key) and truststore (CAs trusted to verify the broker) live as JKS files on\nUnity Catalog volumes, with their passwords stored in Databricks secret scopes. This\nmatches the SSL setup pattern documented at\nhttps://docs.databricks.com/en/connect/streaming/kafka/authentication#use-ssl-to-connect-databricks-to-kafka.", + "fields": { + "disable_hostname_verification": { + "description": "Set to true only when the broker certificate's SAN intentionally does not match\nthe connection endpoint — for example when reaching the cluster through a\nPrivateLink endpoint whose DNS name is not in the broker certificate. Skipping\nthe hostname check removes a defense against man-in-the-middle attacks; do not\nenable casually. mTLS client authentication is unaffected by this option.\n\nSee the Apache Kafka SSL security guide for background on this check:\nhttps://kafka.apache.org/42/security/encryption-and-authentication-using-ssl/#host-name-verification", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "key_password_ref": { + "description": "Secret-scope reference for the private key password. Often the same value as the\nkeystore password (keytool's default), but provided as a separate field because\nApache Kafka requires it as a distinct option (kafka.ssl.key.password).", + "ref": "ml.SecretScopeReference", + "launch_stage": "GA" + }, + "keystore_location": { + "description": "Unity Catalog volume path to the JKS keystore file containing the client certificate\nand private key. e.g. \"/Volumes/\u003ccatalog\u003e/\u003cschema\u003e/\u003cvolume\u003e/client.jks\". The\nmaterialization compute must have read permission on this volume.", + "launch_stage": "GA" + }, + "keystore_password_ref": { + "description": "Secret-scope reference for the JKS keystore password.", + "ref": "ml.SecretScopeReference", + "launch_stage": "GA" + }, + "truststore_location": { + "description": "Unity Catalog volume path to the JKS truststore file containing the CA certificate(s)\ntrusted to verify the Kafka broker's server certificate.\ne.g. \"/Volumes/\u003ccatalog\u003e/\u003cschema\u003e/\u003cvolume\u003e/truststore.jks\".", + "launch_stage": "GA" + }, + "truststore_password_ref": { + "description": "Secret-scope reference for the JKS truststore password.", + "ref": "ml.SecretScopeReference", + "launch_stage": "GA" + } + } + }, + "ml.OfflineStoreConfig": { + "description": "Configuration for offline store destination.", + "fields": { + "catalog_name": { + "description": "The Unity Catalog catalog name.", + "launch_stage": "GA" + }, + "schema_name": { + "description": "The Unity Catalog schema name.", + "launch_stage": "GA" + }, + "table_name_prefix": { + "description": "Prefix for Unity Catalog table name.\nThe materialized feature will be stored in a table with this prefix and a generated postfix.", + "launch_stage": "GA" + } + } + }, + "ml.OnlineStore": { + "description": "An OnlineStore is a logical database instance that stores and serves features online.", + "fields": { + "capacity": { + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "launch_stage": "PRIVATE_PREVIEW" + }, + "creation_time": { + "description": "The timestamp when the online store was created.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "creator": { + "description": "The email of the creator of the online store.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "The name of the online store. This is the unique identifier for the online store.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "read_replica_count": { + "description": "The number of read replicas for the online store. Defaults to 0.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "state": { + "description": "The current state of the online store.", + "ref": "ml.OnlineStoreState", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "usage_policy_id": { + "description": "The usage policy applied to the online store to track billing.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.OnlineStoreConfig": { + "description": "Configuration for online store destination.", + "fields": { + "catalog_name": { + "description": "The Unity Catalog catalog name. This name is also used as the Lakebase logical database name.\nQuoting is handled by the backend where needed, do not pre-quote it.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "online_store_name": { + "description": "The name of the target online store.", + "launch_stage": "GA" + }, + "schema_name": { + "description": "The Unity Catalog schema name. This name is also used as the Lakebase schema name under the database.\nQuoting is handled by the backend where needed, do not pre-quote it.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "table_name_prefix": { + "description": "Prefix for Unity Catalog table name.\nThe materialized feature will be stored in a Lakebase table with this prefix and a generated postfix.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + } + } + }, + "ml.OnlineStoreState": { + "enum": [ + "STARTING", + "AVAILABLE", + "DELETING", + "STOPPED", + "UPDATING", + "FAILING_OVER" + ], + "enum_launch_stages": { + "AVAILABLE": "PRIVATE_PREVIEW", + "DELETING": "PRIVATE_PREVIEW", + "FAILING_OVER": "PRIVATE_PREVIEW", + "STARTING": "PRIVATE_PREVIEW", + "STOPPED": "PRIVATE_PREVIEW", + "UPDATING": "PRIVATE_PREVIEW" + } + }, + "ml.Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "fields": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "error": { + "description": "The error result of the operation in case of failure or cancellation.", + "ref": "ml.DatabricksServiceExceptionWithDetailsProto", + "launch_stage": "PRIVATE_PREVIEW" + }, + "metadata": { + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should be a resource name ending with `operations/{unique_id}`.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "response": { + "description": "The normal, successful response of the operation.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.Param": { + "description": "Param associated with a run.", + "fields": { + "key": { + "description": "Key identifying this param.", + "launch_stage": "GA" + }, + "value": { + "description": "Value associated with this param.", + "launch_stage": "GA" + } + } + }, + "ml.PermissionLevel": { + "description": "Permission level of the requesting user on the object. For what is allowed at each level, see\n[MLflow Model permissions](https://docs.databricks.com/aws/en/machine-learning/manage-model-lifecycle/workspace-model-registry#permissions).", + "enum": [ + "CAN_MANAGE", + "CAN_EDIT", + "CAN_READ", + "CAN_MANAGE_STAGING_VERSIONS", + "CAN_MANAGE_PRODUCTION_VERSIONS", + "CAN_CREATE_REGISTERED_MODEL" + ], + "enum_launch_stages": { + "CAN_CREATE_REGISTERED_MODEL": "GA", + "CAN_EDIT": "GA", + "CAN_MANAGE": "GA", + "CAN_MANAGE_PRODUCTION_VERSIONS": "GA", + "CAN_MANAGE_STAGING_VERSIONS": "GA", + "CAN_READ": "GA" + } + }, + "ml.ProtoSchemaSpec": { + "description": "A Protocol Buffer schema paired with the name of the message within it that describes the\nKafka payload. A .proto file may declare multiple messages; message_name disambiguates.", + "fields": { + "message_name": { + "description": "The fully-qualified name of the message within schema_text that describes the Kafka payload\n(e.g. \"Event\" or \"com.example.Event\" if schema_text declares a package). Identifies which\nmessage is used to decode each Kafka record — a .proto file may declare multiple messages\nbut only one represents the payload. Must not be empty.", + "launch_stage": "GA" + }, + "schema_text": { + "description": "The raw .proto file text (proto2 and proto3 syntax supported, see\nhttps://protobuf.dev/programming-guides/proto3/ and https://protobuf.dev/programming-guides/proto2/).", + "launch_stage": "GA" + } + } + }, + "ml.PublishSpec": { + "fields": { + "budget_policy_id": { + "description": "Budget policy id used to attribute the serverless compute cost of the synced online-table sync\npipeline. Applied only when the sync pipeline is first created (the initial publish of a new\nonline table); republishing to an existing online table does not update it.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "full_feature_name": { + "description": "Full Unity Catalog name of one of the features materialized in the source table, used to\nderive the synced online table's entity and timeseries columns. Required for view sources\nwithout a UC PrimaryKeyConstraint; ignored when the source already has one.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "online_store": { + "description": "The name of the target online store.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "online_table_name": { + "description": "The full three-part (catalog, schema, table) name of the online table.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "publish_mode": { + "description": "The publish mode of the pipeline that syncs the online table with the source table.", + "ref": "ml.PublishSpecPublishMode", + "launch_stage": "PRIVATE_PREVIEW" + }, + "tags": { + "description": "Custom tags to apply to the synced online-table sync pipeline created for this publish. They\nare forwarded to the pipeline's compute as cluster tags so its cost can be attributed in the\nbilling system tables. Applied only when the sync pipeline is first created (the initial\npublish of a new online table); republishing to an existing online table does not update them.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.PublishSpecPublishMode": { + "enum": [ + "CONTINUOUS", + "TRIGGERED", + "SNAPSHOT" + ], + "enum_launch_stages": { + "CONTINUOUS": "PRIVATE_PREVIEW", + "SNAPSHOT": "PRIVATE_PREVIEW", + "TRIGGERED": "PRIVATE_PREVIEW" + } + }, + "ml.PublishTableRequest": { + "fields": { + "publish_spec": { + "description": "The specification for publishing the online table from the source table.", + "ref": "ml.PublishSpec", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.PublishTableResponse": { + "fields": { + "online_table_name": { + "description": "The full three-part (catalog, schema, table) name of the online table.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "pipeline_id": { + "description": "The ID of the pipeline that syncs the online table with the source table.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.PurgeFeatureEntitiesMetadata": { + "description": "Progress and configuration for a feature entity purge.", + "fields": { + "create_time": { + "description": "Time at which the purge operation was created.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "entities_table": { + "description": "Fully qualified name of the Unity Catalog Delta table containing the entity keys to purge.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "entities_table_version": { + "description": "Version of the entities table used by the purge.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "features": { + "description": "Fully qualified names of the features targeted by the purge.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "job_id": { + "description": "ID of the job that executes this purge.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "state": { + "description": "Current state of the purge operation.", + "ref": "ml.PurgeFeatureEntitiesMetadataState", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "ml.PurgeFeatureEntitiesMetadataState": { + "description": "Lifecycle state of a feature entity purge.", + "enum": [ + "PENDING", + "RUNNING", + "SUCCEEDED", + "FAILED", + "CANCELLED" + ], + "enum_launch_stages": { + "CANCELLED": "PRIVATE_PREVIEW", + "FAILED": "PRIVATE_PREVIEW", + "PENDING": "PRIVATE_PREVIEW", + "RUNNING": "PRIVATE_PREVIEW", + "SUCCEEDED": "PRIVATE_PREVIEW" + } + }, + "ml.PurgeFeatureEntitiesRequest": { + "description": "Request to purge materialized feature values for entities listed in a Unity Catalog Delta table.", + "fields": { + "budget_policy_id": { + "description": "The budget policy ID, in UUID format, used to attribute the serverless compute cost of this\npurge. If not specified, a default budget policy may be applied.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "entities_table": { + "description": "Fully qualified name of the Unity Catalog Delta table containing the entity keys to purge.\nThe table may contain a subset of each feature's entity-key columns. A partial key match\ndeletes all feature rows matching the provided key values. Non-key columns are rejected;\nnull key values are allowed.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "features": { + "description": "Fully qualified names of the features to purge. At least one nonempty feature name is required.\nA request may contain at most 10000 features; submit additional features in separate requests.\nDuplicate features are rejected.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "request_id": { + "description": "Optional UUID4 idempotency token for the request.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "tags": { + "description": "Custom tags to associate with this purge. They are applied to the purge job and forwarded to\nthe underlying compute as Databricks resource tags, so purge cost can be attributed in the\nbilling system tables. These tags apply only to the purge compute; they are not applied to the\nUnity Catalog Feature resources themselves, whose tags are managed separately through the Unity\nCatalog tagging API. A maximum of 25 tags is supported; keys and values are subject to the same\nlimitations as Databricks resource tags.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.PurgeFeatureEntitiesResponse": { + "description": "Result of a completed feature entity purge.", + "fields": { + "error": { + "description": "Operation-level error, if the purge failed outside an individual feature target.", + "ref": "ml.DatabricksServiceExceptionWithDetailsProto", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "metadata": { + "description": "Metadata about the purge operation.", + "ref": "ml.PurgeFeatureEntitiesMetadata", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "results": { + "description": "Per-feature purge results.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "state": { + "description": "State of the purge operation.", + "ref": "ml.PurgeFeatureEntitiesMetadataState", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "ml.PurgeFeatureEntitiesResult": { + "description": "Result of purging one feature.", + "fields": { + "error": { + "description": "Error encountered while purging this feature, if any.", + "ref": "ml.DatabricksServiceExceptionWithDetailsProto", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "feature": { + "description": "Fully qualified name of the feature that was purged.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "offline_state": { + "description": "State of the offline purge for this feature.", + "ref": "ml.PurgeFeatureEntitiesResultState", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "online_state": { + "description": "State of the online purge for this feature.", + "ref": "ml.PurgeFeatureEntitiesResultState", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "ml.PurgeFeatureEntitiesResultState": { + "description": "Terminal state of a purge for one store type.", + "enum": [ + "SUCCEEDED", + "FAILED", + "NOT_APPLICABLE" + ], + "enum_launch_stages": { + "FAILED": "PRIVATE_PREVIEW", + "NOT_APPLICABLE": "PRIVATE_PREVIEW", + "SUCCEEDED": "PRIVATE_PREVIEW" + } + }, + "ml.RegisteredModelAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "ml.RegisteredModelPermissionLevel", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "ml.RegisteredModelAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "ml.RegisteredModelPermission": { + "fields": { + "inherited": { + "launch_stage": "GA" + }, + "inherited_from_object": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "ml.RegisteredModelPermissionLevel", + "launch_stage": "GA" + } + } + }, + "ml.RegisteredModelPermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_MANAGE", + "CAN_MANAGE_PRODUCTION_VERSIONS", + "CAN_MANAGE_STAGING_VERSIONS", + "CAN_EDIT", + "CAN_READ" + ] + }, + "ml.RegisteredModelPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "launch_stage": "GA" + }, + "object_type": { + "launch_stage": "GA" + } + } + }, + "ml.RegisteredModelPermissionsDescription": { + "fields": { + "description": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "ml.RegisteredModelPermissionLevel", + "launch_stage": "GA" + } + } + }, + "ml.RegisteredModelPermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "ml.RegistryEmailSubscriptionType": { + "description": ".. note::\nExperimental: This entity may change or be removed in a future release without warning.\nEmail subscription types for registry notifications:\n- `ALL_EVENTS`: Subscribed to all events.\n- `DEFAULT`: Default subscription type.\n- `SUBSCRIBED`: Subscribed to notifications.\n- `UNSUBSCRIBED`: Not subscribed to notifications.", + "enum": [ + "ALL_EVENTS", + "DEFAULT", + "SUBSCRIBED", + "UNSUBSCRIBED" + ], + "enum_launch_stages": { + "ALL_EVENTS": "GA", + "DEFAULT": "GA", + "SUBSCRIBED": "GA", + "UNSUBSCRIBED": "GA" + }, + "enum_descriptions": { + "ALL_EVENTS": "Subscribed to all events.", + "DEFAULT": "Default subscription type.", + "SUBSCRIBED": "Subscribed to notifications.", + "UNSUBSCRIBED": "Not subscribed to notifications." + } + }, + "ml.RegistryWebhook": { + "fields": { + "creation_timestamp": { + "description": "Creation time of the object, as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "description": { + "description": "User-specified description for the webhook.", + "launch_stage": "GA" + }, + "events": { + "description": "Events that can trigger a registry webhook:\n* `MODEL_VERSION_CREATED`: A new model version was created for the associated model.\n\n* `MODEL_VERSION_TRANSITIONED_STAGE`: A model version’s stage was changed.\n\n* `TRANSITION_REQUEST_CREATED`: A user requested a model version’s stage be transitioned.\n\n* `COMMENT_CREATED`: A user wrote a comment on a registered model.\n\n* `REGISTERED_MODEL_CREATED`: A new registered model was created. This event type can only be specified for a registry-wide webhook, which can be created by not specifying a model name in the create request.\n\n* `MODEL_VERSION_TAG_SET`: A user set a tag on the model version.\n\n* `MODEL_VERSION_TRANSITIONED_TO_STAGING`: A model version was transitioned to staging.\n\n* `MODEL_VERSION_TRANSITIONED_TO_PRODUCTION`: A model version was transitioned to production.\n\n* `MODEL_VERSION_TRANSITIONED_TO_ARCHIVED`: A model version was archived.\n\n* `TRANSITION_REQUEST_TO_STAGING_CREATED`: A user requested a model version be transitioned to staging.\n\n* `TRANSITION_REQUEST_TO_PRODUCTION_CREATED`: A user requested a model version be transitioned to production.\n\n* `TRANSITION_REQUEST_TO_ARCHIVED_CREATED`: A user requested a model version be archived.", + "launch_stage": "GA" + }, + "http_url_spec": { + "ref": "ml.HttpUrlSpecWithoutSecret", + "launch_stage": "GA" + }, + "id": { + "description": "Webhook ID", + "launch_stage": "GA" + }, + "job_spec": { + "ref": "ml.JobSpecWithoutSecret", + "launch_stage": "GA" + }, + "last_updated_timestamp": { + "description": "Time of the object at last update, as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "model_name": { + "description": "Name of the model whose events would trigger this webhook.", + "launch_stage": "GA" + }, + "status": { + "ref": "ml.RegistryWebhookStatus", + "launch_stage": "GA" + } + } + }, + "ml.RegistryWebhookEvent": { + "enum": [ + "MODEL_VERSION_CREATED", + "MODEL_VERSION_TRANSITIONED_STAGE", + "TRANSITION_REQUEST_CREATED", + "COMMENT_CREATED", + "REGISTERED_MODEL_CREATED", + "MODEL_VERSION_TAG_SET", + "MODEL_VERSION_TRANSITIONED_TO_STAGING", + "MODEL_VERSION_TRANSITIONED_TO_PRODUCTION", + "MODEL_VERSION_TRANSITIONED_TO_ARCHIVED", + "TRANSITION_REQUEST_TO_STAGING_CREATED", + "TRANSITION_REQUEST_TO_PRODUCTION_CREATED", + "TRANSITION_REQUEST_TO_ARCHIVED_CREATED" + ], + "enum_launch_stages": { + "COMMENT_CREATED": "GA", + "MODEL_VERSION_CREATED": "GA", + "MODEL_VERSION_TAG_SET": "GA", + "MODEL_VERSION_TRANSITIONED_STAGE": "GA", + "MODEL_VERSION_TRANSITIONED_TO_ARCHIVED": "GA", + "MODEL_VERSION_TRANSITIONED_TO_PRODUCTION": "GA", + "MODEL_VERSION_TRANSITIONED_TO_STAGING": "GA", + "REGISTERED_MODEL_CREATED": "GA", + "TRANSITION_REQUEST_CREATED": "GA", + "TRANSITION_REQUEST_TO_ARCHIVED_CREATED": "GA", + "TRANSITION_REQUEST_TO_PRODUCTION_CREATED": "GA", + "TRANSITION_REQUEST_TO_STAGING_CREATED": "GA" + } + }, + "ml.RegistryWebhookStatus": { + "description": "Enable or disable triggering the webhook, or put the webhook into test mode. The default is `ACTIVE`:\n* `ACTIVE`: Webhook is triggered when an associated event happens.\n\n* `DISABLED`: Webhook is not triggered.\n\n* `TEST_MODE`: Webhook can be triggered through the test endpoint, but is not triggered on a real event.", + "enum": [ + "ACTIVE", + "DISABLED", + "TEST_MODE" + ], + "enum_launch_stages": { + "ACTIVE": "GA", + "DISABLED": "GA", + "TEST_MODE": "GA" + }, + "enum_descriptions": { + "ACTIVE": "Webhook is triggered when an associated event happens.", + "DISABLED": "Webhook is not triggered.", + "TEST_MODE": "Webhook can be triggered through the test endpoint, but is not triggered on a real event." + } + }, + "ml.RejectTransitionRequest": { + "description": "Details required to identify and reject a model version stage transition request.", + "fields": { + "comment": { + "description": "User-provided comment on the action.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the model.", + "launch_stage": "GA" + }, + "stage": { + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "launch_stage": "GA" + }, + "version": { + "description": "Version of the model.", + "launch_stage": "GA" + } + } + }, + "ml.RejectTransitionRequestResponse": { + "fields": { + "activity": { + "description": "New activity generated as a result of this operation.", + "ref": "ml.Activity", + "launch_stage": "GA" + } + } + }, + "ml.RenameModelRequest": { + "fields": { + "name": { + "description": "Registered model unique name identifier.", + "launch_stage": "GA" + }, + "new_name": { + "description": "If provided, updates the name for this `registered_model`.", + "launch_stage": "GA" + } + } + }, + "ml.RenameModelResponse": { + "fields": { + "registered_model": { + "ref": "ml.Model", + "launch_stage": "GA" + } + } + }, + "ml.RequestSource": { + "description": "A request-time data source whose value is provided at inference time: offline batch scoring or online serving endpoint", + "fields": { + "dataframe_schema": { + "description": "A schema containing scalar or nested fields, in Spark StructType JSON format\n(from df.schema.json()). This preserves field, array-element, and map-value nullability.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "flat_schema": { + "description": "A flat schema with scalar-typed fields only.", + "ref": "ml.FlatSchema", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.RestoreExperiment": { + "fields": { + "experiment_id": { + "description": "ID of the associated experiment.", + "launch_stage": "GA" + } + } + }, + "ml.RestoreExperimentResponse": {}, + "ml.RestoreRun": { + "fields": { + "run_id": { + "description": "ID of the run to restore.", + "launch_stage": "GA" + } + } + }, + "ml.RestoreRunResponse": {}, + "ml.RestoreRuns": { + "fields": { + "experiment_id": { + "description": "The ID of the experiment containing the runs to restore.", + "launch_stage": "GA" + }, + "max_runs": { + "description": "An optional positive integer indicating the maximum number of runs to restore. The maximum allowed value for\nmax_runs is 10000.", + "launch_stage": "GA" + }, + "min_timestamp_millis": { + "description": "The minimum deletion timestamp in milliseconds since the UNIX epoch for restoring runs. Only runs deleted no\nearlier than this timestamp are restored.", + "launch_stage": "GA" + } + } + }, + "ml.RestoreRunsResponse": { + "fields": { + "runs_restored": { + "description": "The number of runs restored.", + "launch_stage": "GA" + } + } + }, + "ml.RollingWindow": { + "description": "A rolling time window with an optional non-negative delay.", + "fields": { + "delay": { + "description": "Non-negative analytic lag that evaluates the window this far in the past. Use this for timing\nvariations unrelated to source lateness, such as a 30-day count as of one week ago. If unset,\nthe analytic lag is zero. It composes with source.lateness when both are set.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "window_duration": { + "description": "The duration of the rolling window. Must be positive when set; absent means lifetime\n(aggregate over the entity's entire history).", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.Run": { + "description": "A single run.", + "fields": { + "data": { + "description": "Run data.", + "ref": "ml.RunData", + "launch_stage": "GA" + }, + "info": { + "description": "Run metadata.", + "ref": "ml.RunInfo", + "launch_stage": "GA" + }, + "inputs": { + "description": "Run inputs.", + "ref": "ml.RunInputs", + "launch_stage": "GA" + } + } + }, + "ml.RunData": { + "description": "Run data (metrics, params, and tags).", + "fields": { + "metrics": { + "description": "Run metrics.", + "launch_stage": "GA" + }, + "params": { + "description": "Run parameters.", + "launch_stage": "GA" + }, + "tags": { + "description": "Additional metadata key-value pairs.", + "launch_stage": "GA" + } + } + }, + "ml.RunInfo": { + "description": "Metadata of a single run.", + "fields": { + "artifact_uri": { + "description": "URI of the directory where artifacts should be uploaded.\nThis can be a local path (starting with \"/\"), or a distributed file system (DFS)\npath, like ``s3://bucket/directory`` or ``dbfs:/my/directory``.\nIf not set, the local ``./mlruns`` directory is chosen.", + "launch_stage": "GA" + }, + "end_time": { + "description": "Unix timestamp of when the run ended in milliseconds.", + "launch_stage": "GA" + }, + "experiment_id": { + "description": "The experiment ID.", + "launch_stage": "GA" + }, + "lifecycle_stage": { + "description": "Current life cycle stage of the experiment : OneOf(\"active\", \"deleted\")", + "launch_stage": "GA" + }, + "run_id": { + "description": "Unique identifier for the run.", + "launch_stage": "GA" + }, + "run_name": { + "description": "The name of the run.", + "launch_stage": "GA" + }, + "run_uuid": { + "description": "[Deprecated, use run_id instead] Unique identifier for the run. This field will\nbe removed in a future MLflow version.", + "deprecated": true, + "launch_stage": "GA" + }, + "start_time": { + "description": "Unix timestamp of when the run started in milliseconds.", + "launch_stage": "GA" + }, + "status": { + "description": "Current status of the run.", + "ref": "ml.RunInfoStatus", + "launch_stage": "GA" + }, + "user_id": { + "description": "User who initiated the run.\nThis field is deprecated as of MLflow 1.0, and will be removed in a future\nMLflow release. Use 'mlflow.user' tag instead.", + "deprecated": true, + "launch_stage": "GA" + } + } + }, + "ml.RunInfoStatus": { + "description": "Status of a run.", + "enum": [ + "RUNNING", + "SCHEDULED", + "FINISHED", + "FAILED", + "KILLED" + ], + "enum_launch_stages": { + "FAILED": "GA", + "FINISHED": "GA", + "KILLED": "GA", + "RUNNING": "GA", + "SCHEDULED": "GA" + } + }, + "ml.RunInputs": { + "description": "Run inputs.", + "fields": { + "dataset_inputs": { + "description": "Run metrics.", + "launch_stage": "GA" + }, + "model_inputs": { + "description": "Model inputs to the Run.", + "launch_stage": "GA" + } + } + }, + "ml.RunTag": { + "description": "Tag for a run.", + "fields": { + "key": { + "description": "The tag key.", + "launch_stage": "GA" + }, + "value": { + "description": "The tag value.", + "launch_stage": "GA" + } + } + }, + "ml.SawtoothWindow": { + "description": "A sawtooth window served via the hybrid batch + streaming path. The batch pipeline maintains\ndaily partial aggregates for the bulk of the window while the streaming pipeline maintains the\nmost recent day(s), and serving merges them on read. Same field shape as RollingWindow, but a\ndistinct type so the control plane can explicitly identify hybrid (sawtooth) features rather\nthan inferring hybrid behavior from window_duration.", + "fields": { + "delay": { + "description": "Delay is not currently supported for Sawtooth windows.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "window_duration": { + "description": "The duration of the window. Must be positive and span more than two days when set, so that both\nthe batch (N-1 day) and stale-path (N-2 day) partial aggregates are well defined. The duration\nneed not be a whole number of days (e.g. 3 days 15 minutes is allowed). Absent means lifetime\n(aggregate over the entity's entire history).", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.ScalarDataType": { + "description": "Scalar data types for request-time field definitions.\nOnly flat (non-nested) types are supported.", + "enum": [ + "INTEGER", + "FLOAT", + "BOOLEAN", + "STRING", + "DOUBLE", + "LONG", + "TIMESTAMP", + "DATE", + "SHORT", + "BINARY", + "DECIMAL" + ], + "enum_launch_stages": { + "BINARY": "GA", + "BOOLEAN": "GA", + "DATE": "GA", + "DECIMAL": "GA", + "DOUBLE": "GA", + "FLOAT": "GA", + "INTEGER": "GA", + "LONG": "GA", + "SHORT": "GA", + "STRING": "GA", + "TIMESTAMP": "GA" + } + }, + "ml.SchemaConfig": { + "fields": { + "avro_schema": { + "description": "Avro schema in JSON format (https://avro.apache.org/docs/current/specification/).", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "json_schema": { + "description": "Schema of the JSON object in standard IETF JSON schema format (https://json-schema.org/).", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "proto_schema": { + "description": "Protocol Buffer schema with its payload message name.", + "ref": "ml.ProtoSchemaSpec", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.SchemaLocator": { + "description": "Schema locator for one side (payload or key) of a message.\nIdentifies which schema to use in the schema registry and the serialization format.", + "fields": { + "confluent_schema": { + "description": "Confluent Schema Registry schema locator.", + "ref": "ml.SchemaLocatorConfluentSchema", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "format": { + "description": "Serialization format for this schema.", + "ref": "ml.SchemaLocatorFormat", + "launch_stage": "GA" + } + } + }, + "ml.SchemaLocatorConfluentSchema": { + "description": "Confluent Schema Registry schema locator.\nThe value to provide for `subject` depends on the naming strategy configured in your registry:\n- TopicNameStrategy (default): \"{topic}-key\" or \"{topic}-value\"\ne.g. for topic \"transactions\" use \"transactions-value\" for the payload and \"transactions-key\" for the key.\n- RecordNameStrategy: the fully-qualified record name\ne.g. \"com.example.Payment\" for Avro, the bare message name (without package) for Protobuf,\nor the `title` field value for JSON.\n- TopicRecordNameStrategy: \"{topic}-{fully-qualified-record-name}\"\ne.g. \"transactions-com.example.Payment\".", + "fields": { + "subject": { + "description": "The Confluent schema registry subject name.", + "launch_stage": "GA" + } + } + }, + "ml.SchemaLocatorFormat": { + "description": "Supported serialization formats for a schema registry schema.", + "enum": [ + "FORMAT_AVRO", + "FORMAT_PROTOBUF", + "FORMAT_JSON" + ], + "enum_launch_stages": { + "FORMAT_AVRO": "GA", + "FORMAT_JSON": "GA", + "FORMAT_PROTOBUF": "GA" + } + }, + "ml.SchemaRegistryConfig": { + "description": "Configuration for resolving a Stream's schema from an external schema registry (e.g. Confluent).", + "fields": { + "api_secret_ref": { + "description": "Reference to the schema registry API secret in a Databricks secret scope.\nSet this only if required for authentication for the schema registry.", + "ref": "ml.SecretScopeReference", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "key_schema_locator": { + "description": "Schema locator for the message key. Only used for Kafka streams.\nAt least one of payload_schema_locator or key_schema_locator must be set.", + "ref": "ml.SchemaLocator", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "payload_schema_locator": { + "description": "Schema locator for the message payload. For Kafka this is the value.\nAt least one of payload_schema_locator or key_schema_locator must be set.", + "ref": "ml.SchemaLocator", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "uc_connection": { + "description": "A Schema Registry UC Connection object.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.SearchExperiments": { + "fields": { + "filter": { + "description": "String representing a SQL filter condition (e.g. \"name ILIKE 'my-experiment%'\")", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of experiments desired. Max threshold is 3000.", + "launch_stage": "GA" + }, + "order_by": { + "description": "List of columns for ordering search results, which can include experiment name and last updated\ntimestamp with an optional \"DESC\" or \"ASC\" annotation, where \"ASC\" is the default.\nTiebreaks are done by experiment id DESC.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Token indicating the page of experiments to fetch", + "launch_stage": "GA" + }, + "view_type": { + "description": "Qualifier for type of experiments to be returned.\nIf unspecified, return only active experiments.", + "ref": "ml.ViewType", + "launch_stage": "GA" + } + } + }, + "ml.SearchExperimentsResponse": { + "fields": { + "experiments": { + "description": "Experiments that match the search criteria", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Token that can be used to retrieve the next page of experiments.\nAn empty token means that no more experiments are available for retrieval.", + "launch_stage": "GA" + } + } + }, + "ml.SearchIssuesRequest": { + "description": "Request for SearchIssues.", + "fields": { + "categories": { + "description": "Matches Issues with any of these categories, case-insensitively.", + "launch_stage": "PUBLIC_BETA" + }, + "page_size": { + "description": "Defaults to 20; values above 100 are clamped.", + "launch_stage": "PUBLIC_BETA" + }, + "page_token": { + "description": "Expires after 15 minutes. Every other argument except `view` must match the\nrequest that returned the token.", + "launch_stage": "PUBLIC_BETA" + }, + "query": { + "description": "Case-insensitive substring match on title.", + "launch_stage": "PUBLIC_BETA" + }, + "severities": { + "description": "Matches Issues with any of these severities.", + "launch_stage": "PUBLIC_BETA" + }, + "sort_key": { + "description": "Defaults to SEVERITY.", + "ref": "ml.IssueSortKey", + "launch_stage": "PUBLIC_BETA" + }, + "sort_order": { + "description": "Defaults to DESCENDING.", + "ref": "ml.SortOrder", + "launch_stage": "PUBLIC_BETA" + }, + "statuses": { + "description": "Matches Issues with any of these statuses. Different filters AND together,\nand an empty filter matches every Issue.", + "launch_stage": "PUBLIC_BETA" + }, + "tag_filters": { + "description": "Matches Issues that satisfy every filter. At most 10 filters of 20 values\neach.", + "launch_stage": "PUBLIC_BETA" + }, + "view": { + "description": "Defaults to BASIC.", + "ref": "ml.IssueView", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "ml.SearchIssuesResponse": { + "description": "One page of SearchIssues results.", + "fields": { + "issues": { + "description": "The page's Issues, in the requested order.", + "launch_stage": "PUBLIC_BETA" + }, + "next_page_token": { + "description": "Absent on the last page.", + "launch_stage": "PUBLIC_BETA" + }, + "total_size": { + "description": "Exact number of matching Issues.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "ml.SearchLoggedModelsDataset": { + "fields": { + "dataset_digest": { + "description": "The digest of the dataset.", + "launch_stage": "GA" + }, + "dataset_name": { + "description": "The name of the dataset.", + "launch_stage": "GA" + } + } + }, + "ml.SearchLoggedModelsOrderBy": { + "fields": { + "ascending": { + "description": "Whether the search results order is ascending or not.", + "launch_stage": "GA" + }, + "dataset_digest": { + "description": "If ``field_name`` refers to a metric, this field specifies the digest of the dataset\nassociated with the metric. Only metrics associated with the specified dataset name\nand digest will be considered for ordering. This field may only be set if ``dataset_name``\nis also set.", + "launch_stage": "GA" + }, + "dataset_name": { + "description": "If ``field_name`` refers to a metric, this field specifies the name of the dataset\nassociated with the metric. Only metrics associated with the specified dataset name will be\nconsidered for ordering. This field may only be set if ``field_name`` refers to a metric.", + "launch_stage": "GA" + }, + "field_name": { + "description": "The name of the field to order by, e.g. \"metrics.accuracy\".", + "launch_stage": "GA" + } + } + }, + "ml.SearchLoggedModelsRequest": { + "fields": { + "datasets": { + "description": "List of datasets on which to apply the metrics filter clauses.\nFor example, a filter with `metrics.accuracy \u003e 0.9` and dataset info with name \"test_dataset\"\nmeans we will return all logged models with accuracy \u003e 0.9 on the test_dataset.\nMetric values from ANY dataset matching the criteria are considered.\nIf no datasets are specified, then metrics across all datasets are considered in the filter.", + "launch_stage": "GA" + }, + "experiment_ids": { + "description": "The IDs of the experiments in which to search for logged models.", + "launch_stage": "GA" + }, + "filter": { + "description": "A filter expression over logged model info and data that allows returning a subset of\nlogged models. The syntax is a subset of SQL that supports AND'ing together binary operations.\n\nExample: ``params.alpha \u003c 0.3 AND metrics.accuracy \u003e 0.9``.", + "launch_stage": "GA" + }, + "max_results": { + "description": "The maximum number of Logged Models to return. The maximum limit is 50.", + "launch_stage": "GA" + }, + "order_by": { + "description": "The list of columns for ordering the results, with additional fields for sorting criteria.", + "launch_stage": "GA" + }, + "page_token": { + "description": "The token indicating the page of logged models to fetch.", + "launch_stage": "GA" + } + } + }, + "ml.SearchLoggedModelsResponse": { + "fields": { + "models": { + "description": "Logged models that match the search criteria.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "The token that can be used to retrieve the next page of logged models.", + "launch_stage": "GA" + } + } + }, + "ml.SearchModelVersionsRequest": { + "fields": { + "filter": { + "description": "String filter condition, like \"name='my-model-name'\". Must be a single boolean condition,\nwith string values wrapped in single quotes.", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of models desired. Max threshold is 10K.", + "launch_stage": "GA" + }, + "order_by": { + "description": "List of columns to be ordered by including model name, version, stage with an\noptional \"DESC\" or \"ASC\" annotation, where \"ASC\" is the default.\nTiebreaks are done by latest stage transition timestamp, followed by name ASC, followed by\nversion DESC.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Pagination token to go to next page based on previous search query.", + "launch_stage": "GA" + } + } + }, + "ml.SearchModelVersionsResponse": { + "fields": { + "model_versions": { + "description": "Models that match the search criteria", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Pagination token to request next page of models for the same search query.", + "launch_stage": "GA" + } + } + }, + "ml.SearchModelsRequest": { + "fields": { + "filter": { + "description": "String filter condition, like \"name LIKE 'my-model-name'\".\nInterpreted in the backend automatically as \"name LIKE '%my-model-name%'\".\nSingle boolean condition, with string values wrapped in single quotes.", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of models desired. Default is 100. Max threshold is 1000.", + "launch_stage": "GA" + }, + "order_by": { + "description": "List of columns for ordering search results, which can include model name and last updated\ntimestamp with an optional \"DESC\" or \"ASC\" annotation, where \"ASC\" is the default.\nTiebreaks are done by model name ASC.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Pagination token to go to the next page based on a previous search query.", + "launch_stage": "GA" + } + } + }, + "ml.SearchModelsResponse": { + "fields": { + "next_page_token": { + "description": "Pagination token to request the next page of models.", + "launch_stage": "GA" + }, + "registered_models": { + "description": "Registered Models that match the search criteria.", + "launch_stage": "GA" + } + } + }, + "ml.SearchRuns": { + "fields": { + "experiment_ids": { + "description": "List of experiment IDs to search over.", + "launch_stage": "GA" + }, + "filter": { + "description": "A filter expression over params, metrics, and tags, that allows returning a subset of\nruns. The syntax is a subset of SQL that supports ANDing together binary operations\nbetween a param, metric, or tag and a constant.\n\nExample: `metrics.rmse \u003c 1 and params.model_class = 'LogisticRegression'`\n\nYou can select columns with special characters (hyphen, space, period, etc.) by using double quotes:\n`metrics.\"model class\" = 'LinearRegression' and tags.\"user-name\" = 'Tomas'`\n\nSupported operators are `=`, `!=`, `\u003e`, `\u003e=`, `\u003c`, and `\u003c=`.", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of runs desired. Max threshold is 50000", + "launch_stage": "GA" + }, + "order_by": { + "description": "List of columns to be ordered by, including attributes, params, metrics, and tags with an\noptional `\"DESC\"` or `\"ASC\"` annotation, where `\"ASC\"` is the default.\nExample: `[\"params.input DESC\", \"metrics.alpha ASC\", \"metrics.rmse\"]`.\nTiebreaks are done by start_time `DESC` followed by `run_id` for runs with the same start time\n(and this is the default ordering criterion if order_by is not provided).", + "launch_stage": "GA" + }, + "page_token": { + "description": "Token for the current page of runs.", + "launch_stage": "GA" + }, + "run_view_type": { + "description": "Whether to display only active, only deleted, or all runs.\nDefaults to only active runs.", + "ref": "ml.ViewType", + "launch_stage": "GA" + } + } + }, + "ml.SearchRunsResponse": { + "fields": { + "next_page_token": { + "description": "Token for the next page of runs.", + "launch_stage": "GA" + }, + "runs": { + "description": "Runs that match the search criteria.", + "launch_stage": "GA" + } + } + }, + "ml.SecretScopeReference": { + "description": "Reference to an entry in a Databricks secret scope.", + "fields": { + "key": { + "description": "The key within the scope.", + "launch_stage": "GA" + }, + "scope": { + "description": "The Databricks secret scope name.", + "launch_stage": "GA" + } + } + }, + "ml.SetExperimentTag": { + "fields": { + "experiment_id": { + "description": "ID of the experiment under which to log the tag. Must be provided.", + "launch_stage": "GA" + }, + "key": { + "description": "Name of the tag. Keys up to 250 bytes in size are supported.", + "launch_stage": "GA" + }, + "value": { + "description": "String value of the tag being logged. Values up to 64KB in size are supported.", + "launch_stage": "GA" + } + } + }, + "ml.SetExperimentTagResponse": {}, + "ml.SetLoggedModelTagsRequest": { + "fields": { + "tags": { + "description": "The tags to set on the logged model.", + "launch_stage": "GA" + } + } + }, + "ml.SetLoggedModelTagsResponse": {}, + "ml.SetModelTagRequest": { + "fields": { + "key": { + "description": "Name of the tag. Maximum size depends on storage backend.\nIf a tag with this name already exists, its preexisting value will be replaced by the specified `value`.\nAll storage backends are guaranteed to support key values up to 250 bytes in size.", + "launch_stage": "GA" + }, + "name": { + "description": "Unique name of the model.", + "launch_stage": "GA" + }, + "value": { + "description": "String value of the tag being logged. Maximum size depends on storage backend.\nAll storage backends are guaranteed to support key values up to 5000 bytes in size.", + "launch_stage": "GA" + } + } + }, + "ml.SetModelTagResponse": {}, + "ml.SetModelVersionTagRequest": { + "fields": { + "key": { + "description": "Name of the tag. Maximum size depends on storage backend.\nIf a tag with this name already exists, its preexisting value will be replaced by the specified `value`.\nAll storage backends are guaranteed to support key values up to 250 bytes in size.", + "launch_stage": "GA" + }, + "name": { + "description": "Unique name of the model.", + "launch_stage": "GA" + }, + "value": { + "description": "String value of the tag being logged. Maximum size depends on storage backend.\nAll storage backends are guaranteed to support key values up to 5000 bytes in size.", + "launch_stage": "GA" + }, + "version": { + "description": "Model version number.", + "launch_stage": "GA" + } + } + }, + "ml.SetModelVersionTagResponse": {}, + "ml.SetTag": { + "fields": { + "key": { + "description": "Name of the tag. Keys up to 250 bytes in size are supported.", + "launch_stage": "GA" + }, + "run_id": { + "description": "ID of the run under which to log the tag. Must be provided.", + "launch_stage": "GA" + }, + "run_uuid": { + "description": "[Deprecated, use `run_id` instead] ID of the run under which to log the tag. This field will\nbe removed in a future MLflow version.", + "deprecated": true, + "launch_stage": "GA" + }, + "value": { + "description": "String value of the tag being logged. Values up to 64KB in size are supported.", + "launch_stage": "GA" + } + } + }, + "ml.SetTagResponse": {}, + "ml.SlidingWindow": { + "fields": { + "delay": { + "description": "Non-negative analytic lag that evaluates the window this far in the past. Use this for timing\nvariations unrelated to source lateness, such as a 30-day count as of one week ago. If unset,\nthe analytic lag is zero. It composes with source.lateness when both are set.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "offset": { + "description": "Non-negative phase shift from the default midnight UTC alignment. For example, offset=22h on\na 24h slide produces boundaries at 22:00 UTC (17:00 New York in standard time) instead of\nmidnight UTC. If unset, the offset is zero. Must be shorter than slide_duration (and therefore\nwindow_duration).", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "slide_duration": { + "description": "The slide duration (interval by which windows advance, must be positive and less than duration).", + "launch_stage": "GA" + }, + "window_duration": { + "description": "The duration of the sliding window. Must be positive when set; absent means lifetime\n(aggregate over the entity's entire history).", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.SortOrder": { + "description": "The direction of the ordering.", + "enum": [ + "DESCENDING", + "ASCENDING" + ], + "enum_launch_stages": { + "ASCENDING": "PUBLIC_BETA", + "DESCENDING": "PUBLIC_BETA" + } + }, + "ml.SourceLateness": { + "description": "Configures when event-time data from this source is considered complete for a Feature.", + "fields": { + "settling_delay": { + "description": "Non-negative time to wait after a window ends before treating its source data as complete.\nTraining shifts the eligible evaluation time backwards by this duration so it does not join\ndata that would still have been settling online. Materialization waits for the duration to\nelapse before publishing the window. If unset, source data is considered settled immediately.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.Status": { + "description": "The status of the model version. Valid values are:\n* `PENDING_REGISTRATION`: Request to register a new model version is pending as server performs background tasks.\n\n* `FAILED_REGISTRATION`: Request to register a new model version has failed.\n\n* `READY`: Model version is ready for use.", + "enum": [ + "PENDING_REGISTRATION", + "FAILED_REGISTRATION", + "READY" + ], + "enum_launch_stages": { + "FAILED_REGISTRATION": "GA", + "PENDING_REGISTRATION": "GA", + "READY": "GA" + }, + "enum_descriptions": { + "FAILED_REGISTRATION": "Request to register a new model version has failed.", + "PENDING_REGISTRATION": "Request to register a new model version is pending as server performs background tasks.", + "READY": "Model version is ready for use." + } + }, + "ml.StddevPopFunction": { + "description": "Computes the population standard deviation.", + "fields": { + "input": { + "description": "The input column from which the population standard deviation is computed. For Kafka sources,\nuse dot-prefixed path notation (e.g., \"value.amount\"). For nested fields, the leaf node name is used.\nColon-prefixed notation (e.g., \"value:amount\") is supported for backwards\ncompatibility but is deprecated; migrate to dot notation.", + "launch_stage": "GA" + } + } + }, + "ml.StddevSampFunction": { + "description": "Computes the sample standard deviation.", + "fields": { + "input": { + "description": "The input column from which the sample standard deviation is computed.", + "launch_stage": "GA" + } + } + }, + "ml.Stream": { + "description": "A Stream is a governed UC entity representing an external streaming data source.\nThe source_config field determines the streaming platform source (e.g. Kafka, Kinesis).", + "fields": { + "browse_only": { + "description": "Indicates whether the principal is limited to retrieving metadata for the\nassociated object through the BROWSE privilege when include_browse is enabled in the request.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "connection_config": { + "description": "Specifies how to connect and authenticate to the stream platform.", + "ref": "ml.StreamConnectionConfig", + "launch_stage": "GA" + }, + "create_time": { + "description": "Time at which this Stream was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "Username of the Stream creator.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "User-provided description.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "excluded_columns": { + "description": "Column paths (dot notation, e.g. \"value.email\" for Kafka) to drop.\nA path may reference a struct, in which case all of its nested fields are dropped (e.g. \"value.address\" drops \"value.address.city\" and \"value.address.zip\").\nThese columns are not written to the ingestion table and cannot be referenced by any feature.\nThey are dropped from ingestion, backfill, and materialization.\nFor direct schemas, each column must exist in the relevant key or payload schema. With a schema registry, a column can be excluded before it exists.\nA column cannot also be a deduplication column in the ingestion_config.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "ingestion_config": { + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "ref": "ml.IngestionConfig", + "launch_stage": "GA" + }, + "name": { + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "launch_stage": "GA" + }, + "record_type_filter": { + "description": "Optional SQL predicate to filter which record types from a streaming channel (e.g. a topic for Kafka) belong to this Stream.\nEvents that do not match are not written to the ingestion table and are not used in materialization.\nExample: \"value.event_type = 'transaction'\".", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "schema_config": { + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "ref": "ml.StreamSchemaConfig", + "launch_stage": "GA" + }, + "source_config": { + "description": "Source-specific configuration. Determines the streaming platform source.", + "ref": "ml.StreamSourceConfig", + "launch_stage": "GA" + }, + "update_time": { + "description": "Time at which this Stream was last modified.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_by": { + "description": "Username of user who last modified the Stream.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "ml.StreamArnList": { + "description": "A list of Kinesis stream ARNs to read from.", + "fields": { + "arns": { + "description": "Kinesis stream ARNs to read from. For example,\n'arn:aws:kinesis:us-west-2:111122223333:stream/stream-a'.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.StreamConnectionConfig": { + "description": "Specifies how to connect and authenticate to the stream platform.", + "fields": { + "direct_mtls_config": { + "description": "Direct mTLS configuration for stream platform access.", + "ref": "ml.DirectMtlsConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "uc_connection_name": { + "description": "Name of an existing UC Connection for stream platform access.\nMust be the correct type for the streaming platform (e.g. a Kafka Connection for a Kafka\nStream, or a Kinesis Connection for a Kinesis Stream).", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.StreamNameList": { + "description": "A list of Kinesis stream names to read from.", + "fields": { + "names": { + "description": "Kinesis stream names to read from.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.StreamSchemaConfig": { + "description": "Schema definitions for the stream.\nFeature store supports both direct schemas and schema registries.", + "fields": { + "direct_schemas": { + "description": "Schema definitions provided directly on the Stream.", + "ref": "ml.DirectSchemas", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "schema_registry_config": { + "description": "Resolve schemas from an external schema registry.", + "ref": "ml.SchemaRegistryConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.StreamSource": { + "description": "A Stream entity used as a data source for a feature.", + "fields": { + "dataframe_schema": { + "description": "Schema of the resulting dataframe after transformations, in Spark StructType\nJSON format (from df.schema.json()).\nAny subsequent functions operate against this dataframe.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "filter_condition": { + "description": "The filter condition applied to the source data before aggregation.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "full_name": { + "description": "Three-part full name of the Stream (catalog.schema.stream).", + "launch_stage": "GA" + }, + "transformation_sql": { + "description": "The pipeline runs these SQL statements immediately after conversion into\nthe schema specified on the Stream object.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.StreamSourceConfig": { + "description": "Source-specific configuration. Determines the streaming platform source.", + "fields": { + "kafka_stream_config": { + "description": "Configuration for Apache Kafka streams.", + "ref": "ml.KafkaStreamConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "kinesis_stream_config": { + "description": "Configuration for AWS Kinesis Data Streams.", + "ref": "ml.KinesisStreamConfig", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.StreamingMode": { + "description": "The streaming mode configuration for a streaming materialization pipeline.", + "fields": { + "freshness_target": { + "description": "The desired data freshness for feature materialization, expressed as a\nduration string (e.g. \"1 minute\").", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "mode": { + "description": "The type of streaming mode used by the materialization pipeline.", + "ref": "ml.StreamingModeStreamingModeType", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "shuffle_partitions": { + "description": "Number of shuffle partitions for streaming materialization of this feature.\nHigher values process high-throughput features with more parallelism at higher compute cost.\nMaterialized features which are computed together will use the largest value set among them.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.StreamingModeStreamingModeType": { + "enum": [ + "STREAMING_MODE_TYPE_RTM", + "STREAMING_MODE_TYPE_MBM" + ], + "enum_launch_stages": { + "STREAMING_MODE_TYPE_MBM": "GA", + "STREAMING_MODE_TYPE_RTM": "GA" + } + }, + "ml.SubscriptionMode": { + "description": "Deprecated: Use KafkaSubscriptionMode instead.", + "fields": { + "assign": { + "description": "A JSON string that contains the specific topic-partitions to consume from.\nFor example, for '{\"topicA\":[0,1],\"topicB\":[2,4]}', topicA's 0'th and 1st partitions will be consumed from.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "subscribe": { + "description": "A comma-separated list of Kafka topics to read from. For example, 'topicA,topicB,topicC'.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "subscribe_pattern": { + "description": "A regular expression matching topics to subscribe to. For example, 'topic.*' will subscribe to all topics starting with 'topic'.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.SumFunction": { + "description": "Computes the sum of values.", + "fields": { + "input": { + "description": "The input column from which the sum is computed. For Kafka sources, use dot-prefixed path\nnotation (e.g., \"value.amount\"). For nested fields, the leaf node name is used.\nColon-prefixed notation (e.g., \"value:amount\") is supported for backwards\ncompatibility but is deprecated; migrate to dot notation.", + "launch_stage": "GA" + } + } + }, + "ml.TableTrigger": { + "description": "A trigger that fires when the upstream source table changes." + }, + "ml.TestRegistryWebhookRequest": { + "description": "Details required to test a registry webhook.", + "fields": { + "event": { + "description": "If `event` is specified, the test trigger uses the specified event. If `event` is not specified, the test trigger uses a randomly chosen event associated with the webhook.", + "ref": "ml.RegistryWebhookEvent", + "launch_stage": "GA" + }, + "id": { + "description": "Webhook ID", + "launch_stage": "GA" + } + } + }, + "ml.TestRegistryWebhookResponse": { + "fields": { + "body": { + "description": "Body of the response from the webhook URL", + "launch_stage": "GA" + }, + "status_code": { + "description": "Status code returned by the webhook URL", + "launch_stage": "GA" + } + } + }, + "ml.TimeWindow": { + "fields": { + "continuous": { + "ref": "ml.ContinuousWindow", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "rolling": { + "ref": "ml.RollingWindow", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "sawtooth": { + "description": "A sawtooth window served via the hybrid batch + streaming path.", + "ref": "ml.SawtoothWindow", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "sliding": { + "ref": "ml.SlidingWindow", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "start_time": { + "description": "Earliest event-time boundary at which the Feature may emit an output. This gates outputs, not\nthe historical inputs read by a window. For example, a 365-day window with\nstart_time=2026-01-01 begins emitting partial-window values on that date instead of waiting\nfor 365 days of data; a lifetime window produces no output before start_time. If unset,\ntumbling and fixed-duration sliding windows first emit at an offset-aligned boundary after a\nfull window can be formed. If unset, lifetime sliding windows and rolling windows emit as soon as\neligible source data exists.\nNot currently supported for sawtooth windows or for Features with a stream source.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "tumbling": { + "ref": "ml.TumblingWindow", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.TimeseriesColumn": { + "fields": { + "name": { + "description": "The name of the timeseries column. For Kafka sources, use dot-prefixed path notation to\nreference fields within the key or value schema (e.g., \"value.event_timestamp\"). For nested\nfields, the leaf node name (e.g., \"event_timestamp\" from \"value.event_details.event_timestamp\")\nis what will be present in materialized tables and expected to match at query time.\nColon-prefixed notation (e.g., \"value:event_timestamp\") is supported for\nbackwards compatibility but is deprecated; migrate to dot notation.", + "launch_stage": "GA" + } + } + }, + "ml.TransitionModelVersionStageDatabricks": { + "description": "Details required to transition a model version's stage.", + "fields": { + "archive_existing_versions": { + "description": "Specifies whether to archive all current model versions in the target stage.", + "launch_stage": "GA" + }, + "comment": { + "description": "User-provided comment on the action.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the model.", + "launch_stage": "GA" + }, + "stage": { + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "launch_stage": "GA" + }, + "version": { + "description": "Version of the model.", + "launch_stage": "GA" + } + } + }, + "ml.TransitionRequest": { + "description": "For activities, this contains the activity recorded for the action.\nFor comments, this contains the comment details.\nFor transition requests, this contains the transition request details.", + "fields": { + "available_actions": { + "description": "Array of actions on the activity allowed for the current viewer.", + "launch_stage": "GA" + }, + "comment": { + "description": "User-provided comment associated with the activity, comment, or transition request.", + "launch_stage": "GA" + }, + "creation_timestamp": { + "description": "Creation time of the object, as a Unix timestamp in milliseconds.", + "launch_stage": "GA" + }, + "to_stage": { + "description": "Target stage of the transition (if the activity is stage transition related). Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "launch_stage": "GA" + }, + "user_id": { + "description": "The username of the user that created the object.", + "launch_stage": "GA" + } + } + }, + "ml.TransitionStageResponse": { + "fields": { + "model_version_databricks": { + "description": "Updated model version", + "ref": "ml.ModelVersionDatabricks", + "launch_stage": "GA" + } + } + }, + "ml.TumblingWindow": { + "fields": { + "delay": { + "description": "Non-negative analytic lag that evaluates the window this far in the past. Use this for timing\nvariations unrelated to source lateness, such as a 30-day count as of one week ago. If unset,\nthe analytic lag is zero. It composes with source.lateness when both are set.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "offset": { + "description": "Non-negative phase shift from the default midnight UTC alignment. For example, offset=22h on\na 24h window produces boundaries at 22:00 UTC (17:00 New York in standard time) instead of\nmidnight UTC. If unset, the offset is zero. Must be shorter than window_duration.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "window_duration": { + "description": "The duration of each tumbling window (non-overlapping, fixed-duration windows).", + "launch_stage": "GA" + } + } + }, + "ml.UcTraceLocation": { + "description": "A Unity Catalog trace storage location. Traces are stored as Delta tables\nin the specified catalog and schema.", + "fields": { + "catalog": { + "description": "The name of the Unity Catalog catalog.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "effective_table_prefix": { + "description": "The trace-table prefix actually in effect: `table_prefix` if it was set on\ncreation, otherwise the server-generated default.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "schema": { + "description": "The name of the Unity Catalog schema within `catalog`.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "table_prefix": { + "description": "The prefix for the trace tables, which are named\n`{catalog}.{schema}.{table_prefix}_otel_*`. May only contain letters,\ndigits, and underscores, and may be at most 238 characters. When unset, a\nserver-generated prefix derived from the experiment ID is used and this\nfield stays empty on read; the resolved value is always available in\n`effective_table_prefix`.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + } + } + }, + "ml.UpdateComment": { + "description": "Details required to edit a comment on a model version.", + "fields": { + "comment": { + "description": "User-provided comment on the action.", + "launch_stage": "GA" + }, + "id": { + "description": "Unique identifier of an activity", + "launch_stage": "GA" + } + } + }, + "ml.UpdateCommentResponse": { + "fields": { + "comment": { + "description": "Updated comment object", + "ref": "ml.CommentObject", + "launch_stage": "GA" + } + } + }, + "ml.UpdateExperiment": { + "fields": { + "experiment_id": { + "description": "ID of the associated experiment.", + "launch_stage": "GA" + }, + "new_name": { + "description": "If provided, the experiment's name is changed to the new name. The new name must be unique.", + "launch_stage": "GA" + } + } + }, + "ml.UpdateExperimentResponse": {}, + "ml.UpdateFeatureRequest": { + "fields": { + "feature": { + "description": "Feature whose full_name identifies the target. Only description is mutable.", + "ref": "ml.Feature", + "launch_stage": "GA" + }, + "update_mask": { + "description": "Fields to update. The only supported path is description.", + "launch_stage": "GA" + } + } + }, + "ml.UpdateFeatureTagRequest": { + "fields": { + "feature_tag": { + "ref": "ml.FeatureTag", + "launch_stage": "PRIVATE_PREVIEW" + }, + "update_mask": { + "description": "The list of fields to update.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "ml.UpdateIssueRequest": { + "fields": { + "issue": { + "description": "`issue.name` identifies the target.", + "ref": "ml.Issue", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Accepts title, description, status, severity, categories, tags,\nlast_seen_time, and metadata.\u003ckey\u003e. A path with an empty value clears the\nfield, except that title, status, and severity can't be cleared, and\nlast_seen_time can be cleared only when source_type is MANUAL. categories\nand tags are replaced whole. metadata is updated per key: a metadata.\u003ckey\u003e\npath sets that key from issue.metadata, or removes it when issue.metadata\nlacks it, and leaves the other keys alone. A bare metadata path is rejected.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "ml.UpdateKafkaConfigRequest": { + "fields": { + "kafka_config": { + "description": "The Kafka config to update.", + "ref": "ml.KafkaConfig", + "launch_stage": "PRIVATE_PREVIEW" + }, + "update_mask": { + "description": "The list of fields to update.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.UpdateMaterializedFeatureRequest": { + "fields": { + "materialized_feature": { + "description": "The materialized feature to update.", + "ref": "ml.MaterializedFeature", + "launch_stage": "GA" + }, + "update_mask": { + "description": "Provide the materialization feature fields which should be updated.\nCurrently, only the pipeline_state field can be updated.", + "launch_stage": "GA" + } + } + }, + "ml.UpdateModelRequest": { + "fields": { + "description": { + "description": "If provided, updates the description for this `registered_model`.", + "launch_stage": "GA" + }, + "name": { + "description": "Registered model unique name identifier.", + "launch_stage": "GA" + } + } + }, + "ml.UpdateModelResponse": { + "fields": { + "registered_model": { + "ref": "ml.Model", + "launch_stage": "GA" + } + } + }, + "ml.UpdateModelVersionRequest": { + "fields": { + "description": { + "description": "If provided, updates the description for this `registered_model`.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the registered model", + "launch_stage": "GA" + }, + "version": { + "description": "Model version number", + "launch_stage": "GA" + } + } + }, + "ml.UpdateModelVersionResponse": { + "fields": { + "model_version": { + "description": "Return new version number generated for this model in registry.", + "ref": "ml.ModelVersion", + "launch_stage": "GA" + } + } + }, + "ml.UpdateOnlineStoreRequest": { + "fields": { + "online_store": { + "description": "Online store to update.", + "ref": "ml.OnlineStore", + "launch_stage": "PRIVATE_PREVIEW" + }, + "update_mask": { + "description": "The list of fields to update.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "ml.UpdateRegistryWebhook": { + "description": "Details required to update a registry webhook. Only the fields that need to be updated should be specified, and both `http_url_spec` and `job_spec` should not be specified in the same request.", + "fields": { + "description": { + "description": "User-specified description for the webhook.", + "launch_stage": "GA" + }, + "events": { + "description": "Events that can trigger a registry webhook:\n* `MODEL_VERSION_CREATED`: A new model version was created for the associated model.\n\n* `MODEL_VERSION_TRANSITIONED_STAGE`: A model version’s stage was changed.\n\n* `TRANSITION_REQUEST_CREATED`: A user requested a model version’s stage be transitioned.\n\n* `COMMENT_CREATED`: A user wrote a comment on a registered model.\n\n* `REGISTERED_MODEL_CREATED`: A new registered model was created. This event type can only be specified for a registry-wide webhook, which can be created by not specifying a model name in the create request.\n\n* `MODEL_VERSION_TAG_SET`: A user set a tag on the model version.\n\n* `MODEL_VERSION_TRANSITIONED_TO_STAGING`: A model version was transitioned to staging.\n\n* `MODEL_VERSION_TRANSITIONED_TO_PRODUCTION`: A model version was transitioned to production.\n\n* `MODEL_VERSION_TRANSITIONED_TO_ARCHIVED`: A model version was archived.\n\n* `TRANSITION_REQUEST_TO_STAGING_CREATED`: A user requested a model version be transitioned to staging.\n\n* `TRANSITION_REQUEST_TO_PRODUCTION_CREATED`: A user requested a model version be transitioned to production.\n\n* `TRANSITION_REQUEST_TO_ARCHIVED_CREATED`: A user requested a model version be archived.", + "launch_stage": "GA" + }, + "http_url_spec": { + "ref": "ml.HttpUrlSpec", + "launch_stage": "GA" + }, + "id": { + "description": "Webhook ID", + "launch_stage": "GA" + }, + "job_spec": { + "ref": "ml.JobSpec", + "launch_stage": "GA" + }, + "status": { + "ref": "ml.RegistryWebhookStatus", + "launch_stage": "GA" + } + } + }, + "ml.UpdateRun": { + "fields": { + "end_time": { + "description": "Unix timestamp in milliseconds of when the run ended.", + "launch_stage": "GA" + }, + "run_id": { + "description": "ID of the run to update. Must be provided.", + "launch_stage": "GA" + }, + "run_name": { + "description": "Updated name of the run.", + "launch_stage": "GA" + }, + "run_uuid": { + "description": "[Deprecated, use `run_id` instead] ID of the run to update. This field will\nbe removed in a future MLflow version.", + "deprecated": true, + "launch_stage": "GA" + }, + "status": { + "description": "Updated status of the run.", + "ref": "ml.UpdateRunStatus", + "launch_stage": "GA" + } + } + }, + "ml.UpdateRunResponse": { + "fields": { + "run_info": { + "description": "Updated metadata of the run.", + "ref": "ml.RunInfo", + "launch_stage": "GA" + } + } + }, + "ml.UpdateRunStatus": { + "description": "Status of a run.", + "enum": [ + "RUNNING", + "SCHEDULED", + "FINISHED", + "FAILED", + "KILLED" + ], + "enum_launch_stages": { + "FAILED": "GA", + "FINISHED": "GA", + "KILLED": "GA", + "RUNNING": "GA", + "SCHEDULED": "GA" + } + }, + "ml.UpdateStreamRequest": { + "fields": { + "stream": { + "description": "The Stream to update.", + "ref": "ml.Stream", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The list of fields to update.", + "launch_stage": "GA" + } + } + }, + "ml.UpdateWebhookResponse": { + "fields": { + "webhook": { + "ref": "ml.RegistryWebhook", + "launch_stage": "GA" + } + } + }, + "ml.VarPopFunction": { + "description": "Computes the population variance.", + "fields": { + "input": { + "description": "The input column from which the population variance is computed.", + "launch_stage": "GA" + } + } + }, + "ml.VarSampFunction": { + "description": "Computes the sample variance.", + "fields": { + "input": { + "description": "The input column from which the sample variance is computed.", + "launch_stage": "GA" + } + } + }, + "ml.ViewType": { + "description": "Qualifier for the view type.", + "enum": [ + "ACTIVE_ONLY", + "DELETED_ONLY", + "ALL" + ], + "enum_launch_stages": { + "ACTIVE_ONLY": "GA", + "ALL": "GA", + "DELETED_ONLY": "GA" + } + }, + "networking.AwsVpcEndpointInfo": { + "fields": { + "aws_account_id": { + "description": "The AWS account ID in which this VPC endpoint lives.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + }, + "aws_endpoint_service_id": { + "description": "The ID of the Databricks VPC endpoint service that this endpoint connects to.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + }, + "aws_vpc_endpoint_id": { + "description": "The ID of the underlying VPC endpoint in AWS. Provided by the customer when\nregistering an existing AWS VPC endpoint.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + } + } + }, + "networking.AzurePrivateEndpointInfo": { + "fields": { + "private_endpoint_name": { + "description": "The name of the Private Endpoint in the Azure subscription.", + "launch_stage": "GA" + }, + "private_endpoint_resource_guid": { + "description": "The GUID of the Private Endpoint resource in the Azure subscription.\nThis is assigned by Azure when the user sets up the Private Endpoint.", + "launch_stage": "GA" + }, + "private_endpoint_resource_id": { + "description": "The full resource ID of the Private Endpoint.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "private_link_service_id": { + "description": "The resource ID of the Databricks Private Link Service that this Private Endpoint connects to.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "networking.CreateEndpointRequest": { + "fields": { + "endpoint": { + "ref": "networking.Endpoint", + "launch_stage": "GA" + } + } + }, + "networking.CreatePrivateNetworkGatewayRequest": { + "fields": { + "private_network_gateway": { + "description": "The gateway to create.", + "ref": "networking.PrivateNetworkGateway", + "launch_stage": "PRIVATE_PREVIEW" + }, + "request_id": { + "description": "A unique identifier for this request. The request is idempotent when this is provided.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "networking.DatabricksServiceExceptionWithDetailsProto": { + "description": "Databricks Error that is returned by all Databricks APIs.", + "fields": { + "details": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "error_code": { + "ref": "networking.ErrorCode", + "launch_stage": "PRIVATE_PREVIEW" + }, + "message": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "stack_trace": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "networking.DeleteEndpointRequest": {}, + "networking.DeletePrivateNetworkGatewayRequest": {}, + "networking.Endpoint": { + "description": "Endpoint represents a cloud networking resource in a user's cloud account and binds it to the Databricks account.", + "fields": { + "account_id": { + "description": "The Databricks Account in which the endpoint object exists.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + }, + "aws_vpc_endpoint_info": { + "description": "Info for an AWS VPC endpoint.", + "ref": "networking.AwsVpcEndpointInfo", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "azure_private_endpoint_info": { + "description": "Info for an Azure private endpoint.", + "ref": "networking.AzurePrivateEndpointInfo", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "create_time": { + "description": "The timestamp when the endpoint was created. The timestamp is in RFC 3339 format in UTC timezone.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + }, + "display_name": { + "description": "The human-readable display name of this endpoint.\nThe input should conform to RFC-1034, which restricts to letters, numbers, and hyphens,\nwith the first character a letter, the last a letter or a number, and a 63 character maximum.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "endpoint_id": { + "description": "The unique identifier for this endpoint under the account. This field is a UUID generated by Databricks.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + }, + "gcp_psc_endpoint_info": { + "description": "Info for a GCP Private Service Connect endpoint.", + "ref": "networking.GcpPscEndpointInfo", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "name": { + "description": "The resource name of the endpoint, which uniquely identifies the endpoint.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + }, + "region": { + "description": "The cloud provider region where this endpoint is located.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "state": { + "description": "The state of the endpoint. The endpoint can only be used if the state is `APPROVED`.", + "ref": "networking.EndpointState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "use_case": { + "description": "The use case that determines the type of network connectivity this endpoint provides.\nThis field is automatically determined based on the endpoint configuration and cloud-specific settings.", + "ref": "networking.EndpointUseCase", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + } + } + }, + "networking.EndpointState": { + "enum": [ + "PENDING", + "APPROVED", + "FAILED", + "DISCONNECTED" + ], + "enum_launch_stages": { + "APPROVED": "GA", + "DISCONNECTED": "GA", + "FAILED": "GA", + "PENDING": "GA" + } + }, + "networking.EndpointUseCase": { + "enum": [ + "SERVICE_DIRECT" + ], + "enum_launch_stages": { + "SERVICE_DIRECT": "GA" + } + }, + "networking.ErrorCode": { + "description": "Error codes returned by Databricks APIs to indicate specific failure conditions.", + "enum": [ + "UNKNOWN", + "INTERNAL_ERROR", + "TEMPORARILY_UNAVAILABLE", + "IO_ERROR", + "BAD_REQUEST", + "SERVICE_UNDER_MAINTENANCE", + "WORKSPACE_TEMPORARILY_UNAVAILABLE", + "DEADLINE_EXCEEDED", + "CANCELLED", + "RESOURCE_EXHAUSTED", + "ABORTED", + "NOT_FOUND", + "ALREADY_EXISTS", + "UNAUTHENTICATED", + "UNAVAILABLE", + "INVALID_PARAMETER_VALUE", + "ENDPOINT_NOT_FOUND", + "MALFORMED_REQUEST", + "INVALID_STATE", + "PERMISSION_DENIED", + "FEATURE_DISABLED", + "CUSTOMER_UNAUTHORIZED", + "REQUEST_LIMIT_EXCEEDED", + "RESOURCE_CONFLICT", + "UNPARSEABLE_HTTP_ERROR", + "NOT_IMPLEMENTED", + "DATA_LOSS", + "INVALID_STATE_TRANSITION", + "COULD_NOT_ACQUIRE_LOCK", + "RESOURCE_ALREADY_EXISTS", + "RESOURCE_DOES_NOT_EXIST", + "QUOTA_EXCEEDED", + "MAX_BLOCK_SIZE_EXCEEDED", + "MAX_READ_SIZE_EXCEEDED", + "PARTIAL_DELETE", + "MAX_LIST_SIZE_EXCEEDED", + "DRY_RUN_FAILED", + "RESOURCE_LIMIT_EXCEEDED", + "DIRECTORY_NOT_EMPTY", + "DIRECTORY_PROTECTED", + "MAX_NOTEBOOK_SIZE_EXCEEDED", + "MAX_CHILD_NODE_SIZE_EXCEEDED", + "SEARCH_QUERY_TOO_LONG", + "SEARCH_QUERY_TOO_SHORT", + "MANAGED_RESOURCE_GROUP_DOES_NOT_EXIST", + "PERMISSION_NOT_PROPAGATED", + "DEPLOYMENT_TIMEOUT", + "GIT_CONFLICT", + "GIT_UNKNOWN_REF", + "GIT_SENSITIVE_TOKEN_DETECTED", + "GIT_URL_NOT_ON_ALLOW_LIST", + "GIT_REMOTE_ERROR", + "PROJECTS_OPERATION_TIMEOUT", + "IPYNB_FILE_IN_REPO", + "INSECURE_PARTNER_RESPONSE", + "MALFORMED_PARTNER_RESPONSE", + "METASTORE_DOES_NOT_EXIST", + "DAC_DOES_NOT_EXIST", + "CATALOG_DOES_NOT_EXIST", + "SCHEMA_DOES_NOT_EXIST", + "TABLE_DOES_NOT_EXIST", + "SHARE_DOES_NOT_EXIST", + "RECIPIENT_DOES_NOT_EXIST", + "STORAGE_CREDENTIAL_DOES_NOT_EXIST", + "EXTERNAL_LOCATION_DOES_NOT_EXIST", + "PRINCIPAL_DOES_NOT_EXIST", + "PROVIDER_DOES_NOT_EXIST", + "METASTORE_ALREADY_EXISTS", + "DAC_ALREADY_EXISTS", + "CATALOG_ALREADY_EXISTS", + "SCHEMA_ALREADY_EXISTS", + "TABLE_ALREADY_EXISTS", + "SHARE_ALREADY_EXISTS", + "RECIPIENT_ALREADY_EXISTS", + "STORAGE_CREDENTIAL_ALREADY_EXISTS", + "EXTERNAL_LOCATION_ALREADY_EXISTS", + "PROVIDER_ALREADY_EXISTS", + "CATALOG_NOT_EMPTY", + "SCHEMA_NOT_EMPTY", + "METASTORE_NOT_EMPTY", + "PROVIDER_SHARE_NOT_ACCESSIBLE" + ], + "enum_launch_stages": { + "ABORTED": "PRIVATE_PREVIEW", + "ALREADY_EXISTS": "PRIVATE_PREVIEW", + "BAD_REQUEST": "PRIVATE_PREVIEW", + "CANCELLED": "PRIVATE_PREVIEW", + "CATALOG_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "CATALOG_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "CATALOG_NOT_EMPTY": "PRIVATE_PREVIEW", + "COULD_NOT_ACQUIRE_LOCK": "PRIVATE_PREVIEW", + "CUSTOMER_UNAUTHORIZED": "PRIVATE_PREVIEW", + "DAC_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "DAC_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "DATA_LOSS": "PRIVATE_PREVIEW", + "DEADLINE_EXCEEDED": "PRIVATE_PREVIEW", + "DEPLOYMENT_TIMEOUT": "PRIVATE_PREVIEW", + "DIRECTORY_NOT_EMPTY": "PRIVATE_PREVIEW", + "DIRECTORY_PROTECTED": "PRIVATE_PREVIEW", + "DRY_RUN_FAILED": "PRIVATE_PREVIEW", + "ENDPOINT_NOT_FOUND": "PRIVATE_PREVIEW", + "EXTERNAL_LOCATION_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "EXTERNAL_LOCATION_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "FEATURE_DISABLED": "PRIVATE_PREVIEW", + "GIT_CONFLICT": "PRIVATE_PREVIEW", + "GIT_REMOTE_ERROR": "PRIVATE_PREVIEW", + "GIT_SENSITIVE_TOKEN_DETECTED": "PRIVATE_PREVIEW", + "GIT_UNKNOWN_REF": "PRIVATE_PREVIEW", + "GIT_URL_NOT_ON_ALLOW_LIST": "PRIVATE_PREVIEW", + "INSECURE_PARTNER_RESPONSE": "PRIVATE_PREVIEW", + "INTERNAL_ERROR": "PRIVATE_PREVIEW", + "INVALID_PARAMETER_VALUE": "PRIVATE_PREVIEW", + "INVALID_STATE": "PRIVATE_PREVIEW", + "INVALID_STATE_TRANSITION": "PRIVATE_PREVIEW", + "IO_ERROR": "PRIVATE_PREVIEW", + "IPYNB_FILE_IN_REPO": "PRIVATE_PREVIEW", + "MALFORMED_PARTNER_RESPONSE": "PRIVATE_PREVIEW", + "MALFORMED_REQUEST": "PRIVATE_PREVIEW", + "MANAGED_RESOURCE_GROUP_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "MAX_BLOCK_SIZE_EXCEEDED": "PRIVATE_PREVIEW", + "MAX_CHILD_NODE_SIZE_EXCEEDED": "PRIVATE_PREVIEW", + "MAX_LIST_SIZE_EXCEEDED": "PRIVATE_PREVIEW", + "MAX_NOTEBOOK_SIZE_EXCEEDED": "PRIVATE_PREVIEW", + "MAX_READ_SIZE_EXCEEDED": "PRIVATE_PREVIEW", + "METASTORE_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "METASTORE_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "METASTORE_NOT_EMPTY": "PRIVATE_PREVIEW", + "NOT_FOUND": "PRIVATE_PREVIEW", + "NOT_IMPLEMENTED": "PRIVATE_PREVIEW", + "PARTIAL_DELETE": "PRIVATE_PREVIEW", + "PERMISSION_DENIED": "PRIVATE_PREVIEW", + "PERMISSION_NOT_PROPAGATED": "PRIVATE_PREVIEW", + "PRINCIPAL_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "PROJECTS_OPERATION_TIMEOUT": "PRIVATE_PREVIEW", + "PROVIDER_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "PROVIDER_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "PROVIDER_SHARE_NOT_ACCESSIBLE": "PRIVATE_PREVIEW", + "QUOTA_EXCEEDED": "PRIVATE_PREVIEW", + "RECIPIENT_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "RECIPIENT_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "REQUEST_LIMIT_EXCEEDED": "PRIVATE_PREVIEW", + "RESOURCE_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "RESOURCE_CONFLICT": "PRIVATE_PREVIEW", + "RESOURCE_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "RESOURCE_EXHAUSTED": "PRIVATE_PREVIEW", + "RESOURCE_LIMIT_EXCEEDED": "PRIVATE_PREVIEW", + "SCHEMA_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "SCHEMA_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "SCHEMA_NOT_EMPTY": "PRIVATE_PREVIEW", + "SEARCH_QUERY_TOO_LONG": "PRIVATE_PREVIEW", + "SEARCH_QUERY_TOO_SHORT": "PRIVATE_PREVIEW", + "SERVICE_UNDER_MAINTENANCE": "PRIVATE_PREVIEW", + "SHARE_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "SHARE_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "STORAGE_CREDENTIAL_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "STORAGE_CREDENTIAL_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "TABLE_ALREADY_EXISTS": "PRIVATE_PREVIEW", + "TABLE_DOES_NOT_EXIST": "PRIVATE_PREVIEW", + "TEMPORARILY_UNAVAILABLE": "PRIVATE_PREVIEW", + "UNAUTHENTICATED": "PRIVATE_PREVIEW", + "UNAVAILABLE": "PRIVATE_PREVIEW", + "UNKNOWN": "PRIVATE_PREVIEW", + "UNPARSEABLE_HTTP_ERROR": "PRIVATE_PREVIEW", + "WORKSPACE_TEMPORARILY_UNAVAILABLE": "PRIVATE_PREVIEW" + } + }, + "networking.GcpPscEndpointInfo": { + "fields": { + "endpoint_region": { + "description": "The GCP region of the PSC connection endpoint. Provided by the customer when registering an\nexisting PSC endpoint. GCP supports only same-region PSC, so this must match the workspace\nregion.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "project_id": { + "description": "The GCP consumer project ID in which this PSC endpoint is created. Provided by the customer\nwhen registering an existing PSC endpoint.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "psc_connection_id": { + "description": "The ID of the underlying Private Service Connect connection in the GCP consumer project,\nassigned by GCP when the PSC connection is created.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + }, + "psc_endpoint": { + "description": "The name of this PSC connection in the GCP consumer project. Provided by the customer when\nregistering an existing PSC endpoint.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE" + ] + }, + "service_attachment_id": { + "description": "The ID of the Databricks service attachment this PSC endpoint connects to.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + } + } + }, + "networking.GetEndpointRequest": {}, + "networking.GetOperationRequest": {}, + "networking.GetPrivateNetworkGatewayRequest": {}, + "networking.ListEndpointsRequest": { + "fields": { + "page_size": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "networking.ListEndpointsResponse": { + "fields": { + "items": { + "launch_stage": "GA" + }, + "next_page_token": { + "launch_stage": "GA" + } + } + }, + "networking.ListPrivateNetworkGatewaysRequest": { + "fields": { + "page_token": { + "description": "An opaque token returned by a previous list request.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "networking.ListPrivateNetworkGatewaysResponse": { + "fields": { + "next_page_token": { + "description": "An opaque token for the next page, or empty when there are no more results.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "private_network_gateways": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "networking.Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "fields": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "error": { + "description": "The error result of the operation in case of failure or cancellation.", + "ref": "networking.DatabricksServiceExceptionWithDetailsProto", + "launch_stage": "PRIVATE_PREVIEW" + }, + "metadata": { + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should be a resource name ending with `operations/{unique_id}`.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "response": { + "description": "The normal, successful response of the operation.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "networking.PrivateNetworkGateway": { + "description": "A private network gateway connects serverless compute to destinations in a\ncustomer-managed VPC or VNet.", + "fields": { + "aws_cloud_connection": { + "description": "The AWS connection used by the gateway.", + "ref": "networking.PrivateNetworkGatewayAwsCloudConnection", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "azure_cloud_connection": { + "description": "The Azure connection used by the gateway.", + "ref": "networking.PrivateNetworkGatewayAzureCloudConnection", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "bandwidth_tier_gigabits_per_second": { + "description": "The provisioned bandwidth tier for an Azure gateway, in gigabits per second.\nRequired when creating an Azure gateway.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "create_time": { + "description": "The time when the gateway was created.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "destinations": { + "description": "The destinations routed through this gateway.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "display_name": { + "description": "The human-readable name of the gateway.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "error_message": { + "description": "The failure reason when the gateway is in the FAILED state.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "The canonical resource name of the gateway, in the form\n`accounts/{account_id}/network-connectivity-configs/{ncc_id}/private-network-gateways/{gateway_id}`.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "private_dns_resolvers": { + "description": "The DNS resolvers used for private name resolution.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "state": { + "description": "The current lifecycle state of the gateway.", + "ref": "networking.PrivateNetworkGatewayGatewayState", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "traffic_mode": { + "description": "The traffic routed through this gateway.", + "ref": "networking.PrivateNetworkGatewayTrafficMode", + "launch_stage": "PRIVATE_PREVIEW" + }, + "update_time": { + "description": "The time when the gateway was last updated.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "networking.PrivateNetworkGatewayAwsCloudConnection": { + "description": "AWS connection configuration.", + "fields": { + "cross_account_role": { + "description": "The IAM role that Databricks assumes to manage gateway resources.", + "ref": "networking.PrivateNetworkGatewayAwsCloudConnectionCrossAccountRole", + "launch_stage": "PRIVATE_PREVIEW" + }, + "gateway_subnets": { + "description": "The subnets where the gateway establishes connectivity.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "security_group_ids": { + "description": "The security groups attached to the gateway network interface.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "networking.PrivateNetworkGatewayAwsCloudConnectionAwsGatewaySubnet": { + "description": "An AWS subnet used by the gateway.", + "fields": { + "subnet_id": { + "description": "The AWS subnet ID.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "networking.PrivateNetworkGatewayAwsCloudConnectionCrossAccountRole": { + "description": "A cross-account IAM role used to manage gateway resources.", + "fields": { + "role_arn": { + "description": "The ARN of the IAM role.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "networking.PrivateNetworkGatewayAzureCloudConnection": { + "description": "Azure connection configuration.", + "fields": { + "gateway_subnet": { + "description": "The subnet where the gateway establishes connectivity.", + "ref": "networking.PrivateNetworkGatewayAzureCloudConnectionAzureGatewaySubnet", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "networking.PrivateNetworkGatewayAzureCloudConnectionAzureGatewaySubnet": { + "description": "An Azure subnet used by the gateway.", + "fields": { + "resource_id": { + "description": "The full Azure resource ID of the subnet.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "networking.PrivateNetworkGatewayDestination": { + "description": "A destination routed through the gateway.", + "fields": { + "destination_type": { + "description": "The destination type.", + "ref": "networking.PrivateNetworkGatewayDestinationDestinationType", + "launch_stage": "PRIVATE_PREVIEW" + }, + "value": { + "description": "The destination value.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "networking.PrivateNetworkGatewayDestinationDestinationType": { + "description": "The supported destination types.", + "enum": [ + "DNS_NAME" + ], + "enum_launch_stages": { + "DNS_NAME": "PRIVATE_PREVIEW" + } + }, + "networking.PrivateNetworkGatewayGatewayState": { + "description": "The lifecycle state of the gateway.", + "enum": [ + "CREATING", + "ESTABLISHED", + "FAILED", + "DELETING" + ], + "enum_launch_stages": { + "CREATING": "PRIVATE_PREVIEW", + "DELETING": "PRIVATE_PREVIEW", + "ESTABLISHED": "PRIVATE_PREVIEW", + "FAILED": "PRIVATE_PREVIEW" + } + }, + "networking.PrivateNetworkGatewayOperationMetadata": { + "fields": { + "operation_type": { + "description": "The operation performed on the gateway.", + "ref": "networking.PrivateNetworkGatewayOperationMetadataOperationType", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "networking.PrivateNetworkGatewayOperationMetadataOperationType": { + "enum": [ + "CREATE" + ], + "enum_launch_stages": { + "CREATE": "PRIVATE_PREVIEW" + } + }, + "networking.PrivateNetworkGatewayPrivateDnsResolver": { + "description": "A private DNS resolver used by the gateway.", + "fields": { + "resolver_type": { + "description": "The resolver type.", + "ref": "networking.PrivateNetworkGatewayPrivateDnsResolverResolverType", + "launch_stage": "PRIVATE_PREVIEW" + }, + "value": { + "description": "The resolver value.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "networking.PrivateNetworkGatewayPrivateDnsResolverResolverType": { + "description": "The supported resolver types.", + "enum": [ + "IP_ADDRESS" + ], + "enum_launch_stages": { + "IP_ADDRESS": "PRIVATE_PREVIEW" + } + }, + "networking.PrivateNetworkGatewayTrafficMode": { + "description": "The traffic routed through the gateway.", + "enum": [ + "SPECIFIC_DESTINATIONS", + "ALL_TRAFFIC" + ], + "enum_launch_stages": { + "ALL_TRAFFIC": "PRIVATE_PREVIEW", + "SPECIFIC_DESTINATIONS": "PRIVATE_PREVIEW" + } + }, + "networking.UpdatePrivateNetworkGatewayRequest": { + "fields": { + "private_network_gateway": { + "description": "The gateway containing the desired mutable field values.", + "ref": "networking.PrivateNetworkGateway", + "launch_stage": "PRIVATE_PREVIEW" + }, + "update_mask": { + "description": "The fields to update.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "oauth2.CreateAccountFederationPolicyRequest": { + "fields": { + "policy": { + "ref": "oauth2.FederationPolicy", + "launch_stage": "GA" + }, + "policy_id": { + "description": "The identifier for the federation policy. The identifier must contain only lowercase\nalphanumeric characters, numbers, hyphens, and slashes. If unspecified, the id will be\nassigned by Databricks.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "oauth2.CreateCustomAppIntegration": { + "fields": { + "confidential": { + "description": "This field indicates whether an OAuth client secret is required to authenticate this client.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the custom OAuth app", + "launch_stage": "GA" + }, + "redirect_urls": { + "description": "List of OAuth redirect urls", + "launch_stage": "GA" + }, + "scopes": { + "description": "OAuth scopes granted to the application.\nSupported scopes: all-apis, sql, offline_access, openid, profile, email.", + "launch_stage": "GA" + }, + "token_access_policy": { + "description": "Token access policy", + "ref": "oauth2.TokenAccessPolicy", + "launch_stage": "GA" + }, + "user_authorized_scopes": { + "description": "Scopes that will need to be consented by end user to mint the access token. If the user does\nnot authorize the access token will not be minted.\nMust be a subset of scopes.", + "launch_stage": "GA" + } + } + }, + "oauth2.CreateCustomAppIntegrationOutput": { + "fields": { + "client_id": { + "description": "OAuth client-id generated by the Databricks", + "launch_stage": "GA" + }, + "client_secret": { + "description": "OAuth client-secret generated by the Databricks.\nIf this is a confidential OAuth app client-secret will be generated.", + "launch_stage": "GA" + }, + "integration_id": { + "description": "Unique integration id for the custom OAuth app", + "launch_stage": "GA" + } + } + }, + "oauth2.CreatePublishedAppIntegration": { + "fields": { + "app_id": { + "description": "App id of the OAuth published app integration.\nFor example power-bi, tableau-deskop", + "launch_stage": "GA" + }, + "token_access_policy": { + "description": "Token access policy", + "ref": "oauth2.TokenAccessPolicy", + "launch_stage": "GA" + } + } + }, + "oauth2.CreatePublishedAppIntegrationOutput": { + "fields": { + "integration_id": { + "description": "Unique integration id for the published OAuth app", + "launch_stage": "GA" + } + } + }, + "oauth2.CreateServicePrincipalFederationPolicyRequest": { + "fields": { + "policy": { + "ref": "oauth2.FederationPolicy", + "launch_stage": "GA" + }, + "policy_id": { + "description": "The identifier for the federation policy. The identifier must contain only lowercase\nalphanumeric characters, numbers, hyphens, and slashes. If unspecified, the id will be\nassigned by Databricks.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "oauth2.CreateServicePrincipalSecretRequest": { + "fields": { + "lifetime": { + "description": "The lifetime of the secret in seconds. If this parameter is not provided, the secret will have a default lifetime of 730 days (63072000s).", + "launch_stage": "GA" + }, + "scopes": { + "description": "OAuth API scopes to bind to the secret; a minted token cannot exceed them.\nEmpty = unrestricted (all-apis). E.g. all-apis, sql, iam.groups:read.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "oauth2.CreateServicePrincipalSecretResponse": { + "fields": { + "create_time": { + "description": "UTC time when the secret was created", + "launch_stage": "GA" + }, + "expire_time": { + "description": "UTC time when the secret will expire. If the field is not present, the secret does not expire.", + "launch_stage": "GA" + }, + "id": { + "description": "ID of the secret", + "launch_stage": "GA" + }, + "scopes": { + "description": "OAuth API scopes bound to this secret. Empty = unrestricted (all-apis).", + "launch_stage": "PUBLIC_BETA" + }, + "secret": { + "description": "Secret Value", + "launch_stage": "GA" + }, + "secret_hash": { + "description": "Secret Hash", + "launch_stage": "GA" + }, + "status": { + "description": "Status of the secret", + "launch_stage": "GA" + }, + "update_time": { + "description": "UTC time when the secret was updated", + "launch_stage": "GA" + } + } + }, + "oauth2.DeleteAccountFederationPolicyRequest": {}, + "oauth2.DeleteCustomAppIntegrationOutput": {}, + "oauth2.DeleteCustomAppIntegrationRequest": {}, + "oauth2.DeletePublishedAppIntegrationOutput": {}, + "oauth2.DeletePublishedAppIntegrationRequest": {}, + "oauth2.DeleteServicePrincipalFederationPolicyRequest": {}, + "oauth2.DeleteServicePrincipalSecretRequest": {}, + "oauth2.FederationPolicy": { + "fields": { + "create_time": { + "description": "Creation time of the federation policy.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "Description of the federation policy.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Resource name for the federation policy. Example values include\n`accounts/\u003caccount-id\u003e/federationPolicies/my-federation-policy` for Account Federation Policies, and\n`accounts/\u003caccount-id\u003e/servicePrincipals/\u003cservice-principal-id\u003e/federationPolicies/my-federation-policy`\nfor Service Principal Federation Policies. Typically an output parameter, which does not need to be\nspecified in create or update requests. If specified in a request, must match the value in the\nrequest URL.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + }, + "oidc_policy": { + "description": "audit_mode INCLUDE is required on both this message field and its leaf fields so the OIDC\npolicy configuration is captured in create/update audit logs (see go/auditlogs).", + "ref": "oauth2.OidcFederationPolicy", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "policy_id": { + "description": "The ID of the federation policy. Output only.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL", + "OUTPUT_ONLY" + ] + }, + "service_principal_id": { + "description": "The service principal ID that this federation policy applies to. Output only. Only set for service principal federation policies.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL", + "OUTPUT_ONLY" + ] + }, + "uid": { + "description": "Unique, immutable id of the federation policy.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "Last update time of the federation policy.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "oauth2.GetAccountFederationPolicyRequest": {}, + "oauth2.GetCustomAppIntegrationOutput": { + "fields": { + "client_id": { + "description": "The client id of the custom OAuth app", + "launch_stage": "GA" + }, + "confidential": { + "description": "This field indicates whether an OAuth client secret is required to authenticate this client.", + "launch_stage": "GA" + }, + "create_time": { + "launch_stage": "GA" + }, + "created_by": { + "launch_stage": "GA" + }, + "creator_username": { + "launch_stage": "GA" + }, + "integration_id": { + "description": "ID of this custom app", + "launch_stage": "GA" + }, + "name": { + "description": "The display name of the custom OAuth app", + "launch_stage": "GA" + }, + "redirect_urls": { + "description": "List of OAuth redirect urls", + "launch_stage": "GA" + }, + "scopes": { + "launch_stage": "GA" + }, + "token_access_policy": { + "description": "Token access policy", + "ref": "oauth2.TokenAccessPolicy", + "launch_stage": "GA" + }, + "user_authorized_scopes": { + "description": "Scopes that will need to be consented by end user to mint the access token. If the user does\nnot authorize the access token will not be minted.\nMust be a subset of scopes.", + "launch_stage": "GA" + } + } + }, + "oauth2.GetCustomAppIntegrationRequest": {}, + "oauth2.GetCustomAppIntegrationsOutput": { + "fields": { + "apps": { + "description": "List of Custom OAuth App Integrations defined for the account.", + "launch_stage": "GA" + }, + "next_page_token": { + "launch_stage": "GA" + } + } + }, + "oauth2.GetPublishedAppIntegrationOutput": { + "fields": { + "app_id": { + "description": "App-id of the published app integration", + "launch_stage": "GA" + }, + "create_time": { + "launch_stage": "GA" + }, + "created_by": { + "launch_stage": "GA" + }, + "integration_id": { + "description": "Unique integration id for the published OAuth app", + "launch_stage": "GA" + }, + "name": { + "description": "Display name of the published OAuth app", + "launch_stage": "GA" + }, + "token_access_policy": { + "description": "Token access policy", + "ref": "oauth2.TokenAccessPolicy", + "launch_stage": "GA" + } + } + }, + "oauth2.GetPublishedAppIntegrationRequest": {}, + "oauth2.GetPublishedAppIntegrationsOutput": { + "fields": { + "apps": { + "description": "List of Published OAuth App Integrations defined for the account.", + "launch_stage": "GA" + }, + "next_page_token": { + "launch_stage": "GA" + } + } + }, + "oauth2.GetPublishedAppsOutput": { + "fields": { + "apps": { + "description": "List of Published OAuth Apps.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "A token that can be used to get the next page of results. If not present, there are no more results to show.", + "launch_stage": "GA" + } + } + }, + "oauth2.GetServicePrincipalFederationPolicyRequest": {}, + "oauth2.ListAccountFederationPoliciesRequest": { + "fields": { + "page_size": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "oauth2.ListCustomAppIntegrationsRequest": { + "fields": { + "include_creator_username": { + "launch_stage": "GA" + }, + "page_size": { + "launch_stage": "GA" + }, + "page_token": { + "launch_stage": "GA" + } + } + }, + "oauth2.ListFederationPoliciesResponse": { + "fields": { + "next_page_token": { + "launch_stage": "GA" + }, + "policies": { + "launch_stage": "GA" + } + } + }, + "oauth2.ListOAuthPublishedAppsRequest": { + "fields": { + "page_size": { + "description": "The max number of OAuth published apps to return in one page.", + "launch_stage": "GA" + }, + "page_token": { + "description": "A token that can be used to get the next page of results.", + "launch_stage": "GA" + } + } + }, + "oauth2.ListPublishedAppIntegrationsRequest": { + "fields": { + "page_size": { + "launch_stage": "GA" + }, + "page_token": { + "launch_stage": "GA" + } + } + }, + "oauth2.ListServicePrincipalFederationPoliciesRequest": { + "fields": { + "page_size": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "oauth2.ListServicePrincipalSecretsRequest": { + "fields": { + "page_size": { + "launch_stage": "GA" + }, + "page_token": { + "description": "An opaque page token which was the `next_page_token` in the response of the previous request to list the secrets for this service principal. Provide this token to retrieve the next page of secret entries.\nWhen providing a `page_token`, all other parameters provided to the request must match the previous request.\nTo list all of the secrets for a service principal, it is necessary to continue requesting pages of entries until the response contains no `next_page_token`. Note that the number of entries returned must not be used to determine when the listing is complete.", + "launch_stage": "GA" + } + } + }, + "oauth2.ListServicePrincipalSecretsResponse": { + "fields": { + "next_page_token": { + "description": "A token, which can be sent as `page_token` to retrieve the next page.", + "launch_stage": "GA" + }, + "secrets": { + "description": "List of the secrets", + "launch_stage": "GA" + } + } + }, + "oauth2.OidcFederationPolicy": { + "description": "Specifies the policy to use for validating OIDC claims in your federated tokens.", + "fields": { + "audiences": { + "description": "The allowed token audiences, as specified in the 'aud' claim of federated tokens.\nThe audience identifier is intended to represent the recipient of the token.\nCan be any non-empty string value. As long as the audience in the token matches\nat least one audience in the policy, the token is considered a match. If audiences\nis unspecified, defaults to your Databricks account id.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "issuer": { + "description": "The required token issuer, as specified in the 'iss' claim of federated tokens.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "jwks_json": { + "description": "The public keys used to validate the signature of federated tokens, in JWKS format.\nMost use cases should not need to specify this field. If jwks_uri and jwks_json\nare both unspecified (recommended), Databricks automatically fetches the public\nkeys from your issuer’s well known endpoint. Databricks strongly recommends\nrelying on your issuer’s well known endpoint for discovering public keys.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "jwks_uri": { + "description": "URL of the public keys used to validate the signature of federated tokens, in\nJWKS format. Most use cases should not need to specify this field. If jwks_uri\nand jwks_json are both unspecified (recommended), Databricks automatically\nfetches the public keys from your issuer’s well known endpoint. Databricks\nstrongly recommends relying on your issuer’s well known endpoint for discovering\npublic keys.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "subject": { + "description": "The required token subject, as specified in the subject claim of federated tokens.\nMust be specified for service principal federation policies. Must not be specified\nfor account federation policies.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "subject_claim": { + "description": "The claim that contains the subject of the token. If unspecified, the default value\nis 'sub'.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "oauth2.PublishedAppOutput": { + "fields": { + "app_id": { + "description": "Unique ID of the published OAuth app.", + "launch_stage": "GA" + }, + "client_id": { + "description": "Client ID of the published OAuth app. It is the client_id in the OAuth flow", + "launch_stage": "GA" + }, + "description": { + "description": "Description of the published OAuth app.", + "launch_stage": "GA" + }, + "is_confidential_client": { + "description": "Whether the published OAuth app is a confidential client. It is always false for published OAuth apps.", + "launch_stage": "GA" + }, + "name": { + "description": "The display name of the published OAuth app.", + "launch_stage": "GA" + }, + "redirect_urls": { + "description": "Redirect URLs of the published OAuth app.", + "launch_stage": "GA" + }, + "scopes": { + "description": "Required scopes for the published OAuth app.", + "launch_stage": "GA" + } + } + }, + "oauth2.SecretInfo": { + "fields": { + "create_time": { + "description": "UTC time when the secret was created", + "launch_stage": "GA" + }, + "expire_time": { + "description": "UTC time when the secret will expire. If the field is not present, the secret does not expire.", + "launch_stage": "GA" + }, + "id": { + "description": "ID of the secret", + "launch_stage": "GA" + }, + "scopes": { + "description": "OAuth API scopes bound to this secret. Empty = unrestricted (all-apis).", + "launch_stage": "PUBLIC_BETA" + }, + "secret_hash": { + "description": "Secret Hash", + "launch_stage": "GA" + }, + "status": { + "description": "Status of the secret", + "launch_stage": "GA" + }, + "update_time": { + "description": "UTC time when the secret was updated", + "launch_stage": "GA" + } + } + }, + "oauth2.TokenAccessPolicy": { + "fields": { + "absolute_session_lifetime_in_minutes": { + "description": "Absolute OAuth session TTL in minutes. Effective only when the single-use refresh token feature is enabled.\nThis is the absolute TTL of all refresh tokens issued in one OAuth session. When a new refresh token is issued\nduring refresh token rotation, it will inherit the same absolute TTL as the old refresh token.\nIn other words, this represents the maximum amount of time a user can stay logged in without re-authenticating.", + "launch_stage": "PUBLIC_BETA" + }, + "access_token_ttl_in_minutes": { + "description": "access token time to live in minutes", + "launch_stage": "GA" + }, + "enable_single_use_refresh_tokens": { + "description": "Whether to enable single-use refresh tokens (refresh token rotation).\nIf this feature is enabled, upon successfully getting a new access token using a refresh token, Databricks will\nissue a new refresh token along with the access token in the response and invalidate the old refresh token.\nThe client should use the new refresh token to get access tokens in future requests.", + "launch_stage": "PUBLIC_BETA" + }, + "refresh_token_ttl_in_minutes": { + "description": "Refresh token time to live in minutes.\nWhen single-use refresh tokens are enabled, this represents the TTL of an individual refresh token.\nIf the refresh token is used before it expires, a new one is issued with a renewed individual TTL.", + "launch_stage": "GA" + } + } + }, + "oauth2.UpdateAccountFederationPolicyRequest": { + "fields": { + "policy": { + "ref": "oauth2.FederationPolicy", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The field mask specifies which fields of the policy to update. To specify multiple fields\nin the field mask, use comma as the separator (no space). The special value '*' indicates\nthat all fields should be updated (full replacement). If unspecified, all fields that are\nset in the policy provided in the update request will overwrite the corresponding fields\nin the existing policy. Example value: 'description,oidc_policy.audiences'.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "oauth2.UpdateCustomAppIntegration": { + "fields": { + "redirect_urls": { + "description": "List of OAuth redirect urls to be updated in the custom OAuth app integration", + "launch_stage": "GA" + }, + "scopes": { + "description": "List of OAuth scopes to be updated in the custom OAuth app integration, similar to redirect URIs this will fully\nreplace the existing values instead of appending", + "launch_stage": "GA" + }, + "token_access_policy": { + "description": "Token access policy to be updated in the custom OAuth app integration", + "ref": "oauth2.TokenAccessPolicy", + "launch_stage": "GA" + }, + "user_authorized_scopes": { + "description": "Scopes that will need to be consented by end user to mint the access token. If the user does\nnot authorize the access token will not be minted.\nMust be a subset of scopes.", + "launch_stage": "GA" + } + } + }, + "oauth2.UpdateCustomAppIntegrationOutput": {}, + "oauth2.UpdatePublishedAppIntegration": { + "fields": { + "token_access_policy": { + "description": "Token access policy to be updated in the published OAuth app integration", + "ref": "oauth2.TokenAccessPolicy", + "launch_stage": "GA" + } + } + }, + "oauth2.UpdatePublishedAppIntegrationOutput": {}, + "oauth2.UpdateServicePrincipalFederationPolicyRequest": { + "fields": { + "policy": { + "ref": "oauth2.FederationPolicy", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The field mask specifies which fields of the policy to update. To specify multiple fields\nin the field mask, use comma as the separator (no space). The special value '*' indicates\nthat all fields should be updated (full replacement). If unspecified, all fields that are\nset in the policy provided in the update request will overwrite the corresponding fields\nin the existing policy. Example value: 'description,oidc_policy.audiences'.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "pipelines.ApiSourceConnectorConfig": { + "description": "Top-level configuration for API Source connectors with arbitrary configuration.", + "fields": { + "configs": { + "description": "Arbitrary key-value configuration values for the API Source connector.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.ApiSourceConnectorOptions": { + "description": "Options for API Source connectors with arbitrary configuration.", + "fields": { + "options": { + "description": "Arbitrary key-value configuration options for the API Source connector.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.ApplyEnvironmentRequest": {}, + "pipelines.ApplyEnvironmentRequestResponse": {}, + "pipelines.AutoFullRefreshPolicy": { + "description": "Policy for auto full refresh.", + "fields": { + "enabled": { + "description": "(Required, Mutable) Whether to enable auto full refresh or not.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "min_interval_hours": { + "description": "(Optional, Mutable) Specify the minimum interval in hours between the timestamp\nat which a table was last full refreshed and the current timestamp for triggering auto full\nIf unspecified and autoFullRefresh is enabled then by default min_interval_hours is 24 hours.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.AvroTransformerOptions": { + "fields": { + "parse_mode": { + "description": "(Optional) Parse mode for Avro data.\nValid values: FAILFAST, PERMISSIVE. Defaults to PERMISSIVE.", + "ref": "pipelines.ParseMode", + "launch_stage": "PUBLIC_BETA" + }, + "schema": { + "description": "Inline Avro JSON schema string.", + "launch_stage": "PUBLIC_BETA" + }, + "schema_file_path": { + "description": "Path to a schema file (.avsc).", + "launch_stage": "PUBLIC_BETA" + }, + "schema_registry": { + "description": "(Optional) Schema registry to resolve the Avro schema at runtime instead of\nproviding it inline or via a file path.", + "ref": "pipelines.SchemaRegistryConfig", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "pipelines.CloneMode": { + "description": "Enum to specify which mode of clone to execute", + "enum": [ + "MIGRATE_TO_UC" + ], + "enum_launch_stages": { + "MIGRATE_TO_UC": "GA" + } + }, + "pipelines.ClonePipelineRequest": { + "fields": { + "allow_duplicate_names": { + "description": "If false, deployment will fail if name conflicts with that of another pipeline.", + "launch_stage": "GA" + }, + "budget_policy_id": { + "description": "Budget policy of this pipeline.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "catalog": { + "description": "A catalog in Unity Catalog to publish data from this pipeline to. If `target` is specified, tables in this pipeline are published to a `target` schema inside `catalog` (for example, `catalog`.`target`.`table`). If `target` is not specified, no data is published to Unity Catalog.", + "launch_stage": "GA" + }, + "channel": { + "description": "SDP Release Channel that specifies which version to use.", + "launch_stage": "GA" + }, + "clone_mode": { + "description": "The type of clone to perform. Currently, only deep copies are supported", + "ref": "pipelines.CloneMode", + "launch_stage": "GA" + }, + "clusters": { + "description": "Cluster settings for this pipeline deployment. Applies to classic\n(non-serverless) pipelines. Omit this field when `serverless` is `true`.", + "launch_stage": "GA" + }, + "configuration": { + "description": "String-String configuration for this pipeline execution.", + "launch_stage": "GA" + }, + "continuous": { + "description": "Whether the pipeline is continuous or triggered. This replaces `trigger`.\n\nDeprecated: wrap the pipeline in a continuous job instead, which also lets you take advantage\nof job-level settings such as performance mode. When the pipeline is started by a continuous\njob, the job's setting takes precedence and this field is ignored.", + "deprecated": true, + "launch_stage": "GA" + }, + "deployment": { + "description": "Deployment type of this pipeline.", + "ref": "pipelines.PipelineDeployment", + "launch_stage": "GA" + }, + "development": { + "description": "Whether the pipeline is in Development mode. Defaults to false.\n\nDeprecated: set development mode for each update instead.", + "deprecated": true, + "launch_stage": "GA" + }, + "edition": { + "description": "Pipeline product edition.", + "launch_stage": "GA" + }, + "environment": { + "description": "Environment specification for this pipeline used to install dependencies.", + "ref": "pipelines.PipelinesEnvironment", + "launch_stage": "PUBLIC_PREVIEW" + }, + "event_log": { + "description": "Event log configuration for this pipeline", + "ref": "pipelines.EventLogSpec", + "launch_stage": "GA" + }, + "expected_last_modified": { + "description": "If present, the last-modified time of the pipeline settings before the clone.\nIf the settings were modified after that time, then the request will fail with\na conflict.", + "launch_stage": "GA" + }, + "filters": { + "description": "Filters on which Pipeline packages to include in the deployed graph.", + "ref": "pipelines.Filters", + "launch_stage": "GA" + }, + "gateway_definition": { + "description": "The definition of a gateway pipeline to support change data capture.", + "ref": "pipelines.IngestionGatewayPipelineDefinition", + "launch_stage": "PRIVATE_PREVIEW" + }, + "id": { + "description": "Unique identifier for this pipeline.", + "launch_stage": "GA" + }, + "ingestion_definition": { + "description": "The configuration for a managed ingestion pipeline. These settings cannot be used with the 'libraries', 'schema', 'target', or 'catalog' settings.", + "ref": "pipelines.IngestionPipelineDefinition", + "launch_stage": "PUBLIC_PREVIEW" + }, + "libraries": { + "description": "Libraries or code needed by this deployment.", + "launch_stage": "GA" + }, + "name": { + "description": "Friendly identifier for this pipeline.", + "launch_stage": "GA" + }, + "notifications": { + "description": "List of notification settings for this pipeline.", + "launch_stage": "GA" + }, + "parent_path": { + "description": "Path of the pipeline parent folder in workspace file tree.\n\nIf absent, the pipeline doesn't have a workspace object.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "photon": { + "description": "Whether Photon is enabled for this pipeline.", + "launch_stage": "GA" + }, + "restart_window": { + "description": "Restart window of this pipeline.", + "ref": "pipelines.RestartWindow", + "launch_stage": "PRIVATE_PREVIEW" + }, + "root_path": { + "description": "Root path for this pipeline.\nThis is used as the root directory when editing the pipeline in the Databricks user interface and it is\nadded to sys.path when executing Python sources during pipeline execution.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schema": { + "description": "The default schema (database) where tables are read from or published to.", + "launch_stage": "GA" + }, + "serverless": { + "description": "Whether serverless compute is enabled for this pipeline. Serverless is the\nrecommended compute for new pipelines; set this to `true` to run the pipeline\non serverless. For notebook/file pipelines, omitting this field uses classic\ncompute configured through the `clusters` field. When `true`, omit `clusters`;\nPhoton is always enabled.", + "launch_stage": "GA" + }, + "serverless_compute_id": { + "description": "Serverless compute ID specified by the user for serverless pipelines.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "storage": { + "description": "DBFS root directory for storing checkpoints and tables.", + "launch_stage": "GA" + }, + "tags": { + "description": "A map of tags associated with the pipeline.\nThese are forwarded to the cluster as cluster tags, and are therefore subject to the same limitations.\nA maximum of 25 tags can be added to the pipeline.", + "launch_stage": "GA" + }, + "target": { + "description": "Target schema (database) to add tables in this pipeline to. Exactly one of `schema` or `target` must be specified. To publish to Unity Catalog, also specify `catalog`. This legacy field is deprecated for pipeline creation in favor of the `schema` field.", + "deprecated": true, + "launch_stage": "GA" + }, + "trigger": { + "description": "Which pipeline trigger to use. Deprecated: Use `continuous` instead.", + "ref": "pipelines.PipelineTrigger", + "deprecated": true, + "launch_stage": "GA" + }, + "usage_policy_id": { + "description": "Usage policy of this pipeline.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.ClonePipelineResponse": { + "fields": { + "pipeline_id": { + "description": "The pipeline id of the cloned pipeline", + "launch_stage": "GA" + } + } + }, + "pipelines.ConfluenceConnectorOptions": { + "description": "Confluence specific options for ingestion", + "fields": { + "include_confluence_spaces": { + "description": "(Optional) Spaces to filter Confluence data on", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.ConfluentSchemaRegistryOptions": { + "fields": { + "subject": { + "description": "Required: subject name to resolve in the registry.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "pipelines.ConnectionParameters": { + "fields": { + "source_catalog": { + "description": "Source catalog for initial connection.\nThis is necessary for schema exploration in some database systems like Oracle, and optional but nice-to-have\nin some other database systems like Postgres.\nFor Oracle databases, this maps to a service name.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.ConnectorOptions": { + "description": "Wrapper message for source-specific options to support multiple connector types", + "fields": { + "api_source_connector_options": { + "description": "Connector-specific options for API Source connectors.", + "ref": "pipelines.ApiSourceConnectorOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "confluence_options": { + "ref": "pipelines.ConfluenceConnectorOptions", + "launch_stage": "PUBLIC_PREVIEW" + }, + "gdrive_options": { + "ref": "pipelines.GoogleDriveOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "google_ads_options": { + "ref": "pipelines.GoogleAdsOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "jira_options": { + "ref": "pipelines.JiraConnectorOptions", + "launch_stage": "PUBLIC_BETA" + }, + "kafka_options": { + "ref": "pipelines.KafkaOptions", + "launch_stage": "PUBLIC_BETA" + }, + "linkedin_ads_options": { + "ref": "pipelines.LinkedInAdsOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "marketo_options": { + "ref": "pipelines.MarketoOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "meta_ads_options": { + "ref": "pipelines.MetaMarketingOptions", + "launch_stage": "PUBLIC_BETA" + }, + "outlook_options": { + "ref": "pipelines.OutlookOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "rabbitmq_options": { + "ref": "pipelines.RabbitmqOptions", + "launch_stage": "PUBLIC_BETA" + }, + "reddit_ads_options": { + "ref": "pipelines.RedditAdsOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "sharepoint_options": { + "ref": "pipelines.SharepointOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "smartsheet_options": { + "ref": "pipelines.SmartsheetOptions", + "launch_stage": "PUBLIC_PREVIEW" + }, + "tiktok_ads_options": { + "ref": "pipelines.TikTokAdsOptions", + "launch_stage": "PUBLIC_BETA" + }, + "zendesk_support_options": { + "ref": "pipelines.ZendeskSupportOptions", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.ConnectorType": { + "description": "For certain database sources LakeFlow Connect offers both query based and cdc\ningestion, ConnectorType can bse used to convey the type of ingestion.\nIf connection_name is provided for database sources, we default to Query Based ingestion", + "enum": [ + "CDC", + "QUERY_BASED" + ], + "enum_launch_stages": { + "CDC": "PUBLIC_PREVIEW", + "QUERY_BASED": "PUBLIC_PREVIEW" + } + }, + "pipelines.CreatePipeline": { + "fields": { + "allow_duplicate_names": { + "description": "If false, deployment will fail if name conflicts with that of another pipeline.", + "launch_stage": "GA" + }, + "budget_policy_id": { + "description": "Budget policy of this pipeline.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "catalog": { + "description": "A catalog in Unity Catalog to publish data from this pipeline to. If `target` is specified, tables in this pipeline are published to a `target` schema inside `catalog` (for example, `catalog`.`target`.`table`). If `target` is not specified, no data is published to Unity Catalog.", + "launch_stage": "GA" + }, + "channel": { + "description": "SDP Release Channel that specifies which version to use.", + "launch_stage": "GA" + }, + "clusters": { + "description": "Cluster settings for this pipeline deployment. Applies to classic\n(non-serverless) pipelines. Omit this field when `serverless` is `true`.", + "launch_stage": "GA" + }, + "configuration": { + "description": "String-String configuration for this pipeline execution.", + "launch_stage": "GA" + }, + "continuous": { + "description": "Whether the pipeline is continuous or triggered. This replaces `trigger`.\n\nDeprecated: wrap the pipeline in a continuous job instead, which also lets you take advantage\nof job-level settings such as performance mode. When the pipeline is started by a continuous\njob, the job's setting takes precedence and this field is ignored.", + "deprecated": true, + "launch_stage": "GA" + }, + "deployment": { + "description": "Deployment type of this pipeline.", + "ref": "pipelines.PipelineDeployment", + "launch_stage": "GA" + }, + "development": { + "description": "Whether the pipeline is in Development mode. Defaults to false.\n\nDeprecated: set development mode for each update instead.", + "deprecated": true, + "launch_stage": "GA" + }, + "dry_run": { + "launch_stage": "GA" + }, + "edition": { + "description": "Pipeline product edition.", + "launch_stage": "GA" + }, + "environment": { + "description": "Environment specification for this pipeline used to install dependencies.", + "ref": "pipelines.PipelinesEnvironment", + "launch_stage": "PUBLIC_PREVIEW" + }, + "event_log": { + "description": "Event log configuration for this pipeline", + "ref": "pipelines.EventLogSpec", + "launch_stage": "GA" + }, + "filters": { + "description": "Filters on which Pipeline packages to include in the deployed graph.", + "ref": "pipelines.Filters", + "launch_stage": "GA" + }, + "gateway_definition": { + "description": "The definition of a gateway pipeline to support change data capture.", + "ref": "pipelines.IngestionGatewayPipelineDefinition", + "launch_stage": "PRIVATE_PREVIEW" + }, + "id": { + "description": "Unique identifier for this pipeline.", + "launch_stage": "GA" + }, + "ingestion_definition": { + "description": "The configuration for a managed ingestion pipeline. These settings cannot be used with the 'libraries', 'schema', 'target', or 'catalog' settings.", + "ref": "pipelines.IngestionPipelineDefinition", + "launch_stage": "PUBLIC_PREVIEW" + }, + "libraries": { + "description": "Libraries or code needed by this deployment.", + "launch_stage": "GA" + }, + "name": { + "description": "Friendly identifier for this pipeline.", + "launch_stage": "GA" + }, + "notifications": { + "description": "List of notification settings for this pipeline.", + "launch_stage": "GA" + }, + "parameters": { + "description": "Key/value map of default parameters to use for pipeline execution.\nMaximum total size: 10k characters (JSON format)", + "launch_stage": "PUBLIC_BETA" + }, + "parent_path": { + "description": "Path of the pipeline parent folder in workspace file tree.\n\nIf absent, the pipeline doesn't have a workspace object.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "photon": { + "description": "Whether Photon is enabled for this pipeline.", + "launch_stage": "GA" + }, + "restart_window": { + "description": "Restart window of this pipeline.", + "ref": "pipelines.RestartWindow", + "launch_stage": "PRIVATE_PREVIEW" + }, + "root_path": { + "description": "Root path for this pipeline.\nThis is used as the root directory when editing the pipeline in the Databricks user interface and it is\nadded to sys.path when executing Python sources during pipeline execution.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "run_as": { + "ref": "pipelines.RunAs", + "launch_stage": "GA" + }, + "schema": { + "description": "The default schema (database) where tables are read from or published to.", + "launch_stage": "GA" + }, + "serverless": { + "description": "Whether serverless compute is enabled for this pipeline. Serverless is the\nrecommended compute for new pipelines; set this to `true` to run the pipeline\non serverless. For notebook/file pipelines, omitting this field uses classic\ncompute configured through the `clusters` field. When `true`, omit `clusters`;\nPhoton is always enabled.", + "launch_stage": "GA" + }, + "serverless_compute_id": { + "description": "Serverless compute ID specified by the user for serverless pipelines.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "storage": { + "description": "DBFS root directory for storing checkpoints and tables.", + "launch_stage": "GA" + }, + "tags": { + "description": "A map of tags associated with the pipeline.\nThese are forwarded to the cluster as cluster tags, and are therefore subject to the same limitations.\nA maximum of 25 tags can be added to the pipeline.", + "launch_stage": "GA" + }, + "target": { + "description": "Target schema (database) to add tables in this pipeline to. Exactly one of `schema` or `target` must be specified. To publish to Unity Catalog, also specify `catalog`. This legacy field is deprecated for pipeline creation in favor of the `schema` field.", + "deprecated": true, + "launch_stage": "GA" + }, + "trigger": { + "description": "Which pipeline trigger to use. Deprecated: Use `continuous` instead.", + "ref": "pipelines.PipelineTrigger", + "deprecated": true, + "launch_stage": "GA" + }, + "usage_policy_id": { + "description": "Usage policy of this pipeline.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.CreatePipelineResponse": { + "fields": { + "effective_settings": { + "description": "Only returned when dry_run is true.", + "ref": "pipelines.PipelineSpec", + "launch_stage": "GA" + }, + "pipeline_id": { + "description": "The unique identifier for the newly created pipeline. Only returned when dry_run is false.", + "launch_stage": "GA" + } + } + }, + "pipelines.CronTrigger": { + "fields": { + "quartz_cron_schedule": { + "launch_stage": "GA" + }, + "timezone_id": { + "launch_stage": "GA" + } + } + }, + "pipelines.DataPlaneId": { + "fields": { + "instance": { + "description": "The instance name of the data plane emitting an event.", + "launch_stage": "GA" + }, + "seq_no": { + "description": "A sequence number, unique and increasing within the data plane instance.", + "launch_stage": "GA" + } + } + }, + "pipelines.DataStagingOptions": { + "description": "Location of staged data storage", + "fields": { + "catalog_name": { + "description": "(Required, Immutable) The name of the catalog for the connector's staging storage location.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schema_name": { + "description": "(Required, Immutable) The name of the schema for the connector's staging storage location.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "volume_name": { + "description": "(Optional) The Unity Catalog-compatible name for the storage location.\nThis is the volume to use for the data that is extracted by the connector.\nSpark Declarative Pipelines system will automatically create the volume under the catalog and schema.\nFor Combined Cdc Managed Ingestion pipelines default name for the volume would be :\n__databricks_ingestion_gateway_staging_data-$pipelineId", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.DayOfWeek": { + "description": "Days of week in which the window is allowed to happen.\nIf not specified all days of the week will be used.", + "enum": [ + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enum_launch_stages": { + "FRIDAY": "PUBLIC_PREVIEW", + "MONDAY": "PUBLIC_PREVIEW", + "SATURDAY": "PUBLIC_PREVIEW", + "SUNDAY": "PUBLIC_PREVIEW", + "THURSDAY": "PUBLIC_PREVIEW", + "TUESDAY": "PUBLIC_PREVIEW", + "WEDNESDAY": "PUBLIC_PREVIEW" + } + }, + "pipelines.DeletePipelineRequest": { + "fields": { + "cascade": { + "description": "If false, pipeline deletion will not cascade to its datasets (MVs, STs, Views).\nBy default, this parameter will be true and all tables will be deleted with the pipeline.", + "launch_stage": "GA" + }, + "force": { + "description": "If true, deletion will proceed even if resource cleanup fails.\nBy default, deletion will fail if resources cleanup is required but fails.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.DeletePipelineResponse": {}, + "pipelines.DeploymentKind": { + "description": "The deployment method that manages the pipeline:\n- BUNDLE: The pipeline is managed by a Databricks Asset Bundle.", + "enum": [ + "BUNDLE" + ], + "enum_launch_stages": { + "BUNDLE": "GA" + } + }, + "pipelines.EditPipeline": { + "fields": { + "allow_duplicate_names": { + "description": "If false, deployment will fail if name has changed and conflicts the name of another pipeline.", + "launch_stage": "GA" + }, + "budget_policy_id": { + "description": "Budget policy of this pipeline.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "catalog": { + "description": "A catalog in Unity Catalog to publish data from this pipeline to. If `target` is specified, tables in this pipeline are published to a `target` schema inside `catalog` (for example, `catalog`.`target`.`table`). If `target` is not specified, no data is published to Unity Catalog.", + "launch_stage": "GA" + }, + "channel": { + "description": "SDP Release Channel that specifies which version to use.", + "launch_stage": "GA" + }, + "clusters": { + "description": "Cluster settings for this pipeline deployment. Applies to classic\n(non-serverless) pipelines. Omit this field when `serverless` is `true`.", + "launch_stage": "GA" + }, + "configuration": { + "description": "String-String configuration for this pipeline execution.", + "launch_stage": "GA" + }, + "continuous": { + "description": "Whether the pipeline is continuous or triggered. This replaces `trigger`.\n\nDeprecated: wrap the pipeline in a continuous job instead, which also lets you take advantage\nof job-level settings such as performance mode. When the pipeline is started by a continuous\njob, the job's setting takes precedence and this field is ignored.", + "deprecated": true, + "launch_stage": "GA" + }, + "deployment": { + "description": "Deployment type of this pipeline.", + "ref": "pipelines.PipelineDeployment", + "launch_stage": "GA" + }, + "development": { + "description": "Whether the pipeline is in Development mode. Defaults to false.\n\nDeprecated: set development mode for each update instead.", + "deprecated": true, + "launch_stage": "GA" + }, + "edition": { + "description": "Pipeline product edition.", + "launch_stage": "GA" + }, + "environment": { + "description": "Environment specification for this pipeline used to install dependencies.", + "ref": "pipelines.PipelinesEnvironment", + "launch_stage": "PUBLIC_PREVIEW" + }, + "event_log": { + "description": "Event log configuration for this pipeline", + "ref": "pipelines.EventLogSpec", + "launch_stage": "GA" + }, + "expected_last_modified": { + "description": "If present, the last-modified time of the pipeline settings before the edit.\nIf the settings were modified after that time, then the request will fail with\na conflict.", + "launch_stage": "GA" + }, + "filters": { + "description": "Filters on which Pipeline packages to include in the deployed graph.", + "ref": "pipelines.Filters", + "launch_stage": "GA" + }, + "gateway_definition": { + "description": "The definition of a gateway pipeline to support change data capture.", + "ref": "pipelines.IngestionGatewayPipelineDefinition", + "launch_stage": "PRIVATE_PREVIEW" + }, + "id": { + "description": "Unique identifier for this pipeline.", + "launch_stage": "GA" + }, + "ingestion_definition": { + "description": "The configuration for a managed ingestion pipeline. These settings cannot be used with the 'libraries', 'schema', 'target', or 'catalog' settings.", + "ref": "pipelines.IngestionPipelineDefinition", + "launch_stage": "PUBLIC_PREVIEW" + }, + "libraries": { + "description": "Libraries or code needed by this deployment.", + "launch_stage": "GA" + }, + "name": { + "description": "Friendly identifier for this pipeline.", + "launch_stage": "GA" + }, + "notifications": { + "description": "List of notification settings for this pipeline.", + "launch_stage": "GA" + }, + "parameters": { + "description": "Key/value map of default parameters to use for pipeline execution.\nMaximum total size: 10k characters (JSON format)", + "launch_stage": "PUBLIC_BETA" + }, + "parent_path": { + "description": "Path of the pipeline parent folder in workspace file tree.\n\nIf absent, the pipeline doesn't have a workspace object.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "photon": { + "description": "Whether Photon is enabled for this pipeline.", + "launch_stage": "GA" + }, + "restart_window": { + "description": "Restart window of this pipeline.", + "ref": "pipelines.RestartWindow", + "launch_stage": "PRIVATE_PREVIEW" + }, + "root_path": { + "description": "Root path for this pipeline.\nThis is used as the root directory when editing the pipeline in the Databricks user interface and it is\nadded to sys.path when executing Python sources during pipeline execution.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "run_as": { + "ref": "pipelines.RunAs", + "launch_stage": "GA" + }, + "schema": { + "description": "The default schema (database) where tables are read from or published to.", + "launch_stage": "GA" + }, + "serverless": { + "description": "Whether serverless compute is enabled for this pipeline. Serverless is the\nrecommended compute for new pipelines; set this to `true` to run the pipeline\non serverless. For notebook/file pipelines, omitting this field uses classic\ncompute configured through the `clusters` field. When `true`, omit `clusters`;\nPhoton is always enabled.", + "launch_stage": "GA" + }, + "serverless_compute_id": { + "description": "Serverless compute ID specified by the user for serverless pipelines.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "storage": { + "description": "DBFS root directory for storing checkpoints and tables.", + "launch_stage": "GA" + }, + "tags": { + "description": "A map of tags associated with the pipeline.\nThese are forwarded to the cluster as cluster tags, and are therefore subject to the same limitations.\nA maximum of 25 tags can be added to the pipeline.", + "launch_stage": "GA" + }, + "target": { + "description": "Target schema (database) to add tables in this pipeline to. Exactly one of `schema` or `target` must be specified. To publish to Unity Catalog, also specify `catalog`. This legacy field is deprecated for pipeline creation in favor of the `schema` field.", + "deprecated": true, + "launch_stage": "GA" + }, + "trigger": { + "description": "Which pipeline trigger to use. Deprecated: Use `continuous` instead.", + "ref": "pipelines.PipelineTrigger", + "deprecated": true, + "launch_stage": "GA" + }, + "usage_policy_id": { + "description": "Usage policy of this pipeline.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.EditPipelineResponse": {}, + "pipelines.ErrorDetail": { + "fields": { + "exceptions": { + "description": "The exception thrown for this error, with its chain of cause.", + "launch_stage": "GA" + }, + "fatal": { + "description": "Whether this error is considered fatal, that is, unrecoverable.", + "launch_stage": "GA" + } + } + }, + "pipelines.EventLevel": { + "description": "The severity level of the event.", + "enum": [ + "INFO", + "WARN", + "ERROR", + "METRICS" + ], + "enum_launch_stages": { + "ERROR": "GA", + "INFO": "GA", + "METRICS": "GA", + "WARN": "GA" + } + }, + "pipelines.EventLogSpec": { + "description": "Configurable event log parameters.", + "fields": { + "catalog": { + "description": "The UC catalog the event log is published under.", + "launch_stage": "GA" + }, + "name": { + "description": "The name the event log is published to in UC.", + "launch_stage": "GA" + }, + "schema": { + "description": "The UC schema the event log is published under.", + "launch_stage": "GA" + } + } + }, + "pipelines.FileFilter": { + "fields": { + "modified_after": { + "description": "Include files with modification times occurring after the specified time.\nTimestamp format: YYYY-MM-DDTHH:mm:ss (e.g. 2020-06-01T13:00:00)\nBased on https://spark.apache.org/docs/latest/sql-data-sources-generic-options.html#modification-time-path-filters", + "launch_stage": "PRIVATE_PREVIEW" + }, + "modified_before": { + "description": "Include files with modification times occurring before the specified time.\nTimestamp format: YYYY-MM-DDTHH:mm:ss (e.g. 2020-06-01T13:00:00)\nBased on https://spark.apache.org/docs/latest/sql-data-sources-generic-options.html#modification-time-path-filters", + "launch_stage": "PRIVATE_PREVIEW" + }, + "path_filter": { + "description": "Include files with file names matching the pattern\nBased on https://spark.apache.org/docs/latest/sql-data-sources-generic-options.html#path-glob-filter", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.FileIngestionOptions": { + "fields": { + "corrupt_record_column": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "file_filters": { + "description": "Generic options", + "launch_stage": "PRIVATE_PREVIEW" + }, + "format": { + "description": "required for TableSpec", + "ref": "pipelines.FileIngestionOptionsFileFormat", + "launch_stage": "PRIVATE_PREVIEW" + }, + "format_options": { + "description": "Format-specific options\nBased on https://docs.databricks.com/aws/en/ingestion/cloud-object-storage/auto-loader/options#file-format-options", + "launch_stage": "PRIVATE_PREVIEW" + }, + "ignore_corrupt_files": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "infer_column_types": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "reader_case_sensitive": { + "description": "Column name case sensitivity\nhttps://docs.databricks.com/aws/en/ingestion/cloud-object-storage/auto-loader/schema#change-case-sensitive-behavior", + "launch_stage": "PRIVATE_PREVIEW" + }, + "rescued_data_column": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "schema_evolution_mode": { + "ref": "pipelines.FileIngestionOptionsSchemaEvolutionMode", + "launch_stage": "PRIVATE_PREVIEW" + }, + "schema_hints": { + "description": "Override inferred schema of specific columns\nBased on https://docs.databricks.com/aws/en/ingestion/cloud-object-storage/auto-loader/schema#override-schema-inference-with-schema-hints", + "launch_stage": "PRIVATE_PREVIEW" + }, + "single_variant_column": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.FileIngestionOptionsFileFormat": { + "enum": [ + "BINARYFILE", + "JSON", + "CSV", + "XML", + "EXCEL", + "PARQUET", + "AVRO", + "ORC" + ], + "enum_launch_stages": { + "AVRO": "PRIVATE_PREVIEW", + "BINARYFILE": "PRIVATE_PREVIEW", + "CSV": "PRIVATE_PREVIEW", + "EXCEL": "PRIVATE_PREVIEW", + "JSON": "PRIVATE_PREVIEW", + "ORC": "PRIVATE_PREVIEW", + "PARQUET": "PRIVATE_PREVIEW", + "XML": "PRIVATE_PREVIEW" + } + }, + "pipelines.FileIngestionOptionsSchemaEvolutionMode": { + "description": "Based on https://docs.databricks.com/aws/en/ingestion/cloud-object-storage/auto-loader/schema#how-does-auto-loader-schema-evolution-work", + "enum": [ + "ADD_NEW_COLUMNS_WITH_TYPE_WIDENING", + "ADD_NEW_COLUMNS", + "RESCUE", + "FAIL_ON_NEW_COLUMNS", + "NONE" + ], + "enum_launch_stages": { + "ADD_NEW_COLUMNS": "PUBLIC_BETA", + "ADD_NEW_COLUMNS_WITH_TYPE_WIDENING": "PUBLIC_BETA", + "FAIL_ON_NEW_COLUMNS": "PUBLIC_BETA", + "NONE": "PUBLIC_BETA", + "RESCUE": "PUBLIC_BETA" + } + }, + "pipelines.FileLibrary": { + "fields": { + "path": { + "description": "The absolute path of the source code.", + "launch_stage": "GA" + } + } + }, + "pipelines.Filters": { + "fields": { + "exclude": { + "description": "Paths to exclude.", + "launch_stage": "GA" + }, + "include": { + "description": "Paths to include.", + "launch_stage": "GA" + } + } + }, + "pipelines.GetPipelinePermissionLevelsRequest": {}, + "pipelines.GetPipelinePermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "GA" + } + } + }, + "pipelines.GetPipelinePermissionsRequest": {}, + "pipelines.GetPipelineRequest": {}, + "pipelines.GetPipelineResponse": { + "fields": { + "cause": { + "description": "An optional message detailing the cause of the pipeline state.", + "launch_stage": "GA" + }, + "cluster_id": { + "description": "The ID of the cluster that the pipeline is running on.", + "launch_stage": "GA" + }, + "creator_user_name": { + "description": "The username of the pipeline creator.", + "launch_stage": "GA" + }, + "effective_budget_policy_id": { + "description": "Serverless budget policy ID of this pipeline.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "effective_publishing_mode": { + "description": "Publishing mode of the pipeline", + "ref": "pipelines.PublishingMode", + "launch_stage": "GA" + }, + "effective_serverless_compute_id": { + "description": "Serverless compute ID resolved for the pipeline.", + "launch_stage": "PUBLIC_BETA" + }, + "health": { + "description": "The health of a pipeline.", + "ref": "pipelines.GetPipelineResponseHealth", + "launch_stage": "GA" + }, + "last_modified": { + "description": "The last time the pipeline settings were modified or created.", + "launch_stage": "GA" + }, + "latest_updates": { + "description": "Status of the latest updates for the pipeline. Ordered with the newest update first.", + "launch_stage": "GA" + }, + "name": { + "description": "A human friendly identifier for the pipeline, taken from the `spec`.", + "launch_stage": "GA" + }, + "parameters": { + "description": "Key/value map of default parameters to use for pipeline execution.\nMaximum total size: 10k characters (JSON format)", + "launch_stage": "PUBLIC_BETA" + }, + "pipeline_id": { + "description": "The ID of the pipeline.", + "launch_stage": "GA" + }, + "run_as": { + "description": "The user or service principal that the pipeline runs as, if specified in the request.\nThis field indicates the explicit configuration of `run_as` for the pipeline.\nTo find the value in all cases, explicit or implicit, use `run_as_user_name`.", + "ref": "pipelines.RunAs", + "launch_stage": "GA" + }, + "run_as_user_name": { + "description": "Username of the user that the pipeline will run on behalf of.", + "launch_stage": "GA" + }, + "spec": { + "description": "The pipeline specification. This field is not returned when called by `ListPipelines`.", + "ref": "pipelines.PipelineSpec", + "launch_stage": "GA" + }, + "state": { + "description": "The pipeline state.", + "ref": "pipelines.PipelineState", + "launch_stage": "GA" + } + } + }, + "pipelines.GetPipelineResponseHealth": { + "description": "The health of a pipeline.", + "enum": [ + "HEALTHY", + "UNHEALTHY" + ], + "enum_launch_stages": { + "HEALTHY": "GA", + "UNHEALTHY": "GA" + } + }, + "pipelines.GetUpdateRequest": {}, + "pipelines.GetUpdateResponse": { + "fields": { + "update": { + "description": "The current update info.", + "ref": "pipelines.UpdateInfo", + "launch_stage": "GA" + } + } + }, + "pipelines.GoogleAdsConfig": { + "fields": { + "manager_account_id": { + "description": "(Required) Manager Account ID (also called MCC Account ID) used to list and access\ncustomer accounts under this manager account. This is required for fetching the list\nof customer accounts during source selection.\nIf the same field is also set in the object-level GoogleAdsOptions (connector_options),\nthe object-level value takes precedence over this top-level config.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.GoogleAdsCustomReportOptions": { + "description": "User-defined custom report for the Google Ads connector. Mirrors the\nresource + fields + segments + metrics model that Google Ads GAQL exposes.\nThe customer account this report runs against is supplied by the source\nschema (namespace), not by this message. The whole message is gated by\nthe parent GoogleAdsOptions.custom_report_options stage; per-field stage\nannotations are intentionally omitted.\nOnly supported on table-type objects: a custom report requires a\ndestination table, so it cannot be specified at the schema/source level.", + "fields": { + "metrics": { + "description": "(Optional) Metric fields to select (e.g. \"metrics.clicks\",\n\"metrics.cost_micros\"). Multiple values are joined into the GAQL\nSELECT clause.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "resource": { + "description": "(Required) Google Ads resource to query (e.g. \"ad_group_ad\",\n\"keyword_view\", \"search_term_view\"). Must be a resource that has\nmetrics. Values are validated against Google Ads' field-service\ncatalog at pipeline plan time.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "resource_fields": { + "description": "(Optional) Resource fields to select, in fully-qualified GAQL form\n(e.g. \"ad_group_ad.ad.id\", \"ad_group_ad.status\"). Multiple values are\njoined into the GAQL SELECT clause.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "segments": { + "description": "(Optional) Segment fields to select (e.g. \"segments.date\",\n\"segments.device\"). Must include at least one of segments.date,\nsegments.week, or segments.month — that segment is used as the\nincremental cursor for the table.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.GoogleAdsOptions": { + "description": "Google Ads specific options for ingestion (object-level).\nWhen set, these values override the corresponding fields in GoogleAdsConfig\n(source_configurations).", + "fields": { + "custom_report_options": { + "description": "(Optional) Custom report definition. When set, the table is treated as a\nuser-defined Google Ads custom report: the connector synthesizes a GAQL\nquery from the resource, fields, segments, and metrics specified here.\nWhen unset, the table must match one of the connector's prebuilt sources.", + "ref": "pipelines.GoogleAdsCustomReportOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "lookback_window_days": { + "description": "(Optional) Number of days to look back for report tables to capture late-arriving data.\nIf not specified, defaults to 30 days.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "manager_account_id": { + "description": "(Optional at this level) Manager Account ID (also called MCC Account ID) used to list\nand access customer accounts under this manager account.\nOverrides GoogleAdsConfig.manager_account_id from source_configurations when set.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "sync_start_date": { + "description": "(Optional) Start date for the initial sync of report tables in YYYY-MM-DD format.\nThis determines the earliest date from which to sync historical data.\nIf not specified, defaults to 2 years of historical data.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.GoogleDriveOptions": { + "fields": { + "entity_type": { + "ref": "pipelines.GoogleDriveOptionsGoogleDriveEntityType", + "launch_stage": "PRIVATE_PREVIEW" + }, + "file_ingestion_options": { + "ref": "pipelines.FileIngestionOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "url": { + "description": "Google Drive URL.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.GoogleDriveOptionsGoogleDriveEntityType": { + "enum": [ + "FILE", + "FILE_METADATA", + "PERMISSION" + ], + "enum_launch_stages": { + "FILE": "PRIVATE_PREVIEW", + "FILE_METADATA": "PRIVATE_PREVIEW", + "PERMISSION": "PRIVATE_PREVIEW" + } + }, + "pipelines.IngestionConfig": { + "fields": { + "report": { + "description": "Select a specific source report.", + "ref": "pipelines.ReportSpec", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schema": { + "description": "Select all tables from a specific source schema.", + "ref": "pipelines.SchemaSpec", + "launch_stage": "PUBLIC_PREVIEW" + }, + "table": { + "description": "Select a specific source table.", + "ref": "pipelines.TableSpec", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.IngestionGatewayPipelineDefinition": { + "fields": { + "connection_id": { + "description": "[Deprecated, use connection_name instead] Immutable. The Unity Catalog connection that this gateway pipeline uses to communicate with the source.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "connection_name": { + "description": "Immutable. The Unity Catalog connection that this gateway pipeline uses to communicate with the source.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "connection_parameters": { + "description": "Optional, Internal. Parameters required to establish an initial connection with the source.", + "ref": "pipelines.ConnectionParameters", + "launch_stage": "PRIVATE_PREVIEW" + }, + "gateway_storage_catalog": { + "description": "Required, Immutable. The name of the catalog for the gateway pipeline's storage location.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "gateway_storage_name": { + "description": "Optional. The Unity Catalog-compatible name for the gateway storage location.\nThis is the destination to use for the data that is extracted by the gateway.\nSpark Declarative Pipelines system will automatically create the storage location under the catalog and schema.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "gateway_storage_schema": { + "description": "Required, Immutable. The name of the schema for the gateway pipelines's storage location.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.IngestionPipelineDefinition": { + "fields": { + "connection_name": { + "description": "The Unity Catalog connection that this ingestion pipeline uses to communicate with the source. This is used with\nboth connectors for applications like Salesforce, Workday, and so on, and also database connectors like Oracle,\n(connector_type = QUERY_BASED OR connector_type = CDC).\nIf connection name corresponds to database connectors like Oracle, and connector_type is not provided then\nconnector_type defaults to QUERY_BASED. If connector_type is passed as CDC we use Combined Cdc Managed Ingestion\npipeline.\nUnder certain conditions, this can be replaced with ingestion_gateway_id to change the connector to Cdc Managed\nIngestion Pipeline with Gateway pipeline.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "connector_type": { + "description": "(Optional) Connector Type for sources. Ex: CDC, Query Based.", + "ref": "pipelines.ConnectorType", + "launch_stage": "PUBLIC_PREVIEW" + }, + "data_staging_options": { + "description": "(Optional) Location of staged data storage. This is required for migration from Cdc Managed Ingestion Pipeline\nwith Gateway pipeline to Combined Cdc Managed Ingestion Pipeline.\nIf not specified, the volume for staged data will be created in catalog and schema/target specified in the\ntop level pipeline definition.", + "ref": "pipelines.DataStagingOptions", + "launch_stage": "PUBLIC_PREVIEW" + }, + "full_refresh_window": { + "description": "(Optional) A window that specifies a set of time ranges for snapshot queries in CDC.", + "ref": "pipelines.OperationTimeWindow", + "launch_stage": "PUBLIC_PREVIEW" + }, + "ingest_from_uc_foreign_catalog": { + "description": "Immutable. If set to true, the pipeline will ingest tables from the\nUC foreign catalogs directly without the need to specify a UC connection or ingestion gateway.\nThe `source_catalog` fields in objects of IngestionConfig are interpreted as\nthe UC foreign catalogs to ingest from.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "ingestion_gateway_id": { + "description": "Identifier for the gateway that is used by this ingestion pipeline to communicate with the source database.\nThis is used with CDC connectors to databases like SQL Server using a gateway pipeline (connector_type = CDC).\nUnder certain conditions, this can be replaced with connection_name to change the connector to Combined Cdc\nManaged Ingestion Pipeline.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "netsuite_jar_path": { + "description": "Netsuite only configuration. When the field is set for a netsuite connector,\nthe jar stored in the field will be validated and added to the classpath of\npipeline's cluster.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "objects": { + "description": "Required. Settings specifying tables to replicate and the destination for the replicated tables.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "source_configurations": { + "description": "Top-level source configurations", + "launch_stage": "PUBLIC_PREVIEW" + }, + "source_type": { + "description": "The type of the foreign source.\nThe source type will be inferred from the source connection or ingestion gateway.\nThis field is output only and will be ignored if provided.", + "ref": "pipelines.IngestionSourceType", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "table_configuration": { + "description": "Configuration settings to control the ingestion of tables. These settings are applied to all tables in the pipeline.", + "ref": "pipelines.TableSpecificConfig", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.IngestionPipelineDefinitionFanoutOptions": { + "description": "Fanout configuration for multi-table routing from streaming sources.\nRoutes each input record to a destination table based on a routing\nkey derived from the record. The key value becomes the table name\nsuffix: {destination_catalog}.{destination_schema}.{key_value}.", + "fields": { + "fanout_by": { + "description": "Column path or SQL expression whose value determines the destination table.\nSupports dotted paths (e.g. \"value.event_name\") and expressions\n(e.g. \"value:event_name::string\").", + "launch_stage": "PUBLIC_BETA" + }, + "transforms": { + "description": "Optional transforms applied to each route's DataFrame before writing\nto the destination table.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "pipelines.IngestionPipelineDefinitionTableSpecificConfigQueryBasedConnectorConfig": { + "description": "Configurations that are only applicable for query-based ingestion connectors.", + "fields": { + "cursor_columns": { + "description": "The names of the monotonically increasing columns in the source table that are used to enable\nthe table to be read and ingested incrementally through structured streaming.\nThe columns are allowed to have repeated values but have to be non-decreasing.\nIf the source data is merged into the destination (e.g., using SCD Type 1 or Type 2), these\ncolumns will implicitly define the `sequence_by` behavior. You can still explicitly set\n`sequence_by` to override this default.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "deletion_condition": { + "description": "Specifies a SQL WHERE condition that specifies that the source row has been deleted.\nThis is sometimes referred to as \"soft-deletes\".\nFor example: \"Operation = 'DELETE'\" or \"is_deleted = true\".\nThis field is orthogonal to `hard_deletion_sync_interval_in_seconds`,\none for soft-deletes and the other for hard-deletes.\nSee also the hard_deletion_sync_min_interval_in_seconds field for\nhandling of \"hard deletes\" where the source rows are physically removed from the table.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "hard_deletion_sync_min_interval_in_seconds": { + "description": "Specifies the minimum interval (in seconds) between snapshots on primary keys\nfor detecting and synchronizing hard deletions—i.e., rows that have been\nphysically removed from the source table.\nThis interval acts as a lower bound. If ingestion runs less frequently than\nthis value, hard deletion synchronization will align with the actual ingestion\nfrequency instead of happening more often.\nIf not set, hard deletion synchronization via snapshots is disabled.\nThis field is mutable and can be updated without triggering a full snapshot.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "pipelines.IngestionPipelineDefinitionWorkdayReportParameters": { + "fields": { + "incremental": { + "description": "(Optional) Marks the report as incremental.\nThis field is deprecated and should not be used. Use `parameters` instead. The incremental behavior is now\ncontrolled by the `parameters` field.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "parameters": { + "description": "Parameters for the Workday report. Each key represents the parameter name (e.g., \"start_date\", \"end_date\"),\nand the corresponding value is a SQL-like expression used to compute the parameter value at runtime.\nExample:\n{\n\"start_date\": \"{ coalesce(current_offset(), date(\\\"2025-02-01\\\")) }\",\n\"end_date\": \"{ current_date() - INTERVAL 1 DAY }\"\n}", + "launch_stage": "PRIVATE_PREVIEW" + }, + "report_parameters": { + "description": "(Optional) Additional custom parameters for Workday Report\nThis field is deprecated and should not be used. Use `parameters` instead.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.IngestionPipelineDefinitionWorkdayReportParametersQueryKeyValue": { + "fields": { + "key": { + "description": "Key for the report parameter, can be a column name or other metadata", + "launch_stage": "PRIVATE_PREVIEW" + }, + "value": { + "description": "Value for the report parameter.\nPossible values it can take are these sql functions:\n1. coalesce(current_offset(), date(\"YYYY-MM-DD\")) -\u003e if current_offset() is null, then the passed date, else current_offset()\n2. current_date()\n3. date_sub(current_date(), x) -\u003e subtract x (some non-negative integer) days from current date", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.IngestionSourceType": { + "description": "Type of source system that a managed ingestion pipeline reads from.", + "enum": [ + "MYSQL", + "POSTGRESQL", + "SQLSERVER", + "SALESFORCE", + "BIGQUERY", + "NETSUITE", + "WORKDAY_RAAS", + "GA4_RAW_DATA", + "SERVICENOW", + "MANAGED_POSTGRESQL", + "ORACLE", + "TERADATA", + "SHAREPOINT", + "DYNAMICS365", + "GOOGLE_DRIVE", + "JIRA", + "CONFLUENCE", + "META_MARKETING", + "TIKTOK_ADS", + "ZENDESK", + "SMARTSHEET", + "RABBITMQ", + "FOREIGN_CATALOG" + ], + "enum_launch_stages": { + "BIGQUERY": "PUBLIC_PREVIEW", + "CONFLUENCE": "PUBLIC_PREVIEW", + "DYNAMICS365": "PUBLIC_PREVIEW", + "FOREIGN_CATALOG": "PRIVATE_PREVIEW", + "GA4_RAW_DATA": "PUBLIC_PREVIEW", + "GOOGLE_DRIVE": "PRIVATE_PREVIEW", + "JIRA": "PUBLIC_BETA", + "MANAGED_POSTGRESQL": "PUBLIC_PREVIEW", + "META_MARKETING": "PUBLIC_BETA", + "MYSQL": "PUBLIC_PREVIEW", + "NETSUITE": "PUBLIC_PREVIEW", + "ORACLE": "PUBLIC_PREVIEW", + "POSTGRESQL": "PUBLIC_PREVIEW", + "RABBITMQ": "PUBLIC_BETA", + "SALESFORCE": "PUBLIC_PREVIEW", + "SERVICENOW": "PUBLIC_PREVIEW", + "SHAREPOINT": "PUBLIC_PREVIEW", + "SMARTSHEET": "PUBLIC_PREVIEW", + "SQLSERVER": "PUBLIC_PREVIEW", + "TERADATA": "PUBLIC_PREVIEW", + "TIKTOK_ADS": "PUBLIC_BETA", + "WORKDAY_RAAS": "PUBLIC_PREVIEW", + "ZENDESK": "PUBLIC_PREVIEW" + } + }, + "pipelines.JiraConnectorOptions": { + "description": "Jira specific options for ingestion", + "fields": { + "include_jira_spaces": { + "description": "(Optional) Projects to filter Jira data on", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "pipelines.JsonTransformerOptions": { + "fields": { + "as_variant": { + "description": "Parse the entire value as a single Variant column.", + "launch_stage": "PUBLIC_BETA" + }, + "schema": { + "description": "Inline schema string for JSON parsing (Spark DDL format).", + "launch_stage": "PUBLIC_BETA" + }, + "schema_evolution_mode": { + "description": "(Optional) Schema evolution mode for schema inference.", + "ref": "pipelines.FileIngestionOptionsSchemaEvolutionMode", + "launch_stage": "PUBLIC_BETA" + }, + "schema_file_path": { + "description": "Path to a schema file (.ddl).", + "launch_stage": "PUBLIC_BETA" + }, + "schema_hints": { + "description": "(Optional) Schema hints as a comma-separated string of \"column_name type\" pairs.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "pipelines.KafkaOptions": { + "fields": { + "client_config": { + "description": "Undocumented backdoor mechanism for overriding parameters\nto pass to the Kafka client.\nThis is not supported and may break at any time.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "key_transformer": { + "description": "(Optional) Transformer for the message key.\nIf not specified, the key is left as raw bytes.", + "ref": "pipelines.Transformer", + "launch_stage": "PUBLIC_BETA" + }, + "max_offsets_per_trigger": { + "description": "Internal option to control the maximum number of offsets to process per trigger.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "starting_offset": { + "description": "(Optional) Where to begin reading when no checkpoint exists.\nValid values: \"latest\" and \"earliest\". Defaults to \"latest\".", + "launch_stage": "PUBLIC_BETA" + }, + "topic_pattern": { + "description": "Java regex pattern to subscribe to matching topics.\nOnly one of topics or topic_pattern must be specified.", + "launch_stage": "PUBLIC_BETA" + }, + "topics": { + "description": "Topics to subscribe to.\nOnly one of topics or topic_pattern must be specified.", + "launch_stage": "PUBLIC_BETA" + }, + "value_transformer": { + "description": "(Optional) Transformer for the message value.\nIf not specified, the value is left as raw bytes.", + "ref": "pipelines.Transformer", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "pipelines.LinkedInAdsOptions": { + "description": "LinkedIn Ads specific options for ingestion.\nsync_start_date and lookback_window_days apply to both the prebuilt analytics\ntables and custom reports. custom_report_options defines a custom (user-defined)\nadAnalytics report and is only valid on a table object.", + "fields": { + "custom_report_options": { + "description": "(Optional) Custom report definition. Only valid on a table object. When set,\nthe table is synthesized from /rest/adAnalytics using the finder, pivots,\ntime granularity and metrics here. When unset, the table must match one of\nthe connector's prebuilt sources.", + "ref": "pipelines.LinkedInAdsOptionsLinkedInAdsCustomReportOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "lookback_window_days": { + "description": "(Optional) Days to look back during incremental sync for late-arriving data.\nIf not specified, defaults to 30 days.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "sync_start_date": { + "description": "(Optional) Start date for the initial sync of report tables, YYYY-MM-DD.\nEarliest date from which to sync historical data; overrides the default\nwhen set. For finder attributedRevenueMetrics, this must be between 30 and\n366 days before today.\nIf not specified, defaults to 1 year of history.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.LinkedInAdsOptionsLinkedInAdsCustomReportOptions": { + "description": "User-defined custom report for the LinkedIn Ads connector. The destination\ntable name comes from the enclosing TableSpec.destination_table, the start\ndate from the enclosing LinkedInAdsOptions.sync_start_date, and the account\nit runs against from the source schema (namespace) -- none are repeated here.", + "fields": { + "entity_granularity": { + "description": "(Required) Entity pivots to group by; count/constraints depend on finder.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "finder": { + "description": "(Required) adAnalytics finder. See LinkedInAdsFinder.", + "ref": "pipelines.LinkedInAdsOptionsLinkedInAdsCustomReportOptionsLinkedInAdsFinder", + "launch_stage": "PRIVATE_PREVIEW" + }, + "metrics": { + "description": "(Optional) LinkedIn metric names for the report. Open vocabulary (not an\nenum): the valid set is large (~100) and evolves with the LinkedIn\nadAnalytics API, so values are passed through verbatim. If empty, a\npivot-safe default core set is ingested: impressions, clicks,\ncostInLocalCurrency, externalWebsiteConversions (valid for every pivot).\nIgnored for attributedRevenueMetrics (always returns the full\nRevenueAttributionMetrics struct).", + "launch_stage": "PRIVATE_PREVIEW" + }, + "time_granularity": { + "description": "(Optional) Time aggregation. Defaults to DAILY when unspecified. Used by\nanalytics/statistics; ignored for attributedRevenueMetrics.", + "ref": "pipelines.LinkedInAdsOptionsLinkedInAdsCustomReportOptionsLinkedInAdsTimeGranularity", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.LinkedInAdsOptionsLinkedInAdsCustomReportOptionsLinkedInAdsEntityGranularity": { + "description": "Entity pivot to group by.", + "enum": [ + "CAMPAIGN", + "CREATIVE", + "CAMPAIGN_GROUP" + ], + "enum_launch_stages": { + "CAMPAIGN": "PRIVATE_PREVIEW", + "CAMPAIGN_GROUP": "PRIVATE_PREVIEW", + "CREATIVE": "PRIVATE_PREVIEW" + } + }, + "pipelines.LinkedInAdsOptionsLinkedInAdsCustomReportOptionsLinkedInAdsFinder": { + "description": "adAnalytics finder. Determines call shape, valid pivots, and metric\nrequirements.", + "enum": [ + "ANALYTICS", + "STATISTICS", + "ATTRIBUTED_REVENUE_METRICS" + ], + "enum_launch_stages": { + "ANALYTICS": "PRIVATE_PREVIEW", + "ATTRIBUTED_REVENUE_METRICS": "PRIVATE_PREVIEW", + "STATISTICS": "PRIVATE_PREVIEW" + } + }, + "pipelines.LinkedInAdsOptionsLinkedInAdsCustomReportOptionsLinkedInAdsTimeGranularity": { + "description": "Time aggregation. Used by analytics/statistics; ignored for\nattributedRevenueMetrics. Defaults to DAILY when unspecified.", + "enum": [ + "ALL", + "DAILY", + "MONTHLY", + "YEARLY" + ], + "enum_launch_stages": { + "ALL": "PRIVATE_PREVIEW", + "DAILY": "PRIVATE_PREVIEW", + "MONTHLY": "PRIVATE_PREVIEW", + "YEARLY": "PRIVATE_PREVIEW" + } + }, + "pipelines.ListPipelineEventsRequest": { + "fields": { + "filter": { + "description": "Criteria to select a subset of results, expressed using a SQL-like syntax.\nThe supported filters are:\n1. level='INFO' (or WARN or ERROR)\n2. level in ('INFO', 'WARN')\n3. id='[event-id]'\n4. timestamp \u003e 'TIMESTAMP' (or \u003e=,\u003c,\u003c=,=)\n\nComposite expressions are supported, for example: level in ('ERROR', 'WARN')\nAND timestamp\u003e '2021-07-22T06:37:33.083Z'", + "launch_stage": "GA" + }, + "max_results": { + "description": "Max number of entries to return in a single page. The system may return\nfewer than max_results events in a response, even if there are more events\navailable.", + "launch_stage": "GA" + }, + "order_by": { + "description": "A string indicating a sort order by timestamp for the results, for example, [\"timestamp asc\"].\nThe sort order can be ascending or descending. By default, events are returned\nin descending order by timestamp.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Page token returned by previous call. This field is mutually\nexclusive with all fields in this request except max_results. An error is\nreturned if any fields other than max_results are set when this field is set.", + "launch_stage": "GA" + } + } + }, + "pipelines.ListPipelineEventsResponse": { + "fields": { + "events": { + "description": "The list of events matching the request criteria.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "If present, a token to fetch the next page of events.", + "launch_stage": "GA" + }, + "prev_page_token": { + "description": "If present, a token to fetch the previous page of events.", + "launch_stage": "GA" + } + } + }, + "pipelines.ListPipelinesRequest": { + "fields": { + "filter": { + "description": "Select a subset of results based on the specified criteria.\nThe supported filters are:\n\n* `notebook='\u003cpath\u003e'` to select pipelines that reference the provided notebook path.\n* `name LIKE '[pattern]'` to select pipelines with a name that matches pattern.\nWildcards are supported, for example: `name LIKE '%shopping%'`\n\nComposite filters are not supported. This field is optional.", + "launch_stage": "GA" + }, + "max_results": { + "description": "The maximum number of entries to return in a single page. The system may\nreturn fewer than max_results pipelines in a response, even if there are\nmore pipelines available. This field is optional. The default value is 25.\nThe maximum value is 100. An error is returned if the value of max_results\nis greater than 100.", + "launch_stage": "GA" + }, + "order_by": { + "description": "A list of strings specifying the order of results.\nSupported order_by fields are id and name. The default is id asc.\nThis field is optional.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Page token returned by previous call", + "launch_stage": "GA" + } + } + }, + "pipelines.ListPipelinesResponse": { + "fields": { + "next_page_token": { + "description": "If present, a token to fetch the next page of pipelines.", + "launch_stage": "GA" + }, + "statuses": { + "description": "The list of pipelines matching the request criteria.", + "launch_stage": "GA" + } + } + }, + "pipelines.ListUpdatesRequest": { + "fields": { + "max_results": { + "description": "Max number of entries to return in a single page.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Page token returned by previous call", + "launch_stage": "GA" + }, + "until_update_id": { + "description": "If present, returns updates until and including this update_id.", + "launch_stage": "GA" + } + } + }, + "pipelines.ListUpdatesResponse": { + "fields": { + "next_page_token": { + "description": "If present, then there are more results, and this a token to be used in a subsequent request\nto fetch the next page.", + "launch_stage": "GA" + }, + "prev_page_token": { + "description": "If present, then this token can be used in a subsequent request to fetch the previous page.", + "launch_stage": "GA" + }, + "updates": { + "launch_stage": "GA" + } + } + }, + "pipelines.ManualTrigger": {}, + "pipelines.MarketoOptions": { + "description": "Marketo specific options for ingestion", + "fields": { + "sync_start_date": { + "description": "(Optional) Start date for the initial sync in YYYY-MM-DD format.\nThis determines the earliest date from which to sync historical data.\nIf not specified, complete history is ingested.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.MaturityLevel": { + "description": "Maturity level for EventDetails.", + "enum": [ + "STABLE", + "EVOLVING", + "DEPRECATED" + ], + "enum_launch_stages": { + "DEPRECATED": "GA", + "EVOLVING": "GA", + "STABLE": "GA" + } + }, + "pipelines.MetaMarketingOptions": { + "description": "Meta Marketing (Meta Ads) specific options for ingestion", + "fields": { + "action_attribution_windows": { + "description": "(Optional, DEPRECATED — use custom_report_options.action_attribution_windows) Action attribution\nwindows for insights reporting (e.g. \"28d_click\", \"1d_view\")", + "deprecated": true, + "launch_stage": "PUBLIC_BETA" + }, + "action_breakdowns": { + "description": "(Optional, DEPRECATED — use custom_report_options.action_breakdowns) Action breakdowns", + "deprecated": true, + "launch_stage": "PUBLIC_BETA" + }, + "action_report_time": { + "description": "(Optional, DEPRECATED — use custom_report_options.action_report_time) Timing used to report\naction statistics (impression, conversion, mixed, or lifetime)", + "deprecated": true, + "launch_stage": "PUBLIC_BETA" + }, + "breakdowns": { + "description": "(Optional, DEPRECATED — use custom_report_options.breakdowns) Breakdowns to configure", + "deprecated": true, + "launch_stage": "PUBLIC_BETA" + }, + "custom_insights_lookback_window": { + "description": "(Optional) Window in days to revisit data during sync to capture\nupdated conversion data from the API, shared by prebuilt and custom reports.", + "launch_stage": "PUBLIC_BETA" + }, + "custom_report_options": { + "description": "(Optional) Per-table custom report definition. When set, defines the shape of the insights\ncall for this table (level/fields/breakdowns/action_breakdowns/etc.). Supersedes the deprecated\nflat report-shape fields above.", + "ref": "pipelines.MetaMarketingOptionsMetaMarketingCustomReportOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "level": { + "description": "(Optional, DEPRECATED — use custom_report_options.level) Granularity of data to pull\n(account, ad, adset, campaign)", + "deprecated": true, + "launch_stage": "PUBLIC_BETA" + }, + "start_date": { + "description": "(Optional) Start date in yyyy-MM-dd format (e.g. 2025-01-15). Data added\nafter this date will be ingested, shared by prebuilt and custom reports.", + "launch_stage": "PUBLIC_BETA" + }, + "time_increment": { + "description": "(Optional, DEPRECATED — use custom_report_options.time_increment) Value in string by which to\naggregate statistics (can take all_days, monthly or number of days)", + "deprecated": true, + "launch_stage": "PUBLIC_BETA" + } + } + }, + "pipelines.MetaMarketingOptionsMetaMarketingCustomReportOptions": { + "description": "Defines the shape of a single Meta Ads custom report (one /insights call shape).\nstart_date, custom_insights_lookback_window live on MetaMarketingOptions, not here.\nMetrics are not customer-selectable; the connector returns a fixed standard metric set.", + "fields": { + "action_attribution_windows": { + "description": "(Optional) Action attribution windows for insights reporting (e.g. \"28d_click\", \"1d_view\")", + "launch_stage": "PRIVATE_PREVIEW" + }, + "action_breakdowns": { + "description": "(Optional) Action breakdowns to configure for data aggregation", + "launch_stage": "PRIVATE_PREVIEW" + }, + "action_report_time": { + "description": "(Optional) Timing used to report action statistics (impression, conversion, mixed, or lifetime)", + "launch_stage": "PRIVATE_PREVIEW" + }, + "breakdowns": { + "description": "(Optional) Breakdowns to configure for data aggregation", + "launch_stage": "PRIVATE_PREVIEW" + }, + "level": { + "description": "(Optional) Granularity of data to pull (account, ad, adset, campaign)", + "launch_stage": "PRIVATE_PREVIEW" + }, + "time_increment": { + "description": "(Optional) Value in string by which to aggregate statistics (all_days, monthly or number of days)", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.NotebookLibrary": { + "fields": { + "path": { + "description": "The absolute path of the source code.", + "launch_stage": "GA" + } + } + }, + "pipelines.Notifications": { + "fields": { + "alerts": { + "description": "A list of alerts that trigger the sending of notifications to the configured\ndestinations. The supported alerts are:\n\n* `on-update-success`: A pipeline update completes successfully.\n* `on-update-failure`: Each time a pipeline update fails.\n* `on-update-fatal-failure`: A pipeline update fails with a non-retryable (fatal) error.\n* `on-flow-failure`: A single data flow fails.", + "launch_stage": "GA" + }, + "email_recipients": { + "description": "A list of email addresses notified when a configured alert is triggered.", + "launch_stage": "GA" + } + } + }, + "pipelines.OperationTimeWindow": { + "description": "Proto representing a window", + "fields": { + "days_of_week": { + "description": "Days of week in which the window is allowed to happen\nIf not specified all days of the week will be used.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "start_hour": { + "description": "An integer between 0 and 23 denoting the start hour for the window in the 24-hour day.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "time_zone_id": { + "description": "Time zone id of window. See https://docs.databricks.com/sql/language-manual/sql-ref-syntax-aux-conf-mgmt-set-timezone.html for details.\nIf not specified, UTC will be used.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.Origin": { + "fields": { + "batch_id": { + "description": "The id of a batch. Unique within a flow.", + "launch_stage": "GA" + }, + "cloud": { + "description": "The cloud provider, e.g., AWS or Azure.", + "launch_stage": "GA" + }, + "cluster_id": { + "description": "The id of the cluster where an execution happens. Unique within a region.", + "launch_stage": "GA" + }, + "dataset_name": { + "description": "The name of a dataset. Unique within a pipeline.", + "launch_stage": "GA" + }, + "flow_id": { + "description": "The id of the flow. Globally unique. Incremental queries will generally\nreuse the same id while complete queries will have a new id per update.", + "launch_stage": "GA" + }, + "flow_name": { + "description": "The name of the flow. Not unique.", + "launch_stage": "GA" + }, + "host": { + "description": "The optional host name where the event was triggered", + "launch_stage": "GA" + }, + "ingestion_source_catalog_name": { + "description": "The name of the source catalog name (if known) from whose data ingestion is described by this event.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "ingestion_source_connection_name": { + "description": "The name of the source UC connection (if known) from whose data ingestion is described by this event.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "ingestion_source_schema_name": { + "description": "The name of the source schema name (if known) from whose data ingestion is described by this event.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "ingestion_source_table_name": { + "description": "The name of the source table name (if known) from whose data ingestion is described by this event.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "ingestion_source_table_version": { + "description": "An optional implementation-defined source table version of a dataset being (re)ingested.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "maintenance_id": { + "description": "The id of a maintenance run. Globally unique.", + "launch_stage": "GA" + }, + "materialization_name": { + "description": "Materialization name.", + "launch_stage": "GA" + }, + "org_id": { + "description": "The org id of the user. Unique within a cloud.", + "launch_stage": "GA" + }, + "pipeline_id": { + "description": "The id of the pipeline. Globally unique.", + "launch_stage": "GA" + }, + "pipeline_name": { + "description": "The name of the pipeline. Not unique.", + "launch_stage": "GA" + }, + "region": { + "description": "The cloud region.", + "launch_stage": "GA" + }, + "request_id": { + "description": "The id of the request that caused an update.", + "launch_stage": "GA" + }, + "table_id": { + "description": "The id of a (delta) table. Globally unique.", + "launch_stage": "GA" + }, + "uc_resource_id": { + "description": "The Unity Catalog id of the MV or ST being updated.", + "launch_stage": "GA" + }, + "update_id": { + "description": "The id of an execution. Globally unique.", + "launch_stage": "GA" + } + } + }, + "pipelines.OutlookAttachmentMode": { + "description": "Attachment behavior mode for Outlook ingestion", + "enum": [ + "ALL", + "NON_INLINE_ONLY", + "INLINE_ONLY", + "NONE" + ], + "enum_launch_stages": { + "ALL": "PRIVATE_PREVIEW", + "INLINE_ONLY": "PRIVATE_PREVIEW", + "NONE": "PRIVATE_PREVIEW", + "NON_INLINE_ONLY": "PRIVATE_PREVIEW" + } + }, + "pipelines.OutlookBodyFormat": { + "description": "Body format for Outlook email content", + "enum": [ + "TEXT_HTML", + "TEXT_PLAIN" + ], + "enum_launch_stages": { + "TEXT_HTML": "PRIVATE_PREVIEW", + "TEXT_PLAIN": "PRIVATE_PREVIEW" + } + }, + "pipelines.OutlookOptions": { + "description": "Outlook specific options for ingestion", + "fields": { + "attachment_mode": { + "description": "(Optional) Controls which attachments to ingest.\nIf not specified, defaults to ALL.", + "ref": "pipelines.OutlookAttachmentMode", + "launch_stage": "PRIVATE_PREVIEW" + }, + "body_format": { + "description": "(Optional) Defines how the body_content column is populated.\nTEXT_HTML: Preserves full formatting, links, and styling.\nTEXT_PLAIN: Converts body to plain text. Recommended for AI/RAG pipelines to reduce token usage and noise.", + "ref": "pipelines.OutlookBodyFormat", + "launch_stage": "PRIVATE_PREVIEW" + }, + "folder_filter": { + "description": "Deprecated. Use include_folders instead.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "include_folders": { + "description": "(Optional) Filter mail folders to include in the sync.\nIf not specified, all folders will be synced.\nExamples: Inbox, Sent Items, Custom_Folder\nFilter semantics: OR between different folders.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "include_mailboxes": { + "description": "(Optional) List of mailboxes to sync (e.g. mailbox email addresses or identifiers).\nIf not specified, all accessible mailboxes are ingested.\nFilter semantics: OR between different mailboxes.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "include_senders": { + "description": "(Optional) Filter emails by sender address. Uses exact email match.\nExamples: user@vendor.com, alerts@system.io, noreply@company.com\nIf not specified, emails from all senders will be synced.\nFilter semantics: OR between different senders.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "include_subjects": { + "description": "(Optional) Filter emails by subject line. Values ending with \"*\" use prefix match (subject starts with\nthe part before \"*\"); otherwise substring match (subject contains the value).\nExamples: \"Invoice\" (substring), \"Re:*\" (prefix), \"Support Ticket\", \"URGENT*\"\nIf not specified, emails with all subjects will be synced.\nFilter semantics: OR between different subjects.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "sender_filter": { + "description": "Deprecated. Use include_senders instead.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "start_date": { + "description": "(Optional) Start date for the initial sync in YYYY-MM-DD format.\nFormat: YYYY-MM-DD (e.g., 2024-01-01)\nThis determines the earliest date from which to sync historical data.\nIf not specified, complete history is ingested.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "subject_filter": { + "description": "Deprecated. Use include_subjects instead.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.ParseMode": { + "description": "Determines how errors encountered while deserializing records are handled.", + "enum": [ + "FAILFAST", + "PERMISSIVE" + ], + "enum_launch_stages": { + "FAILFAST": "PUBLIC_BETA", + "PERMISSIVE": "PUBLIC_BETA" + } + }, + "pipelines.PathPattern": { + "fields": { + "include": { + "description": "The source code to include for pipelines", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.PipelineAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "pipelines.PipelinePermissionLevel", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "pipelines.PipelineAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "pipelines.PipelineCluster": { + "fields": { + "apply_policy_default_values": { + "description": "Note: This field won't be persisted. Only API users will check this field.", + "launch_stage": "GA" + }, + "autoscale": { + "description": "Parameters needed in order to automatically scale clusters up and down based on load.\nNote: autoscaling works best with DB runtime versions 3.0 or later.", + "ref": "pipelines.PipelineClusterAutoscale", + "launch_stage": "GA" + }, + "aws_attributes": { + "description": "Attributes related to clusters running on Amazon Web Services.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AwsAttributes", + "launch_stage": "GA" + }, + "azure_attributes": { + "description": "Attributes related to clusters running on Microsoft Azure.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.AzureAttributes", + "launch_stage": "GA" + }, + "cluster_log_conf": { + "description": "The configuration for delivering spark logs to a long-term storage destination.\nOnly dbfs destinations are supported. Only one destination can be specified\nfor one cluster. If the conf is given, the logs will be delivered to the destination every\n`5 mins`. The destination of driver logs is `$destination/$clusterId/driver`, while\nthe destination of executor logs is `$destination/$clusterId/executor`.", + "ref": "compute.ClusterLogConf", + "launch_stage": "GA" + }, + "custom_tags": { + "description": "Additional tags for cluster resources. Databricks will tag all cluster resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags\n\n- Clusters can only reuse cloud resources if the resources' tags are a subset of the cluster tags", + "launch_stage": "GA" + }, + "driver_instance_pool_id": { + "description": "The optional ID of the instance pool for the driver of the cluster belongs.\nThe pool cluster uses the instance pool with id (instance_pool_id) if the driver pool is not\nassigned.", + "launch_stage": "GA" + }, + "driver_node_type_id": { + "description": "The node type of the Spark driver.\nNote that this field is optional; if unset, the driver node type will be set as the same value\nas `node_type_id` defined above.", + "launch_stage": "GA" + }, + "enable_local_disk_encryption": { + "description": "Whether to enable local disk encryption for the cluster.", + "launch_stage": "GA" + }, + "gcp_attributes": { + "description": "Attributes related to clusters running on Google Cloud Platform.\nIf not specified at cluster creation, a set of default values will be used.", + "ref": "compute.GcpAttributes", + "launch_stage": "GA" + }, + "init_scripts": { + "description": "The configuration for storing init scripts. Any number of destinations can be specified. The scripts are executed sequentially in the order provided. If `cluster_log_conf` is specified, init script logs are sent to `\u003cdestination\u003e/\u003ccluster-ID\u003e/init_scripts`.", + "launch_stage": "GA" + }, + "instance_pool_id": { + "description": "The optional ID of the instance pool to which the cluster belongs.", + "launch_stage": "GA" + }, + "label": { + "description": "A label for the cluster specification, either `default` to configure the default cluster settings applied to both the update and maintenance clusters, `updates` to configure the update cluster, or `maintenance` to configure the maintenance cluster. This field is optional. The default value is `default`.", + "launch_stage": "GA" + }, + "node_type_id": { + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the :method:clusters/listNodeTypes API call.", + "launch_stage": "GA" + }, + "num_workers": { + "description": "Number of worker nodes that this cluster should have. A cluster has one Spark Driver\nand `num_workers` Executors for a total of `num_workers` + 1 Spark nodes.\n\nNote: When reading the properties of a cluster, this field reflects the desired number\nof workers rather than the actual current number of workers. For instance, if a cluster\nis resized from 5 to 10 workers, this field will immediately be updated to reflect\nthe target size of 10 workers, whereas the workers listed in `spark_info` will gradually\nincrease from 5 to 10 as the new nodes are provisioned.", + "launch_stage": "GA" + }, + "policy_id": { + "description": "The ID of the cluster policy used to create the cluster if applicable.", + "launch_stage": "GA" + }, + "spark_conf": { + "description": "An object containing a set of optional, user-specified Spark configuration key-value pairs.\nSee :method:clusters/create for more details.", + "launch_stage": "GA" + }, + "spark_env_vars": { + "description": "An object containing a set of optional, user-specified environment variable key-value pairs.\nPlease note that key-value pair of the form (X,Y) will be exported as is (i.e.,\n`export X='Y'`) while launching the driver and workers.\n\nIn order to specify an additional set of `SPARK_DAEMON_JAVA_OPTS`, we recommend appending\nthem to `$SPARK_DAEMON_JAVA_OPTS` as shown in the example below. This ensures that all\ndefault databricks managed environmental variables are included as well.\n\nExample Spark environment variables:\n`{\"SPARK_WORKER_MEMORY\": \"28000m\", \"SPARK_LOCAL_DIRS\": \"/local_disk0\"}` or\n`{\"SPARK_DAEMON_JAVA_OPTS\": \"$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true\"}`", + "launch_stage": "GA" + }, + "ssh_public_keys": { + "description": "SSH public key contents that will be added to each Spark node in this cluster. The\ncorresponding private keys can be used to login with the user name `ubuntu` on port `2200`.\nUp to 10 keys can be specified.", + "launch_stage": "GA" + } + } + }, + "pipelines.PipelineClusterAutoscale": { + "fields": { + "max_workers": { + "description": "The maximum number of workers to which the cluster can scale up when overloaded. `max_workers` must be strictly greater than `min_workers`.", + "launch_stage": "GA" + }, + "min_workers": { + "description": "The minimum number of workers the cluster can scale down to when underutilized.\nIt is also the initial number of workers the cluster will have after creation.", + "launch_stage": "GA" + }, + "mode": { + "description": "Databricks Enhanced Autoscaling optimizes cluster utilization by automatically\nallocating cluster resources based on workload volume, with minimal impact to\nthe data processing latency of your pipelines. Enhanced Autoscaling is available\nfor `updates` clusters only. The legacy autoscaling feature is used for `maintenance`\nclusters.", + "ref": "pipelines.PipelineClusterAutoscaleMode", + "launch_stage": "GA" + } + } + }, + "pipelines.PipelineClusterAutoscaleMode": { + "description": "Databricks Enhanced Autoscaling optimizes cluster utilization by automatically\nallocating cluster resources based on workload volume, with minimal impact to\nthe data processing latency of your pipelines. Enhanced Autoscaling is available\nfor `updates` clusters only. The legacy autoscaling feature is used for `maintenance`\nclusters.", + "enum": [ + "ENHANCED", + "LEGACY" + ], + "enum_launch_stages": { + "ENHANCED": "GA", + "LEGACY": "GA" + } + }, + "pipelines.PipelineDeployment": { + "fields": { + "deployment_id": { + "description": "ID of the deployment that manages this pipeline. Only set when `kind` is\n`BUNDLE`. Used to look up deployment metadata from the Deployment\nMetadata service.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "kind": { + "description": "The deployment method that manages the pipeline.", + "ref": "pipelines.DeploymentKind", + "launch_stage": "GA" + }, + "metadata_file_path": { + "description": "The path to the file containing metadata about the deployment.", + "launch_stage": "GA" + }, + "version_id": { + "description": "ID of the version of the deployment that produced this pipeline. Only\nset when `kind` is `BUNDLE`. Identifies a specific snapshot of the\ndeployment in the Deployment Metadata service.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.PipelineEvent": { + "fields": { + "error": { + "description": "Information about an error captured by the event.", + "ref": "pipelines.ErrorDetail", + "launch_stage": "GA" + }, + "event_type": { + "description": "The event type. Should always correspond to the details", + "launch_stage": "GA" + }, + "id": { + "description": "A time-based, globally unique id.", + "launch_stage": "GA" + }, + "level": { + "description": "The severity level of the event.", + "ref": "pipelines.EventLevel", + "launch_stage": "GA" + }, + "maturity_level": { + "description": "Maturity level for event_type.", + "ref": "pipelines.MaturityLevel", + "launch_stage": "GA" + }, + "message": { + "description": "The display message associated with the event.", + "launch_stage": "GA" + }, + "origin": { + "description": "Describes where the event originates from.", + "ref": "pipelines.Origin", + "launch_stage": "GA" + }, + "sequence": { + "description": "A sequencing object to identify and order events.", + "ref": "pipelines.Sequencing", + "launch_stage": "GA" + }, + "timestamp": { + "description": "The time of the event.", + "launch_stage": "GA" + }, + "truncation": { + "description": "Information about which fields were truncated from this event due to size constraints.\nIf empty or absent, no truncation occurred.\nSee https://docs.databricks.com/en/ldp/monitor-event-logs for information on\nretrieving complete event data.", + "ref": "pipelines.Truncation", + "launch_stage": "GA" + } + } + }, + "pipelines.PipelineLibrary": { + "fields": { + "file": { + "description": "The path to a file that defines a pipeline and is stored in the Databricks Repos.", + "ref": "pipelines.FileLibrary", + "launch_stage": "GA" + }, + "glob": { + "description": "The unified field to include source codes.\nEach entry can be a notebook path, a file path, or a folder path that ends `/**`.\nThis field cannot be used together with `notebook` or `file`.", + "ref": "pipelines.PathPattern", + "launch_stage": "PUBLIC_PREVIEW" + }, + "jar": { + "description": "URI of the jar to be installed. Currently only DBFS is supported.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "maven": { + "description": "Specification of a maven library to be installed.", + "ref": "compute.MavenLibrary", + "launch_stage": "PRIVATE_PREVIEW" + }, + "notebook": { + "description": "The path to a notebook that defines a pipeline and is stored in the Databricks workspace.", + "ref": "pipelines.NotebookLibrary", + "launch_stage": "GA" + }, + "whl": { + "description": "URI of the whl to be installed.", + "deprecated": true, + "launch_stage": "GA" + } + } + }, + "pipelines.PipelinePermission": { + "fields": { + "inherited": { + "launch_stage": "GA" + }, + "inherited_from_object": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "pipelines.PipelinePermissionLevel", + "launch_stage": "GA" + } + } + }, + "pipelines.PipelinePermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_MANAGE", + "IS_OWNER", + "CAN_RUN", + "CAN_VIEW" + ] + }, + "pipelines.PipelinePermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "launch_stage": "GA" + }, + "object_type": { + "launch_stage": "GA" + } + } + }, + "pipelines.PipelinePermissionsDescription": { + "fields": { + "description": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "pipelines.PipelinePermissionLevel", + "launch_stage": "GA" + } + } + }, + "pipelines.PipelinePermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "pipelines.PipelineSpec": { + "fields": { + "budget_policy_id": { + "description": "Budget policy of this pipeline.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "catalog": { + "description": "A catalog in Unity Catalog to publish data from this pipeline to. If `target` is specified, tables in this pipeline are published to a `target` schema inside `catalog` (for example, `catalog`.`target`.`table`). If `target` is not specified, no data is published to Unity Catalog.", + "launch_stage": "GA" + }, + "channel": { + "description": "SDP Release Channel that specifies which version to use.", + "launch_stage": "GA" + }, + "clusters": { + "description": "Cluster settings for this pipeline deployment. Applies to classic\n(non-serverless) pipelines. Omit this field when `serverless` is `true`.", + "launch_stage": "GA" + }, + "configuration": { + "description": "String-String configuration for this pipeline execution.", + "launch_stage": "GA" + }, + "continuous": { + "description": "Whether the pipeline is continuous or triggered. This replaces `trigger`.\n\nDeprecated: wrap the pipeline in a continuous job instead, which also lets you take advantage\nof job-level settings such as performance mode. When the pipeline is started by a continuous\njob, the job's setting takes precedence and this field is ignored.", + "deprecated": true, + "launch_stage": "GA" + }, + "deployment": { + "description": "Deployment type of this pipeline.", + "ref": "pipelines.PipelineDeployment", + "launch_stage": "GA" + }, + "development": { + "description": "Whether the pipeline is in Development mode. Defaults to false.\n\nDeprecated: set development mode for each update instead.", + "deprecated": true, + "launch_stage": "GA" + }, + "edition": { + "description": "Pipeline product edition.", + "launch_stage": "GA" + }, + "environment": { + "description": "Environment specification for this pipeline used to install dependencies.", + "ref": "pipelines.PipelinesEnvironment", + "launch_stage": "PUBLIC_PREVIEW" + }, + "event_log": { + "description": "Event log configuration for this pipeline", + "ref": "pipelines.EventLogSpec", + "launch_stage": "GA" + }, + "filters": { + "description": "Filters on which Pipeline packages to include in the deployed graph.", + "ref": "pipelines.Filters", + "launch_stage": "GA" + }, + "gateway_definition": { + "description": "The definition of a gateway pipeline to support change data capture.", + "ref": "pipelines.IngestionGatewayPipelineDefinition", + "launch_stage": "PRIVATE_PREVIEW" + }, + "id": { + "description": "Unique identifier for this pipeline.", + "launch_stage": "GA" + }, + "ingestion_definition": { + "description": "The configuration for a managed ingestion pipeline. These settings cannot be used with the 'libraries', 'schema', 'target', or 'catalog' settings.", + "ref": "pipelines.IngestionPipelineDefinition", + "launch_stage": "PUBLIC_PREVIEW" + }, + "libraries": { + "description": "Libraries or code needed by this deployment.", + "launch_stage": "GA" + }, + "name": { + "description": "Friendly identifier for this pipeline.", + "launch_stage": "GA" + }, + "notifications": { + "description": "List of notification settings for this pipeline.", + "launch_stage": "GA" + }, + "parent_path": { + "description": "Path of the pipeline parent folder in workspace file tree.\n\nIf absent, the pipeline doesn't have a workspace object.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "photon": { + "description": "Whether Photon is enabled for this pipeline.", + "launch_stage": "GA" + }, + "restart_window": { + "description": "Restart window of this pipeline.", + "ref": "pipelines.RestartWindow", + "launch_stage": "PRIVATE_PREVIEW" + }, + "root_path": { + "description": "Root path for this pipeline.\nThis is used as the root directory when editing the pipeline in the Databricks user interface and it is\nadded to sys.path when executing Python sources during pipeline execution.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "schema": { + "description": "The default schema (database) where tables are read from or published to.", + "launch_stage": "GA" + }, + "serverless": { + "description": "Whether serverless compute is enabled for this pipeline. Serverless is the\nrecommended compute for new pipelines; set this to `true` to run the pipeline\non serverless. For notebook/file pipelines, omitting this field uses classic\ncompute configured through the `clusters` field. When `true`, omit `clusters`;\nPhoton is always enabled.", + "launch_stage": "GA" + }, + "serverless_compute_id": { + "description": "Serverless compute ID specified by the user for serverless pipelines.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "storage": { + "description": "DBFS root directory for storing checkpoints and tables.", + "launch_stage": "GA" + }, + "tags": { + "description": "A map of tags associated with the pipeline.\nThese are forwarded to the cluster as cluster tags, and are therefore subject to the same limitations.\nA maximum of 25 tags can be added to the pipeline.", + "launch_stage": "GA" + }, + "target": { + "description": "Target schema (database) to add tables in this pipeline to. Exactly one of `schema` or `target` must be specified. To publish to Unity Catalog, also specify `catalog`. This legacy field is deprecated for pipeline creation in favor of the `schema` field.", + "deprecated": true, + "launch_stage": "GA" + }, + "trigger": { + "description": "Which pipeline trigger to use. Deprecated: Use `continuous` instead.", + "ref": "pipelines.PipelineTrigger", + "deprecated": true, + "launch_stage": "GA" + }, + "usage_policy_id": { + "description": "Usage policy of this pipeline.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.PipelineState": { + "description": "The pipeline state.", + "enum": [ + "DEPLOYING", + "STARTING", + "RUNNING", + "STOPPING", + "DELETED", + "RECOVERING", + "FAILED", + "RESETTING", + "IDLE" + ], + "enum_launch_stages": { + "DELETED": "GA", + "DEPLOYING": "GA", + "FAILED": "GA", + "IDLE": "GA", + "RECOVERING": "GA", + "RESETTING": "GA", + "RUNNING": "GA", + "STARTING": "GA", + "STOPPING": "GA" + } + }, + "pipelines.PipelineStateInfo": { + "fields": { + "cluster_id": { + "description": "The unique identifier of the cluster running the pipeline.", + "launch_stage": "GA" + }, + "creator_user_name": { + "description": "The username of the pipeline creator.", + "launch_stage": "GA" + }, + "health": { + "description": "The health of a pipeline.", + "ref": "pipelines.PipelineStateInfoHealth", + "deprecated": true, + "launch_stage": "GA" + }, + "latest_updates": { + "description": "Status of the latest updates for the pipeline. Ordered with the newest update first.", + "launch_stage": "GA" + }, + "name": { + "description": "The user-friendly name of the pipeline.", + "launch_stage": "GA" + }, + "pipeline_id": { + "description": "The unique identifier of the pipeline.", + "launch_stage": "GA" + }, + "run_as_user_name": { + "description": "The username that the pipeline runs as. This is a read only value derived from the pipeline owner.", + "launch_stage": "GA" + }, + "state": { + "ref": "pipelines.PipelineState", + "launch_stage": "GA" + } + } + }, + "pipelines.PipelineStateInfoHealth": { + "description": "The health of a pipeline.", + "enum": [ + "HEALTHY", + "UNHEALTHY" + ], + "enum_launch_stages": { + "HEALTHY": "GA", + "UNHEALTHY": "GA" + } + }, + "pipelines.PipelineTrigger": { + "fields": { + "cron": { + "ref": "pipelines.CronTrigger", + "launch_stage": "GA" + }, + "manual": { + "ref": "pipelines.ManualTrigger", + "launch_stage": "GA" + } + } + }, + "pipelines.PipelinesEnvironment": { + "description": "The environment entity used to preserve serverless environment side panel, jobs' environment for non-notebook task, and SDP's environment for classic and serverless pipelines.\nIn this minimal environment spec, only pip dependencies are supported.", + "fields": { + "dependencies": { + "description": "List of pip dependencies, as supported by the version of pip in this environment.\nEach dependency is a pip requirement file line https://pip.pypa.io/en/stable/reference/requirements-file-format/\nAllowed dependency could be \u003crequirement specifier\u003e, \u003carchive url/path\u003e, \u003clocal project path\u003e(WSFS or Volumes in Databricks), \u003cvcs project url\u003e", + "launch_stage": "PUBLIC_PREVIEW" + }, + "environment_version": { + "description": "The environment version of the serverless Python environment used to execute\ncustomer Python code. Each environment version includes a specific Python\nversion and a curated set of pre-installed libraries with defined versions,\nproviding a stable and reproducible execution environment.\n\nDatabricks supports a three-year lifecycle for each environment version.\nFor available versions and their included packages, see\nhttps://docs.databricks.com/aws/en/release-notes/serverless/environment-version/\n\nThe value should be a string representing the environment version number, for example: `\"4\"`.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.PostgresCatalogConfig": { + "description": "PG-specific catalog-level configuration parameters", + "fields": { + "slot_config": { + "description": "Optional. The Postgres slot configuration to use for logical replication", + "ref": "pipelines.PostgresSlotConfig", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.PostgresSlotConfig": { + "description": "PostgresSlotConfig contains the configuration for a Postgres logical replication slot", + "fields": { + "publication_name": { + "description": "The name of the publication to use for the Postgres source", + "launch_stage": "PUBLIC_PREVIEW" + }, + "slot_name": { + "description": "The name of the logical replication slot to use for the Postgres source", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.ProtobufTransformerOptions": { + "fields": { + "desc_file_path": { + "description": "Required: path to the .desc file (dbfs:/... or /Volumes/...).", + "launch_stage": "PUBLIC_BETA" + }, + "message_name": { + "description": "Required: fully-qualified message type name.", + "launch_stage": "PUBLIC_BETA" + }, + "parse_mode": { + "description": "(Optional) Parse mode for Protobuf data.\nValid values: FAILFAST, PERMISSIVE. Defaults to PERMISSIVE.", + "ref": "pipelines.ParseMode", + "launch_stage": "PUBLIC_BETA" + }, + "recursive_fields_max_depth": { + "description": "(Optional) Maximum expansion depth for recursive protobuf fields.\nSpark SQL does not natively support recursive types, so recursive\nfields are expanded up to this depth and truncated beyond it.\nValid values: -1 (disallow recursive fields), 0 (drop), 1-10.", + "launch_stage": "PUBLIC_BETA" + }, + "schema_registry": { + "description": "(Optional) Schema registry to resolve the Protobuf schema at runtime instead\nof providing it via desc_file_path.", + "ref": "pipelines.SchemaRegistryConfig", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "pipelines.PublishingMode": { + "description": "Enum representing the publishing mode of a pipeline.", + "enum": [ + "LEGACY_PUBLISHING_MODE", + "DEFAULT_PUBLISHING_MODE" + ], + "enum_launch_stages": { + "DEFAULT_PUBLISHING_MODE": "GA", + "LEGACY_PUBLISHING_MODE": "GA" + } + }, + "pipelines.RabbitmqOptions": { + "description": "RabbitMQ specific options for ingestion.\nPerformance tuning options (consumers_per_task, max_messages_per_fetch, etc.)\nare intentionally not exposed in the public API. The managed connector uses\nsensible defaults internally. These can be added later if user demand arises.", + "fields": { + "queue": { + "description": "(Required) RabbitMQ queue name to consume from.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "pipelines.RedditAdsOptions": { + "description": "Reddit Ads specific options for ingestion", + "fields": { + "custom_report_options": { + "description": "(Optional) Custom report definition. When set, the table is treated as a\nuser-defined Reddit Ads custom report. When unset, the table must match\none of the connector's prebuilt sources.", + "ref": "pipelines.RedditAdsOptionsRedditAdsCustomReportOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "lookback_window_days": { + "description": "(Optional) Number of days to look back for report tables during incremental sync\nto capture late-arriving conversions and attribution data.\nIf not specified, defaults to 30 days.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "sync_start_date": { + "description": "(Optional) Start date for the initial sync of report tables in YYYY-MM-DD format.\nThis determines the earliest date from which to sync historical data.\nIf not specified, defaults to 2 years ago.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.RedditAdsOptionsRedditAdsCustomReportOptions": { + "description": "User-defined custom report for the Reddit Ads connector.\nApplies only to the custom_report table — prebuilt tables ignore this.", + "fields": { + "breakdowns": { + "description": "(Optional) Breakdown dimensions to group report data by.\nExamples: CAMPAIGN_ID, DATE, COUNTRY, REGION, AD_ID.\nMust include at least one time dimension (DATE or HOUR).", + "launch_stage": "PRIVATE_PREVIEW" + }, + "fields": { + "description": "(Optional) Fields to include in the report (maps to the Reddit Ads API `fields` parameter).\nExamples: IMPRESSIONS, CLICKS, SPEND, CPC, CTR.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.ReplaceWhereOverride": { + "description": "Specifies a replace_where predicate override for a replace where flow.", + "fields": { + "flow_name": { + "description": "Name of the flow to apply this override to.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "predicate_override": { + "description": "SQL predicate string to use as replace_where condition.\nExample: `date = '2024-10-10' AND city = 'xyz'`", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.ReportSpec": { + "fields": { + "destination_catalog": { + "description": "Required. Destination catalog to store table.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "destination_schema": { + "description": "Required. Destination schema to store table.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "destination_table": { + "description": "Required. Destination table name. The pipeline fails if a table with that name already exists.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "source_url": { + "description": "Required. Report URL in the source system.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "table_configuration": { + "description": "Configuration settings to control the ingestion of tables. These settings override the table_configuration defined in the IngestionPipelineDefinition object.", + "ref": "pipelines.TableSpecificConfig", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.RestartWindow": { + "fields": { + "days_of_week": { + "description": "Days of week in which the restart is allowed to happen (within a five-hour window starting at start_hour).\nIf not specified all days of the week will be used.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "start_hour": { + "description": "An integer between 0 and 23 denoting the start hour for the restart window in the 24-hour day.\nContinuous pipeline restart is triggered only within a five-hour window starting at this hour.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "time_zone_id": { + "description": "Time zone id of restart window. See https://docs.databricks.com/sql/language-manual/sql-ref-syntax-aux-conf-mgmt-set-timezone.html for details.\nIf not specified, UTC will be used.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.RewindDatasetSpec": { + "description": "Configuration for rewinding a specific dataset.", + "fields": { + "cascade": { + "description": "Whether to cascade the rewind to dependent datasets. Must be specified.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "identifier": { + "description": "The identifier of the dataset (e.g., \"main.foo.tbl1\").", + "launch_stage": "PRIVATE_PREVIEW" + }, + "reset_checkpoints": { + "description": "Whether to reset checkpoints for this dataset.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.RewindSpec": { + "description": "Information about a rewind being requested for this pipeline or some of the datasets in it.", + "fields": { + "datasets": { + "description": "List of datasets to rewind with specific configuration for each. When not specified,\nall datasets will be rewound with cascade = true and reset_checkpoints = true.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "dry_run": { + "description": "If true, this is a dry run and we should emit the RewindSummary but not perform the rewind.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "rewind_timestamp": { + "description": "The base timestamp to rewind to. Exactly one of rewind_timestamp or rewind_point_id must be\nspecified.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.RunAs": { + "description": "Write-only setting, available only in Create/Update calls. Specifies the user or service principal that the pipeline runs as. If not specified, the pipeline runs as the user who created the pipeline.\n\nOnly `user_name` or `service_principal_name` can be specified. If both are specified, an error is thrown.", + "fields": { + "group_name": { + "description": "Group name of an account group assigned to the workspace. When set, the pipeline runs as the group and the group's permissions are used for data access. Setting this field requires being a member of the group, or having the `Assume` permission on the group.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "service_principal_name": { + "description": "Application ID of an active service principal. Setting this field requires the `servicePrincipal/user` role.", + "launch_stage": "GA" + }, + "user_name": { + "description": "The email of an active workspace user. Users can only set this field to their own email.", + "launch_stage": "GA" + } + } + }, + "pipelines.SchemaRegistryConfig": { + "fields": { + "confluent_options": { + "description": "Required: Confluent-compatible schema registry options.", + "ref": "pipelines.ConfluentSchemaRegistryOptions", + "launch_stage": "PUBLIC_BETA" + }, + "connection_name": { + "description": "(Optional) UC connection for registry authentication.\nSpecify if different from the top-level source connection.", + "launch_stage": "PUBLIC_BETA" + }, + "protobuf_message_name": { + "description": "(Optional, Protobuf only) Selects a specific message from a schema that\ndefines multiple Protobuf messages. Simple (\"Location\") or fully-qualified\n(\"com.example.protos.Location\"). Defaults to the first message.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "pipelines.SchemaSpec": { + "fields": { + "connector_options": { + "description": "(Optional) Source Specific Connector Options", + "ref": "pipelines.ConnectorOptions", + "launch_stage": "PUBLIC_PREVIEW" + }, + "destination_catalog": { + "description": "Required. Destination catalog to store tables.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "destination_schema": { + "description": "Required. Destination schema to store tables in. Tables with the same name as the source tables are created in this destination schema. The pipeline fails If a table with the same name already exists.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "fanout_options": { + "description": "Fanout options for multi-table routing from streaming sources.\nWhen set, records are routed to destination tables based on a\nper-record routing key. The key value becomes the table name:\n{destination_catalog}.{destination_schema}.{key_value}.", + "ref": "pipelines.IngestionPipelineDefinitionFanoutOptions", + "launch_stage": "PUBLIC_BETA" + }, + "source_catalog": { + "description": "The source catalog name. Might be optional depending on the type of source.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "source_schema": { + "description": "Schema name in the source database. Optional: some source types (for example streaming or\nmessage-bus connectors) do not use it, so it may be absent from a pipeline's definition.\nClients that assume it is always present should handle its absence.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "table_configuration": { + "description": "Configuration settings to control the ingestion of tables. These settings are applied to all tables in this schema and override the table_configuration defined in the IngestionPipelineDefinition object.", + "ref": "pipelines.TableSpecificConfig", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.Sequencing": { + "fields": { + "control_plane_seq_no": { + "description": "A sequence number, unique and increasing per pipeline.", + "launch_stage": "GA" + }, + "data_plane_id": { + "description": "the ID assigned by the data plane.", + "ref": "pipelines.DataPlaneId", + "launch_stage": "GA" + } + } + }, + "pipelines.SerializedException": { + "fields": { + "class_name": { + "description": "Runtime class of the exception", + "launch_stage": "GA" + }, + "message": { + "description": "Exception message", + "launch_stage": "GA" + }, + "stack": { + "description": "Stack trace consisting of a list of stack frames", + "launch_stage": "GA" + } + } + }, + "pipelines.SharepointOptions": { + "fields": { + "entity_type": { + "description": "(Optional) The type of SharePoint entity to ingest.\nIf not specified, defaults to FILE.", + "ref": "pipelines.SharepointOptionsSharepointEntityType", + "launch_stage": "PRIVATE_PREVIEW" + }, + "file_ingestion_options": { + "description": "(Optional) File ingestion options for processing files.", + "ref": "pipelines.FileIngestionOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "url": { + "description": "Required. The SharePoint URL.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.SharepointOptionsSharepointEntityType": { + "enum": [ + "FILE", + "FILE_METADATA", + "PERMISSION", + "LIST" + ], + "enum_launch_stages": { + "FILE": "PRIVATE_PREVIEW", + "FILE_METADATA": "PRIVATE_PREVIEW", + "LIST": "PRIVATE_PREVIEW", + "PERMISSION": "PRIVATE_PREVIEW" + } + }, + "pipelines.SmartsheetOptions": { + "description": "Smartsheet specific options for ingestion", + "fields": { + "enforce_schema": { + "description": "(Optional) When true, maps each column to its Smartsheet-declared type (Text/Number/Date/\nCheckbox/etc.). Cells that do not conform to the declared type are set to NULL.\nWhen false, all columns land as STRING. Use false for sheets with irregular data or columns\nthat frequently violate their own declared type.\nIf not specified, defaults to true.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.SourceCatalogConfig": { + "description": "SourceCatalogConfig contains catalog-level custom configuration parameters for each source", + "fields": { + "postgres": { + "description": "Postgres-specific catalog-level configuration parameters", + "ref": "pipelines.PostgresCatalogConfig", + "launch_stage": "PUBLIC_PREVIEW" + }, + "source_catalog": { + "description": "Source catalog name", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.SourceConfig": { + "fields": { + "api_source_connector_config": { + "description": "Connector-specific top-level configuration for API Source connectors.", + "ref": "pipelines.ApiSourceConnectorConfig", + "launch_stage": "PRIVATE_PREVIEW" + }, + "catalog": { + "description": "Catalog-level source configuration parameters", + "ref": "pipelines.SourceCatalogConfig", + "launch_stage": "PUBLIC_PREVIEW" + }, + "google_ads_config": { + "ref": "pipelines.GoogleAdsConfig", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.StackFrame": { + "fields": { + "declaring_class": { + "description": "Class from which the method call originated", + "launch_stage": "GA" + }, + "file_name": { + "description": "File where the method is defined", + "launch_stage": "GA" + }, + "line_number": { + "description": "Line from which the method was called", + "launch_stage": "GA" + }, + "method_name": { + "description": "Name of the method which was called", + "launch_stage": "GA" + } + } + }, + "pipelines.StartUpdate": { + "fields": { + "cause": { + "ref": "pipelines.StartUpdateCause", + "launch_stage": "GA" + }, + "development": { + "description": "Whether the update is started in the development mode.\nThis is recommended for interactive development and testing.\nReuses compute for faster iteration and disables automatic retries.\nNot recommended for production.", + "launch_stage": "GA" + }, + "full_refresh": { + "description": "If true, this update will reset all tables before running.", + "launch_stage": "GA" + }, + "full_refresh_selection": { + "description": "A list of tables to update with fullRefresh. If both refresh_selection and\nfull_refresh_selection are empty, this is a full graph update. Full Refresh on a table means\nthat the states of the table will be reset before the refresh.", + "launch_stage": "GA" + }, + "parameters": { + "description": "Key/value map of parameters to pass to the pipeline execution", + "launch_stage": "PUBLIC_BETA" + }, + "refresh_selection": { + "description": "A list of tables to update without fullRefresh. If both refresh_selection and\nfull_refresh_selection are empty, this is a full graph update. Full Refresh on a table means\nthat the states of the table will be reset before the refresh.", + "launch_stage": "GA" + }, + "replace_where_overrides": { + "description": "A list of predicate overrides for replace_where flows in this update.\nOnly replace_where flows may be specified. Flows not listed use their original predicate.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "reset_checkpoint_selection": { + "description": "A list of flows for which this update should reset the streaming checkpoint. This selection will not clear\nthe data in the flow's target table. Flows in this list may also appear in refresh_selection and full_refresh_selection.", + "launch_stage": "GA" + }, + "rewind_spec": { + "description": "The information about the requested rewind operation.\nIf specified this is a rewind mode update.", + "ref": "pipelines.RewindSpec", + "launch_stage": "PRIVATE_PREVIEW" + }, + "validate_only": { + "description": "If true, this update only validates the correctness of pipeline source code but does not materialize or publish any datasets.", + "launch_stage": "GA" + } + } + }, + "pipelines.StartUpdateCause": { + "description": "What triggered this update.", + "enum": [ + "API_CALL", + "RETRY_ON_FAILURE", + "SERVICE_UPGRADE", + "SCHEMA_CHANGE", + "JOB_TASK", + "USER_ACTION", + "INFRASTRUCTURE_MAINTENANCE" + ], + "enum_launch_stages": { + "API_CALL": "GA", + "INFRASTRUCTURE_MAINTENANCE": "GA", + "JOB_TASK": "GA", + "RETRY_ON_FAILURE": "GA", + "SCHEMA_CHANGE": "GA", + "SERVICE_UPGRADE": "GA", + "USER_ACTION": "GA" + } + }, + "pipelines.StartUpdateResponse": { + "fields": { + "update_id": { + "launch_stage": "GA" + } + } + }, + "pipelines.StopPipelineResponse": {}, + "pipelines.StopRequest": {}, + "pipelines.TableSpec": { + "fields": { + "connector_options": { + "description": "(Optional) Source Specific Connector Options", + "ref": "pipelines.ConnectorOptions", + "launch_stage": "PUBLIC_PREVIEW" + }, + "destination_catalog": { + "description": "Required. Destination catalog to store table.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "destination_schema": { + "description": "Required. Destination schema to store table.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "destination_table": { + "description": "Optional. Destination table name. The pipeline fails if a table with that name already exists. If not set, the source table name is used.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "source_catalog": { + "description": "Source catalog name. Might be optional depending on the type of source.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "source_schema": { + "description": "Schema name in the source database. Might be optional depending on the type of source.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "source_table": { + "description": "Table name in the source database. Optional: some source types (for example streaming or\nmessage-bus connectors) do not use it, so it may be absent from a pipeline's definition.\nClients that assume it is always present should handle its absence.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "table_configuration": { + "description": "Configuration settings to control the ingestion of tables. These settings override the table_configuration defined in the IngestionPipelineDefinition object and the SchemaSpec.", + "ref": "pipelines.TableSpecificConfig", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "pipelines.TableSpecificConfig": { + "fields": { + "auto_full_refresh_policy": { + "description": "(Optional, Mutable) Policy for auto full refresh, if enabled pipeline will automatically try\nto fix issues by doing a full refresh on the table in the retry run. auto_full_refresh_policy\nin table configuration will override the above level auto_full_refresh_policy.\nFor example,\n{\n\"auto_full_refresh_policy\": {\n\"enabled\": true,\n\"min_interval_hours\": 23,\n}\n}\nIf unspecified, auto full refresh is disabled.", + "ref": "pipelines.AutoFullRefreshPolicy", + "launch_stage": "PUBLIC_PREVIEW" + }, + "clustering_columns": { + "description": "List of column names to use for clustering the destination table.\nWhen specified, the destination Delta table will be clustered by these columns.\nThis can improve query performance when filtering on these columns.\nNote: clustering_columns in table specific configuration will override the pipeline definition.\nNote: we can only provide enable_auto_clustering or clustering_columns,\nadded as separate fields as we cannot have repeated field in oneof.", + "launch_stage": "PUBLIC_BETA" + }, + "enable_auto_clustering": { + "description": "Whether to enable auto clustering on the destination table.\nWhen enabled, Delta will automatically optimize the data layout\nbased on the clustering columns for improved query performance.\nNote: enable_auto_clustering in table specific configuration will override the pipeline definition.\nNote: we can only provide enable_auto_clustering or clustering_columns,\nadded as separate fields as we cannot have repeated field in oneof.", + "launch_stage": "PUBLIC_BETA" + }, + "exclude_columns": { + "description": "A list of column names to be excluded for the ingestion.\nWhen not specified, include_columns fully controls what columns to be ingested.\nWhen specified, all other columns including future ones will be automatically included for ingestion.\nThis field in mutually exclusive with `include_columns`.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "include_columns": { + "description": "A list of column names to be included for the ingestion.\nWhen not specified, all columns except ones in exclude_columns will be included. Future\ncolumns will be automatically included.\nWhen specified, all other future columns will be automatically excluded from ingestion.\nThis field in mutually exclusive with `exclude_columns`.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "primary_keys": { + "description": "The primary key of the table used to apply changes.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "query_based_connector_config": { + "ref": "pipelines.IngestionPipelineDefinitionTableSpecificConfigQueryBasedConnectorConfig", + "launch_stage": "PUBLIC_PREVIEW" + }, + "row_filter": { + "description": "(Optional, Immutable) The row filter condition to be applied to the table.\nIt must not contain the WHERE keyword, only the actual filter condition.\nIt must be in DBSQL format.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "salesforce_include_formula_fields": { + "description": "If true, formula fields defined in the table are included in the ingestion. This setting is only valid for the Salesforce connector", + "launch_stage": "PRIVATE_PREVIEW" + }, + "scd_type": { + "ref": "pipelines.TableSpecificConfigScdType", + "launch_stage": "PUBLIC_PREVIEW" + }, + "sequence_by": { + "description": "The column names specifying the logical order of events in the source data. Spark Declarative Pipelines uses this sequencing to handle change events that arrive out of order.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "source_metadata_column": { + "description": "(Optional) Name of the struct column added to each ingested record to hold per row source\nmetadata.", + "launch_stage": "PUBLIC_BETA" + }, + "table_properties": { + "description": "Table properties to set on the destination table.\nThese are key-value pairs that configure various Delta table behaviors or any user defined properties.\nExample: {\"delta.feature.variantType\": \"supported\", \"delta.enableTypeWidening\": \"true\"}\nNote: table_properties in table specific configuration will override the table_properties of the pipeline definition.", + "launch_stage": "PUBLIC_BETA" + }, + "workday_report_parameters": { + "description": "(Optional) Additional custom parameters for Workday Report", + "ref": "pipelines.IngestionPipelineDefinitionWorkdayReportParameters", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.TableSpecificConfigScdType": { + "description": "The SCD type to use to ingest the table.", + "enum": [ + "SCD_TYPE_1", + "SCD_TYPE_2", + "APPEND_ONLY" + ], + "enum_launch_stages": { + "APPEND_ONLY": "PUBLIC_PREVIEW", + "SCD_TYPE_1": "PUBLIC_PREVIEW", + "SCD_TYPE_2": "PUBLIC_PREVIEW" + } + }, + "pipelines.TikTokAdsOptions": { + "description": "TikTok Ads specific options for ingestion", + "fields": { + "custom_report_options": { + "description": "(Optional) Custom report definition. When set, the table is treated as a\nuser-defined TikTok Ads custom report: the connector synthesizes a report\nrequest from the dimensions, metrics, report type, and data level specified\nhere. Supersedes the deprecated top-level dimensions/metrics/report_type/\ndata_level/query_lifetime fields above.", + "ref": "pipelines.TikTokAdsOptionsTikTokAdsCustomReportOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "data_level": { + "description": "Deprecated. Use custom_report_options.data_level instead.", + "ref": "pipelines.TikTokAdsOptionsTikTokDataLevel", + "deprecated": true, + "launch_stage": "PUBLIC_BETA" + }, + "dimensions": { + "description": "Deprecated. Use custom_report_options.dimensions instead.", + "deprecated": true, + "launch_stage": "PUBLIC_BETA" + }, + "lookback_window_days": { + "description": "(Optional) Number of days to look back for report tables during incremental sync\nto capture late-arriving conversions and attribution data.", + "launch_stage": "PUBLIC_BETA" + }, + "metrics": { + "description": "Deprecated. Use custom_report_options.metrics instead.", + "deprecated": true, + "launch_stage": "PUBLIC_BETA" + }, + "query_lifetime": { + "description": "Deprecated. Use custom_report_options.query_lifetime instead.", + "deprecated": true, + "launch_stage": "PUBLIC_BETA" + }, + "report_type": { + "description": "Deprecated. Use custom_report_options.report_type instead.", + "ref": "pipelines.TikTokAdsOptionsTikTokReportType", + "deprecated": true, + "launch_stage": "PUBLIC_BETA" + }, + "sync_start_date": { + "description": "(Optional) Start date for the initial sync of report tables in YYYY-MM-DD format.\nThis determines the earliest date from which to sync historical data.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "pipelines.TikTokAdsOptionsTikTokAdsCustomReportOptions": { + "description": "User-defined custom report for the TikTok Ads connector. Groups the\ndimensions + metrics + report type + data level that define a TikTok Ads\ncustom report request.", + "fields": { + "data_level": { + "description": "(Optional) Data level for the report.\nIf not specified, defaults to AUCTION_CAMPAIGN.", + "ref": "pipelines.TikTokAdsOptionsTikTokDataLevel", + "launch_stage": "PRIVATE_PREVIEW" + }, + "dimensions": { + "description": "(Optional) Dimensions to include in the report (e.g. \"campaign_id\",\n\"adgroup_id\", \"ad_id\", \"stat_time_day\", \"stat_time_hour\").", + "launch_stage": "PRIVATE_PREVIEW" + }, + "metrics": { + "description": "(Optional) Metrics to include in the report (e.g. \"spend\", \"impressions\",\n\"clicks\", \"conversion\", \"cpc\").", + "launch_stage": "PRIVATE_PREVIEW" + }, + "query_lifetime": { + "description": "(Optional) Whether to request lifetime metrics (all-time aggregated data).\nWhen true, the report returns all-time data.\nIf not specified, defaults to false.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "report_type": { + "description": "(Optional) Report type for the TikTok Ads API.\nIf not specified, defaults to BASIC.", + "ref": "pipelines.TikTokAdsOptionsTikTokReportType", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "pipelines.TikTokAdsOptionsTikTokDataLevel": { + "description": "Data level for TikTok Ads report aggregation.", + "enum": [ + "AUCTION_ADVERTISER", + "AUCTION_CAMPAIGN", + "AUCTION_ADGROUP", + "AUCTION_AD" + ], + "enum_launch_stages": { + "AUCTION_AD": "PUBLIC_BETA", + "AUCTION_ADGROUP": "PUBLIC_BETA", + "AUCTION_ADVERTISER": "PUBLIC_BETA", + "AUCTION_CAMPAIGN": "PUBLIC_BETA" + } + }, + "pipelines.TikTokAdsOptionsTikTokReportType": { + "description": "Report type for TikTok Ads API.", + "enum": [ + "BASIC", + "AUDIENCE", + "PLAYABLE_AD", + "DSA", + "BUSINESS_CENTER", + "GMV_MAX" + ], + "enum_launch_stages": { + "AUDIENCE": "PUBLIC_BETA", + "BASIC": "PUBLIC_BETA", + "BUSINESS_CENTER": "PUBLIC_BETA", + "DSA": "PUBLIC_BETA", + "GMV_MAX": "PUBLIC_BETA", + "PLAYABLE_AD": "PUBLIC_BETA" + } + }, + "pipelines.Transformer": { + "description": "Specifies how to transform binary data into structured data.", + "fields": { + "avro_options": { + "ref": "pipelines.AvroTransformerOptions", + "launch_stage": "PUBLIC_BETA" + }, + "format": { + "description": "Required: the wire format of the data.", + "ref": "pipelines.TransformerFormat", + "launch_stage": "PUBLIC_BETA" + }, + "input_column": { + "description": "Optional input column to transform. When set, the transformer reads\nfrom this column instead of the default source column.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "json_options": { + "ref": "pipelines.JsonTransformerOptions", + "launch_stage": "PUBLIC_BETA" + }, + "output_column": { + "description": "Optional output column name. When set, the transformed result is\nwritten to this column instead of replacing the input column.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "protobuf_options": { + "ref": "pipelines.ProtobufTransformerOptions", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "pipelines.TransformerFormat": { + "enum": [ + "STRING", + "JSON", + "AVRO", + "PROTOBUF" + ], + "enum_launch_stages": { + "AVRO": "PUBLIC_BETA", + "JSON": "PUBLIC_BETA", + "PROTOBUF": "PUBLIC_BETA", + "STRING": "PUBLIC_BETA" + } + }, + "pipelines.Truncation": { + "description": "Information about truncations applied to this event.", + "fields": { + "truncated_fields": { + "description": "List of fields that were truncated from this event. If empty or absent,\nno truncation occurred.", + "launch_stage": "GA" + } + } + }, + "pipelines.TruncationTruncationDetail": { + "description": "Details about a specific field that was truncated.", + "fields": { + "field_name": { + "description": "The name of the truncated field (e.g., \"error\").\nCorresponds to field names in PipelineEvent.", + "launch_stage": "GA" + } + } + }, + "pipelines.UpdateInfo": { + "fields": { + "cause": { + "description": "What triggered this update.", + "ref": "pipelines.UpdateInfoCause", + "launch_stage": "GA" + }, + "cluster_id": { + "description": "The ID of the cluster that the update is running on.", + "launch_stage": "GA" + }, + "config": { + "description": "The pipeline configuration with system defaults applied where unspecified by the user.\nNot returned by ListUpdates.", + "ref": "pipelines.PipelineSpec", + "launch_stage": "GA" + }, + "creation_time": { + "description": "The time when this update was created.", + "launch_stage": "GA" + }, + "full_refresh": { + "description": "If true, this update will reset all tables before running.", + "launch_stage": "GA" + }, + "full_refresh_selection": { + "description": "A list of tables to update with fullRefresh. If both refresh_selection and\nfull_refresh_selection are empty, this is a full graph update. Full Refresh on a table means\nthat the states of the table will be reset before the refresh.", + "launch_stage": "GA" + }, + "mode": { + "description": "Indicates whether the update is either part of a continuous job run, or running in legacy continuous pipeline mode.\nReturned only for GetUpdate; not populated in ListUpdates responses.", + "ref": "pipelines.UpdateMode", + "launch_stage": "GA" + }, + "parameters": { + "description": "Key/value map of parameters used to initiate the update", + "launch_stage": "PUBLIC_BETA" + }, + "pipeline_id": { + "description": "The ID of the pipeline.", + "launch_stage": "GA" + }, + "refresh_selection": { + "description": "A list of tables to update without fullRefresh. If both refresh_selection and\nfull_refresh_selection are empty, this is a full graph update. Full Refresh on a table means\nthat the states of the table will be reset before the refresh.", + "launch_stage": "GA" + }, + "state": { + "description": "The update state.", + "ref": "pipelines.UpdateInfoState", + "launch_stage": "GA" + }, + "update_id": { + "description": "The ID of this update.", + "launch_stage": "GA" + }, + "validate_only": { + "description": "If true, this update only validates the correctness of pipeline source code but does not materialize or publish any datasets.", + "launch_stage": "GA" + } + } + }, + "pipelines.UpdateInfoCause": { + "description": "What triggered this update.", + "enum": [ + "API_CALL", + "RETRY_ON_FAILURE", + "SERVICE_UPGRADE", + "SCHEMA_CHANGE", + "JOB_TASK", + "USER_ACTION", + "INFRASTRUCTURE_MAINTENANCE" + ], + "enum_launch_stages": { + "API_CALL": "GA", + "INFRASTRUCTURE_MAINTENANCE": "GA", + "JOB_TASK": "GA", + "RETRY_ON_FAILURE": "GA", + "SCHEMA_CHANGE": "GA", + "SERVICE_UPGRADE": "GA", + "USER_ACTION": "GA" + } + }, + "pipelines.UpdateInfoState": { + "description": "The update state.", + "enum": [ + "QUEUED", + "CREATED", + "WAITING_FOR_RESOURCES", + "INITIALIZING", + "RESETTING", + "SETTING_UP_TABLES", + "RUNNING", + "STOPPING", + "COMPLETED", + "FAILED", + "CANCELED" + ], + "enum_launch_stages": { + "CANCELED": "GA", + "COMPLETED": "GA", + "CREATED": "GA", + "FAILED": "GA", + "INITIALIZING": "GA", + "QUEUED": "GA", + "RESETTING": "GA", + "RUNNING": "GA", + "SETTING_UP_TABLES": "GA", + "STOPPING": "GA", + "WAITING_FOR_RESOURCES": "GA" + } + }, + "pipelines.UpdateMode": { + "enum": [ + "DEFAULT", + "CONTINUOUS" + ], + "enum_launch_stages": { + "CONTINUOUS": "GA", + "DEFAULT": "GA" + } + }, + "pipelines.UpdateStateInfo": { + "fields": { + "creation_time": { + "launch_stage": "GA" + }, + "state": { + "ref": "pipelines.UpdateStateInfoState", + "launch_stage": "GA" + }, + "update_id": { + "launch_stage": "GA" + } + } + }, + "pipelines.UpdateStateInfoState": { + "description": "The update state.", + "enum": [ + "QUEUED", + "CREATED", + "WAITING_FOR_RESOURCES", + "INITIALIZING", + "RESETTING", + "SETTING_UP_TABLES", + "RUNNING", + "STOPPING", + "COMPLETED", + "FAILED", + "CANCELED" + ], + "enum_launch_stages": { + "CANCELED": "GA", + "COMPLETED": "GA", + "CREATED": "GA", + "FAILED": "GA", + "INITIALIZING": "GA", + "QUEUED": "GA", + "RESETTING": "GA", + "RUNNING": "GA", + "SETTING_UP_TABLES": "GA", + "STOPPING": "GA", + "WAITING_FOR_RESOURCES": "GA" + } + }, + "pipelines.ZendeskSupportOptions": { + "description": "Zendesk Support specific options for ingestion", + "fields": { + "start_date": { + "description": "(Optional) Start date in YYYY-MM-DD format for the initial sync.\nThis determines the earliest date from which to sync historical data.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "postgres.Branch": { + "fields": { + "branch_id": { + "description": "The part of the name, chosen by the user when the resource was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "create_time": { + "description": "A timestamp indicating when the branch was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Output only. The full resource path of the branch.\nFormat: projects/{project_id}/branches/{branch_id}", + "launch_stage": "GA" + }, + "parent": { + "description": "The project containing this branch (API resource hierarchy).\nFormat: projects/{project_id}\n\nNote: This field indicates where the branch exists in the resource hierarchy.\nFor point-in-time branching from another branch, see `status.source_branch`.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "spec": { + "description": "The spec contains the branch configuration.", + "ref": "postgres.BranchSpec", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "status": { + "description": "The current status of a Branch.", + "ref": "postgres.BranchStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "uid": { + "description": "System-generated unique ID for the branch.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "A timestamp indicating when the branch was last updated.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.BranchOperationMetadata": {}, + "postgres.BranchSpec": { + "fields": { + "expire_time": { + "description": "Absolute expiration timestamp. When set, the branch will expire at this time.\nMutually exclusive with `ttl` and `no_expiry`.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "is_protected": { + "description": "When set to true, protects the branch from deletion and reset. Associated compute endpoints and the project cannot be deleted while the branch is protected.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "no_expiry": { + "description": "Explicitly disable expiration. When set to true, the branch will not expire.\nIf set to false, the request is invalid; provide either ttl or expire_time instead.\nMutually exclusive with `expire_time` and `ttl`.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "source_branch": { + "description": "The name of the source branch from which this branch was created (data lineage for point-in-time recovery).\nIf not specified, defaults to the project's default branch.\nFormat: projects/{project_id}/branches/{branch_id}", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "source_branch_lsn": { + "description": "The Log Sequence Number (LSN) on the source branch from which this branch was created.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "source_branch_time": { + "description": "The point in time on the source branch from which this branch was created.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "source_snapshot": { + "description": "The snapshot this branch was created from. When set, the branch's data\ncomes from the snapshot rather than a source branch, so source_branch,\nsource_branch_lsn, and source_branch_time must be empty. The snapshot must\nbe AVAILABLE and belong to this branch's project.\nFormat: projects/{project_id}/snapshots/{snapshot_id}", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "ttl": { + "description": "Relative time-to-live duration. When set, the branch will expire at creation_time + ttl.\nMutually exclusive with `expire_time` and `no_expiry`.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.BranchStatus": { + "fields": { + "branch_id": { + "description": "Part of the resource name.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "current_state": { + "description": "The branch's state, indicating if it is initializing, ready for use, or archived.", + "ref": "postgres.BranchStatusState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "default": { + "description": "Whether the branch is the project's default branch.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "delete_time": { + "description": "A timestamp indicating when the branch was deleted.\nEmpty if the branch is not deleted.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "expire_time": { + "description": "Absolute expiration time for the branch. Empty if expiration is disabled.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "is_protected": { + "description": "Whether the branch is protected.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "logical_size_bytes": { + "description": "The logical size of the branch.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "pending_state": { + "description": "The pending state of the branch, if a state transition is in progress.", + "ref": "postgres.BranchStatusState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "purge_time": { + "description": "A timestamp indicating when the branch is scheduled to be purged.\nEmpty if the branch is not deleted, otherwise set to a timestamp in the future.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "source_branch": { + "description": "The name of the source branch from which this branch was created.\nFormat: projects/{project_id}/branches/{branch_id}", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "source_branch_lsn": { + "description": "The Log Sequence Number (LSN) on the source branch from which this branch was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "source_branch_time": { + "description": "The point in time on the source branch from which this branch was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "source_snapshot": { + "description": "The snapshot this branch was restored from. Set only for branches created by\nrestoring a snapshot; unset for all other branches.\nFormat: projects/{project_id}/snapshots/{snapshot_id}", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "state_change_time": { + "description": "A timestamp indicating when the `current_state` began.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.BranchStatusState": { + "description": "The state of the branch.", + "enum": [ + "INIT", + "IMPORTING", + "RESETTING", + "READY", + "ARCHIVED", + "DELETED" + ], + "enum_launch_stages": { + "ARCHIVED": "GA", + "DELETED": "PRIVATE_PREVIEW", + "IMPORTING": "GA", + "INIT": "GA", + "READY": "GA", + "RESETTING": "GA" + } + }, + "postgres.Catalog": { + "fields": { + "catalog_id": { + "description": "The part of the name, chosen by the user when the resource was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "create_time": { + "description": "A timestamp indicating when the catalog was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Output only. The full resource path of the catalog.\n\nFormat: \"catalogs/{catalog_id}\".", + "launch_stage": "GA" + }, + "spec": { + "description": "The desired state of the Catalog.", + "ref": "postgres.CatalogCatalogSpec", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "status": { + "description": "The observed state of the Catalog.", + "ref": "postgres.CatalogCatalogStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "uid": { + "description": "System-generated unique identifier for the catalog.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "A timestamp indicating when the catalog was last updated.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.CatalogCatalogSpec": { + "description": "The desired state of the Catalog.", + "fields": { + "branch": { + "description": "The resource path of the branch associated with the catalog.\n\nFormat: projects/{project_id}/branches/{branch_id}.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "create_database_if_missing": { + "description": "If set to true, the specified postgres_database is created on behalf of the calling user\nif it does not already exist. In this case, the calling user has a role created for\nthem in Postgres if they do not already have one.\n\nDefaults to false, meaning that the request fails if the specified postgres_database does not already exist.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "postgres_database": { + "description": "The name of the Postgres database inside the specified Lakebase project and branch to be associated with the UC catalog.\nThis database must already exist, unless create_database_if_missing is set to true on creation.\n\nA database can only be registered with one UC catalog at a time.\nTo re-register a database with a different catalog, the existing catalog must be deleted first.\n\nA child branch inherits the fact of parent's registration. This means the same-named database\nin a child branch cannot be registered with a second catalog\nwhile the parent's registration exists. To allow registering the database of a child branch,\ndrop and recreate the database on the child branch.\nThis removes the fact of parent's registration from this branch only.\n\nDoing Point In Time Restore (PITR) prior to the moment before the Postgres DB was registered\nin the Catalog drops the fact of registration of the database. So the user should avoid doing so.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + } + } + }, + "postgres.CatalogCatalogStatus": { + "description": "The observed state of the Catalog.", + "fields": { + "branch": { + "description": "The resource path of the branch associated with the catalog.\n\nFormat: projects/{project_id}/branches/{branch_id}.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "postgres_database": { + "description": "The name of the Postgres database associated with the catalog.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "project": { + "description": "The resource path of the project associated with the catalog.\n\nFormat: projects/{project_id}.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.CatalogOperationMetadata": {}, + "postgres.CdfConfig": { + "description": "A Lakebase CDF configuration (CdfConfig): one per Postgres schema per\ndatabase, replicating that schema's tables into a Unity Catalog schema.\nImmutable once created.", + "fields": { + "catalog": { + "description": "The Unity Catalog catalog that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "cdf_config_id": { + "description": "The user-specified id; equals the final segment of `name`. Defaults to the\nPostgres schema name for configs without an explicit id.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "create_time": { + "description": "When the CdfConfig was created.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Output only. The full resource name of the CdfConfig.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}", + "launch_stage": "PUBLIC_BETA" + }, + "postgres_schema": { + "description": "The Postgres schema this CdfConfig replicates from. Unique within the\nparent database. Set at creation; the CdfConfig is immutable.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "schema": { + "description": "The Unity Catalog schema that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE" + ] + } + } + }, + "postgres.CdfConfigOperationMetadata": { + "description": "Metadata for CdfConfig long-running operations. Intentionally empty today;\nfields (e.g. progress) may be added as the operation contract grows." + }, + "postgres.CdfState": { + "description": "The replication state of a single replicated table (CdfStatus).", + "enum": [ + "CDF_STATE_SNAPSHOTTING", + "CDF_STATE_STREAMING", + "CDF_STATE_TERMINATED", + "CDF_STATE_SKIPPED" + ], + "enum_launch_stages": { + "CDF_STATE_SKIPPED": "PUBLIC_BETA", + "CDF_STATE_SNAPSHOTTING": "PUBLIC_BETA", + "CDF_STATE_STREAMING": "PUBLIC_BETA", + "CDF_STATE_TERMINATED": "PUBLIC_BETA" + } + }, + "postgres.CdfStatus": { + "description": "The read-only replication status of a single Postgres table replicated\nunder a CdfConfig. One status exists per replicated table.\nIt is created automatically and cannot be modified.", + "fields": { + "committed_lsn": { + "description": "The high-watermark Log Sequence Number (LSN) committed to Delta Lake.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "create_time": { + "description": "When replication for this table was first established.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_sync_time": { + "description": "The last time changes for this table were written to Delta Lake.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Output only. The full resource name of the CdfStatus.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}/cdf-statuses/{cdf_status}\nThe {cdf_status} segment is the Postgres table name.", + "launch_stage": "PUBLIC_BETA" + }, + "postgres_table": { + "description": "The Postgres table being replicated.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "state": { + "description": "The current replication state of this table.", + "ref": "postgres.CdfState", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "status_detail": { + "description": "Human-readable detail for the current state (e.g. the skip/error reason).\nEmpty for healthy states.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "uc_table": { + "description": "The Unity Catalog table receiving replicated data.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.CreateBranchRequest": { + "fields": { + "branch": { + "description": "The Branch to create.", + "ref": "postgres.Branch", + "launch_stage": "GA" + }, + "branch_id": { + "description": "The ID to use for the Branch. This becomes the final component of the branch's resource name.\nThe ID is required and must be 1-63 characters long, start with a lowercase letter, and contain only lowercase letters, numbers, and hyphens.\nFor example, `development` becomes `projects/my-app/branches/development`.", + "launch_stage": "GA" + }, + "replace_existing": { + "description": "If true, update the branch if it already exists instead of returning an error.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + } + } + }, + "postgres.CreateCatalogRequest": { + "fields": { + "catalog": { + "ref": "postgres.Catalog", + "launch_stage": "GA" + }, + "catalog_id": { + "description": "The ID in the Unity Catalog.\nIt becomes the full resource name, for example \"my_catalog\" becomes \"catalogs/my_catalog\".", + "launch_stage": "GA" + } + } + }, + "postgres.CreateCdfConfigRequest": { + "fields": { + "cdf_config": { + "description": "The CdfConfig to create. The catalog, schema, and postgres_schema fields are\nrequired; service_principal is optional. All other fields are output only\nand ignored on input.", + "ref": "postgres.CdfConfig", + "launch_stage": "PUBLIC_BETA" + }, + "cdf_config_id": { + "description": "The user-specified id for the CdfConfig, forming the final segment of its\nresource name. Must match the pattern `[a-z][a-z0-9_]{0,62}`. Defaults to\nthe Postgres schema name when omitted.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.CreateDataApiRequest": { + "fields": { + "data_api": { + "description": "The Data API configuration to create.", + "ref": "postgres.DataApi", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "postgres.CreateDatabaseRequest": { + "fields": { + "database": { + "description": "The desired specification of a Database.", + "ref": "postgres.Database", + "launch_stage": "GA" + }, + "database_id": { + "description": "The ID to use for the Database, which will become the final component of\nthe database's resource name.\nThis ID becomes the database name in postgres.\n\nThis value should be 4-63 characters, and only use characters available in DNS names,\nas defined by RFC-1123\n\nIf database_id is not specified in the request, it is generated automatically.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "replace_existing": { + "description": "If true, update the database if it already exists instead of returning an\nerror.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + } + } + }, + "postgres.CreateEndpointRequest": { + "fields": { + "endpoint": { + "description": "The Endpoint to create.", + "ref": "postgres.Endpoint", + "launch_stage": "GA" + }, + "endpoint_id": { + "description": "The ID to use for the Endpoint. This becomes the final component of the endpoint's resource name.\nThe ID is required and must be 1-63 characters long, start with a lowercase letter, and contain only lowercase letters, numbers, and hyphens.\nFor example, `primary` becomes `projects/my-app/branches/development/endpoints/primary`.", + "launch_stage": "GA" + }, + "replace_existing": { + "description": "If true, update the endpoint if it already exists instead of returning an error.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + } + } + }, + "postgres.CreateProjectRequest": { + "fields": { + "project": { + "description": "The Project to create.", + "ref": "postgres.Project", + "launch_stage": "GA" + }, + "project_id": { + "description": "The ID to use for the Project. This becomes the final component of the project's resource name.\nThe ID is required and must be 1-63 characters long, start with a lowercase letter, and contain only lowercase letters, numbers, and hyphens.\nFor example, `my-app` becomes `projects/my-app`.", + "launch_stage": "GA" + } + } + }, + "postgres.CreateRoleRequest": { + "fields": { + "replace_existing": { + "description": "If true, update the role if it already exists instead of returning an\nerror.\n\nWhen the role already exists, the provided `role` spec fully replaces the\nexisting one: `membership_roles` is overwritten, not merged. Leaving\n`membership_roles` empty clears all of the role's existing memberships,\nincluding `DATABRICKS_SUPERUSER`. Always send the complete desired list of\nmemberships when using this field.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "role": { + "description": "The desired specification of a Role.", + "ref": "postgres.Role", + "launch_stage": "GA" + }, + "role_id": { + "description": "The ID to use for the Role, which will become the final component of\nthe role's resource name.\nThis ID becomes the role in Postgres.\n\nThis value should be 4-63 characters, and valid characters\nare lowercase letters, numbers, and hyphens, as defined by RFC 1123.\n\nIf role_id is not specified in the request, it is generated automatically.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.CreateSnapshotRequest": { + "fields": { + "snapshot": { + "description": "The snapshot to create.", + "ref": "postgres.Snapshot", + "launch_stage": "PUBLIC_BETA" + }, + "snapshot_id": { + "description": "Client-chosen ID for the snapshot. It becomes the final segment of the\nsnapshot resource name and cannot be changed after creation.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "postgres.CreateSyncedTableRequest": { + "fields": { + "synced_table": { + "ref": "postgres.SyncedTable", + "launch_stage": "GA" + }, + "synced_table_id": { + "description": "The ID to use for the Synced Table. This becomes the final component of the SyncedTable's resource name.\nID is required and is the synced table name, containing (catalog, schema, table) tuple.\nElements of the tuple are the UC entity names.\n\nExample: \"{catalog}.{schema}.{table}\"\n\nsynced_table_id represents both of the following:\n\n1. An online VIEW virtual table in the Unity Catalog accessible via the Lakehouse Federation.\n2. Postgres table named \"{table}\" in schema \"{schema}\" in the connected Postgres database", + "launch_stage": "GA" + } + } + }, + "postgres.DailySchedule": { + "description": "Take a snapshot once per day, at the configured hour.", + "fields": { + "hour": { + "description": "The hour of the day, in UTC, at which to take the snapshot, in [0, 23].", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.DataApi": { + "description": "DataApi represents the Data API (PostgREST) configuration for a Database.\nAt most one DataApi per database. Create enables Data API, Delete disables it.", + "fields": { + "create_time": { + "description": "A timestamp indicating when the Data API was first enabled.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Resource name: projects/{project_id}/branches/{branch_id}/databases/{database_id}/data-api", + "launch_stage": "PRIVATE_PREVIEW" + }, + "parent": { + "description": "The database containing this Data API configuration.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "spec": { + "description": "The desired Data API configuration.", + "ref": "postgres.DataApiDataApiSpec", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "status": { + "description": "The observed Data API state (read-only).", + "ref": "postgres.DataApiDataApiStatus", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "A timestamp indicating when the Data API configuration was last updated.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.DataApiDataApiSpec": { + "description": "Desired PostgREST configuration (input).", + "fields": { + "db_aggregates_enabled": { + "description": "Enable aggregate functions (count, sum, avg, etc.) in Data API responses.\nDefault: true.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "db_extra_search_path": { + "description": "Additional schemas to include in the PostgreSQL search path.\nEach entry must be a valid PostgreSQL schema name.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "db_max_rows": { + "description": "Maximum number of rows returned in a single Data API response.\nMust be a positive integer.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "db_schemas": { + "description": "Database schemas exposed through the Data API.\nEach entry must be a valid PostgreSQL schema name (1-63 chars, [a-zA-Z_][a-zA-Z0-9_$]*).\nMaximum 100 entries. Default: [\"public\"].", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "jwt_cache_max_lifetime": { + "description": "Maximum lifetime for cached JWT tokens. Zero duration disables caching.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "jwt_role_claim_key": { + "description": "JSON path to the role claim in JWT tokens (e.g., \".sub\").\nDefault: \".sub\".", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "openapi_mode": { + "description": "OpenAPI documentation mode for the Data API endpoint.", + "ref": "postgres.OpenApiMode", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "server_cors_allowed_origins": { + "description": "Allowed origins for CORS requests.\nEach entry should be a valid origin URL, or use \"*\" to allow all origins.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "server_timing_enabled": { + "description": "Enable the Server-Timing header in Data API responses.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.DataApiDataApiStatus": { + "description": "Observed state (output-only).", + "fields": { + "available_schemas": { + "description": "Schemas available in the database (for reference when configuring db_schemas).", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "db_aggregates_enabled": { + "description": "Actual aggregate function setting read from the database.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "db_extra_search_path": { + "description": "Actual extra search path schemas read from the database.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "db_max_rows": { + "description": "Actual max rows setting read from the database.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "db_schemas": { + "description": "Actual exposed schemas read from the database.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "jwt_cache_max_lifetime": { + "description": "Actual JWT cache max lifetime read from the database.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "jwt_role_claim_key": { + "description": "Actual JWT role claim key read from the database.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "openapi_mode": { + "description": "Actual OpenAPI mode read from the database.", + "ref": "postgres.OpenApiMode", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "server_cors_allowed_origins": { + "description": "Actual CORS allowed origins read from the database.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "server_timing_enabled": { + "description": "Actual Server-Timing header setting read from the database.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "url": { + "description": "Data API endpoint URL.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.DataApiOperationMetadata": {}, + "postgres.Database": { + "description": "Database represents a Postgres database within a Branch.", + "fields": { + "create_time": { + "description": "A timestamp indicating when the database was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "database_id": { + "description": "The part of the name, chosen by the user when the resource was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "The resource name of the database.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "launch_stage": "GA" + }, + "parent": { + "description": "The branch containing this database.\nFormat: projects/{project_id}/branches/{branch_id}", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "spec": { + "description": "The desired state of the Database.", + "ref": "postgres.DatabaseDatabaseSpec", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "status": { + "description": "The observed state of the Database.", + "ref": "postgres.DatabaseDatabaseStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "A timestamp indicating when the database was last updated.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.DatabaseCredential": { + "fields": { + "expire_time": { + "description": "Timestamp in UTC of when this credential expires.", + "launch_stage": "GA" + }, + "token": { + "description": "The OAuth token that can be used as a password when connecting to a database.", + "launch_stage": "GA" + } + } + }, + "postgres.DatabaseDatabaseSpec": { + "fields": { + "postgres_database": { + "description": "The name of the Postgres database.\n\nThis expects a valid Postgres identifier as specified in the link below.\nhttps://www.postgresql.org/docs/current/sql-syntax-lexical.html#SQL-SYNTAX-IDENTIFIERS\nRequired when creating the Database.\n\nTo rename, pass a valid postgres identifier when updating the Database.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "role": { + "description": "The name of the role that owns the database.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}\n\nTo change the owner, pass valid existing Role name when updating the Database\n\nA database always has an owner.", + "launch_stage": "GA" + } + } + }, + "postgres.DatabaseDatabaseStatus": { + "fields": { + "database_id": { + "description": "Part of the resource name.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "postgres_database": { + "description": "The name of the Postgres database.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "role": { + "description": "The name of the role that owns the database.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.DatabaseOperationMetadata": {}, + "postgres.DatabricksServiceExceptionWithDetailsProto": { + "description": "Databricks Error that is returned by all Databricks APIs.", + "fields": { + "details": { + "launch_stage": "GA" + }, + "error_code": { + "ref": "postgres.ErrorCode", + "launch_stage": "GA" + }, + "message": { + "launch_stage": "GA" + }, + "stack_trace": { + "launch_stage": "GA" + } + } + }, + "postgres.DayOfWeek": { + "description": "The day of the week on which a weekly snapshot is taken.", + "enum": [ + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enum_launch_stages": { + "FRIDAY": "PUBLIC_BETA", + "MONDAY": "PUBLIC_BETA", + "SATURDAY": "PUBLIC_BETA", + "SUNDAY": "PUBLIC_BETA", + "THURSDAY": "PUBLIC_BETA", + "TUESDAY": "PUBLIC_BETA", + "WEDNESDAY": "PUBLIC_BETA" + } + }, + "postgres.DeleteBranchRequest": { + "fields": { + "purge": { + "description": "If true, permanently delete the branch; if false, soft delete.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.DeleteCatalogRequest": {}, + "postgres.DeleteCdfConfigRequest": { + "fields": { + "force": { + "description": "When true, also drops the replicated Delta tables in Unity Catalog. When\nfalse (the default), the replicated tables are preserved at their last\nsynced state.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.DeleteDataApiRequest": {}, + "postgres.DeleteDatabaseRequest": {}, + "postgres.DeleteEndpointRequest": {}, + "postgres.DeleteProjectRequest": { + "fields": { + "purge": { + "description": "If true, permanently deletes the project (hard delete).\nIf false or unset, performs a soft delete.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.DeleteRoleRequest": { + "fields": { + "reassign_owned_to": { + "description": "Reassign objects. If this is set, all objects owned by the role are\nreassigned to the role specified in this parameter.\n\nNOTE: setting this requires spinning up a compute to succeed, since it involves running\nSQL queries.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.DeleteSnapshotRequest": {}, + "postgres.DeleteSyncedTableRequest": {}, + "postgres.DeltaTableSyncInfo": { + "fields": { + "delta_commit_time": { + "description": "The timestamp when the above Delta version was committed in the source Delta table.\nNote: This is the Delta commit time, not the time the data was written to the synced table.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "delta_commit_version": { + "description": "The Delta Lake commit version that was last successfully synced.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.Endpoint": { + "fields": { + "create_time": { + "description": "A timestamp indicating when the compute endpoint was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "endpoint_id": { + "description": "The part of the name, chosen by the user when the resource was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Output only. The full resource path of the endpoint.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "launch_stage": "GA" + }, + "parent": { + "description": "The branch containing this endpoint (API resource hierarchy).\nFormat: projects/{project_id}/branches/{branch_id}", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "spec": { + "description": "The spec contains the compute endpoint configuration, including autoscaling limits, suspend timeout, and disabled state.", + "ref": "postgres.EndpointSpec", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "status": { + "description": "Current operational status of the compute endpoint.", + "ref": "postgres.EndpointStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "uid": { + "description": "System-generated unique ID for the endpoint.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "A timestamp indicating when the compute endpoint was last updated.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.EndpointGroupSpec": { + "fields": { + "enable_readable_secondaries": { + "description": "Whether to allow read-only connections to read-write endpoints. Only relevant for read-write endpoints where\nsize.max \u003e 1.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "max": { + "description": "The maximum number of computes in the endpoint group. Currently, this must be equal to min. Set to 1 for single\ncompute endpoints, to disable HA. To manually suspend all computes in an endpoint group, set disabled to\ntrue on the EndpointSpec.", + "launch_stage": "GA" + }, + "min": { + "description": "The minimum number of computes in the endpoint group. Currently, this must be equal to max. This must be greater\nthan or equal to 1.", + "launch_stage": "GA" + } + } + }, + "postgres.EndpointGroupStatus": { + "fields": { + "enable_readable_secondaries": { + "description": "Whether read-only connections to read-write endpoints are allowed. Only relevant if read replicas are configured\nby specifying size.max \u003e 1.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "max": { + "description": "The maximum number of computes in the endpoint group. Currently, this must be equal to min. Set to 1 for single\ncompute endpoints, to disable HA. To manually suspend all computes in an endpoint group, set disabled to\ntrue on the EndpointSpec.", + "launch_stage": "GA" + }, + "min": { + "description": "The minimum number of computes in the endpoint group. Currently, this must be equal to max. This must be greater\nthan or equal to 1.", + "launch_stage": "GA" + } + } + }, + "postgres.EndpointHosts": { + "description": "Encapsulates various hostnames (r/w or r/o, pooled or not) for an endpoint.", + "fields": { + "host": { + "description": "The hostname to connect to this endpoint. For read-write endpoints, this is a read-write hostname which connects\nto the primary compute. For read-only endpoints, this is a read-only hostname which allows read-only operations.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "read_only_host": { + "description": "An optionally defined read-only host for the endpoint, without pooling. For read-only endpoints,\nthis attribute is always defined and is equivalent to host. For read-write endpoints, this attribute is defined\nif the enclosing endpoint is a group with greater than 1 computes configured, and has readable secondaries enabled.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "read_only_pooled_host": { + "description": "The read-only hostname of the compute endpoint, with pooling. This attribute is always defined for read-only endpoints,\nand may be defined for read-write endpoints if configured with read replicas and allow read-only connections.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "read_write_pooled_host": { + "description": "The read-write hostname of the compute endpoint, with pooling. This attribute is only defined for read-write endpoints.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.EndpointOperationMetadata": {}, + "postgres.EndpointSettings": { + "description": "A collection of settings for a compute endpoint.", + "fields": { + "pg_settings": { + "description": "A raw representation of Postgres settings.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.EndpointSpec": { + "fields": { + "autoscaling_limit_max_cu": { + "description": "The maximum number of Compute Units. The maximum value is 64.\nThe difference between the minimum and maximum Compute Units (max - min) must not exceed 16.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "autoscaling_limit_min_cu": { + "description": "The minimum number of Compute Units. Minimum value is 0.5.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "disabled": { + "description": "Whether to restrict connections to the compute endpoint.\nEnabling this option schedules a suspend compute operation.\nA disabled compute endpoint cannot be enabled by a connection or\nconsole action.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "endpoint_type": { + "description": "The endpoint type. A branch can only have one READ_WRITE endpoint.", + "ref": "postgres.EndpointType", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "group": { + "description": "Settings for optional HA configuration of the endpoint. If unspecified, the endpoint defaults\nto non HA settings, with a single compute backing the endpoint (and no readable secondaries\nfor Read/Write endpoints).", + "ref": "postgres.EndpointGroupSpec", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "no_suspension": { + "description": "When set to true, explicitly disables automatic suspension (never suspend).\nShould be set to true when provided.\nMutually exclusive with `suspend_timeout_duration`.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "settings": { + "ref": "postgres.EndpointSettings", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "suspend_timeout_duration": { + "description": "Duration of inactivity after which the compute endpoint is automatically suspended.\nIf specified should be between 60s and 604800s (1 minute to 1 week).\nMutually exclusive with `no_suspension`.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.EndpointStatus": { + "fields": { + "autoscaling_limit_max_cu": { + "description": "The maximum number of Compute Units. The maximum value is 64.\nThe difference between the minimum and maximum Compute Units (max - min) must not exceed 16.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "autoscaling_limit_min_cu": { + "description": "The minimum number of Compute Units.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "current_state": { + "ref": "postgres.EndpointStatusState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "disabled": { + "description": "Whether to restrict connections to the compute endpoint.\nEnabling this option schedules a suspend compute operation.\nA disabled compute endpoint cannot be enabled by a connection or\nconsole action.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "endpoint_id": { + "description": "Part of the resource name.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "endpoint_type": { + "description": "The endpoint type. A branch can only have one READ_WRITE endpoint.", + "ref": "postgres.EndpointType", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "group": { + "description": "Details on the HA configuration of the endpoint.", + "ref": "postgres.EndpointGroupStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "hosts": { + "description": "Contains host information for connecting to the endpoint.", + "ref": "postgres.EndpointHosts", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_active_time": { + "description": "A timestamp indicating when the compute endpoint was last active.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "pending_state": { + "ref": "postgres.EndpointStatusState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "settings": { + "ref": "postgres.EndpointSettings", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "suspend_timeout_duration": { + "description": "Duration of inactivity after which the compute endpoint is automatically suspended.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.EndpointStatusState": { + "description": "The state of the compute endpoint.", + "enum": [ + "INIT", + "ACTIVE", + "IDLE", + "DEGRADED" + ], + "enum_launch_stages": { + "ACTIVE": "GA", + "DEGRADED": "GA", + "IDLE": "GA", + "INIT": "GA" + } + }, + "postgres.EndpointType": { + "description": "The compute endpoint type. Either `read_write` or `read_only`.", + "enum": [ + "ENDPOINT_TYPE_READ_WRITE", + "ENDPOINT_TYPE_READ_ONLY" + ], + "enum_launch_stages": { + "ENDPOINT_TYPE_READ_ONLY": "GA", + "ENDPOINT_TYPE_READ_WRITE": "GA" + } + }, + "postgres.ErrorCode": { + "description": "Error codes returned by Databricks APIs to indicate specific failure conditions.", + "enum": [ + "UNKNOWN", + "INTERNAL_ERROR", + "TEMPORARILY_UNAVAILABLE", + "IO_ERROR", + "BAD_REQUEST", + "SERVICE_UNDER_MAINTENANCE", + "WORKSPACE_TEMPORARILY_UNAVAILABLE", + "DEADLINE_EXCEEDED", + "CANCELLED", + "RESOURCE_EXHAUSTED", + "ABORTED", + "NOT_FOUND", + "ALREADY_EXISTS", + "UNAUTHENTICATED", + "UNAVAILABLE", + "INVALID_PARAMETER_VALUE", + "ENDPOINT_NOT_FOUND", + "MALFORMED_REQUEST", + "INVALID_STATE", + "PERMISSION_DENIED", + "FEATURE_DISABLED", + "CUSTOMER_UNAUTHORIZED", + "REQUEST_LIMIT_EXCEEDED", + "RESOURCE_CONFLICT", + "UNPARSEABLE_HTTP_ERROR", + "NOT_IMPLEMENTED", + "DATA_LOSS", + "INVALID_STATE_TRANSITION", + "COULD_NOT_ACQUIRE_LOCK", + "RESOURCE_ALREADY_EXISTS", + "RESOURCE_DOES_NOT_EXIST", + "QUOTA_EXCEEDED", + "MAX_BLOCK_SIZE_EXCEEDED", + "MAX_READ_SIZE_EXCEEDED", + "PARTIAL_DELETE", + "MAX_LIST_SIZE_EXCEEDED", + "DRY_RUN_FAILED", + "RESOURCE_LIMIT_EXCEEDED", + "DIRECTORY_NOT_EMPTY", + "DIRECTORY_PROTECTED", + "MAX_NOTEBOOK_SIZE_EXCEEDED", + "MAX_CHILD_NODE_SIZE_EXCEEDED", + "SEARCH_QUERY_TOO_LONG", + "SEARCH_QUERY_TOO_SHORT", + "MANAGED_RESOURCE_GROUP_DOES_NOT_EXIST", + "PERMISSION_NOT_PROPAGATED", + "DEPLOYMENT_TIMEOUT", + "GIT_CONFLICT", + "GIT_UNKNOWN_REF", + "GIT_SENSITIVE_TOKEN_DETECTED", + "GIT_URL_NOT_ON_ALLOW_LIST", + "GIT_REMOTE_ERROR", + "PROJECTS_OPERATION_TIMEOUT", + "IPYNB_FILE_IN_REPO", + "INSECURE_PARTNER_RESPONSE", + "MALFORMED_PARTNER_RESPONSE", + "METASTORE_DOES_NOT_EXIST", + "DAC_DOES_NOT_EXIST", + "CATALOG_DOES_NOT_EXIST", + "SCHEMA_DOES_NOT_EXIST", + "TABLE_DOES_NOT_EXIST", + "SHARE_DOES_NOT_EXIST", + "RECIPIENT_DOES_NOT_EXIST", + "STORAGE_CREDENTIAL_DOES_NOT_EXIST", + "EXTERNAL_LOCATION_DOES_NOT_EXIST", + "PRINCIPAL_DOES_NOT_EXIST", + "PROVIDER_DOES_NOT_EXIST", + "METASTORE_ALREADY_EXISTS", + "DAC_ALREADY_EXISTS", + "CATALOG_ALREADY_EXISTS", + "SCHEMA_ALREADY_EXISTS", + "TABLE_ALREADY_EXISTS", + "SHARE_ALREADY_EXISTS", + "RECIPIENT_ALREADY_EXISTS", + "STORAGE_CREDENTIAL_ALREADY_EXISTS", + "EXTERNAL_LOCATION_ALREADY_EXISTS", + "PROVIDER_ALREADY_EXISTS", + "CATALOG_NOT_EMPTY", + "SCHEMA_NOT_EMPTY", + "METASTORE_NOT_EMPTY", + "PROVIDER_SHARE_NOT_ACCESSIBLE" + ], + "enum_launch_stages": { + "ABORTED": "GA", + "ALREADY_EXISTS": "GA", + "BAD_REQUEST": "GA", + "CANCELLED": "GA", + "CATALOG_ALREADY_EXISTS": "GA", + "CATALOG_DOES_NOT_EXIST": "GA", + "CATALOG_NOT_EMPTY": "GA", + "COULD_NOT_ACQUIRE_LOCK": "GA", + "CUSTOMER_UNAUTHORIZED": "GA", + "DAC_ALREADY_EXISTS": "GA", + "DAC_DOES_NOT_EXIST": "GA", + "DATA_LOSS": "GA", + "DEADLINE_EXCEEDED": "GA", + "DEPLOYMENT_TIMEOUT": "GA", + "DIRECTORY_NOT_EMPTY": "GA", + "DIRECTORY_PROTECTED": "GA", + "DRY_RUN_FAILED": "GA", + "ENDPOINT_NOT_FOUND": "GA", + "EXTERNAL_LOCATION_ALREADY_EXISTS": "GA", + "EXTERNAL_LOCATION_DOES_NOT_EXIST": "GA", + "FEATURE_DISABLED": "GA", + "GIT_CONFLICT": "GA", + "GIT_REMOTE_ERROR": "GA", + "GIT_SENSITIVE_TOKEN_DETECTED": "GA", + "GIT_UNKNOWN_REF": "GA", + "GIT_URL_NOT_ON_ALLOW_LIST": "GA", + "INSECURE_PARTNER_RESPONSE": "GA", + "INTERNAL_ERROR": "GA", + "INVALID_PARAMETER_VALUE": "GA", + "INVALID_STATE": "GA", + "INVALID_STATE_TRANSITION": "GA", + "IO_ERROR": "GA", + "IPYNB_FILE_IN_REPO": "GA", + "MALFORMED_PARTNER_RESPONSE": "GA", + "MALFORMED_REQUEST": "GA", + "MANAGED_RESOURCE_GROUP_DOES_NOT_EXIST": "GA", + "MAX_BLOCK_SIZE_EXCEEDED": "GA", + "MAX_CHILD_NODE_SIZE_EXCEEDED": "GA", + "MAX_LIST_SIZE_EXCEEDED": "GA", + "MAX_NOTEBOOK_SIZE_EXCEEDED": "GA", + "MAX_READ_SIZE_EXCEEDED": "GA", + "METASTORE_ALREADY_EXISTS": "GA", + "METASTORE_DOES_NOT_EXIST": "GA", + "METASTORE_NOT_EMPTY": "GA", + "NOT_FOUND": "GA", + "NOT_IMPLEMENTED": "GA", + "PARTIAL_DELETE": "GA", + "PERMISSION_DENIED": "GA", + "PERMISSION_NOT_PROPAGATED": "GA", + "PRINCIPAL_DOES_NOT_EXIST": "GA", + "PROJECTS_OPERATION_TIMEOUT": "GA", + "PROVIDER_ALREADY_EXISTS": "GA", + "PROVIDER_DOES_NOT_EXIST": "GA", + "PROVIDER_SHARE_NOT_ACCESSIBLE": "GA", + "QUOTA_EXCEEDED": "GA", + "RECIPIENT_ALREADY_EXISTS": "GA", + "RECIPIENT_DOES_NOT_EXIST": "GA", + "REQUEST_LIMIT_EXCEEDED": "GA", + "RESOURCE_ALREADY_EXISTS": "GA", + "RESOURCE_CONFLICT": "GA", + "RESOURCE_DOES_NOT_EXIST": "GA", + "RESOURCE_EXHAUSTED": "GA", + "RESOURCE_LIMIT_EXCEEDED": "GA", + "SCHEMA_ALREADY_EXISTS": "GA", + "SCHEMA_DOES_NOT_EXIST": "GA", + "SCHEMA_NOT_EMPTY": "GA", + "SEARCH_QUERY_TOO_LONG": "GA", + "SEARCH_QUERY_TOO_SHORT": "GA", + "SERVICE_UNDER_MAINTENANCE": "GA", + "SHARE_ALREADY_EXISTS": "GA", + "SHARE_DOES_NOT_EXIST": "GA", + "STORAGE_CREDENTIAL_ALREADY_EXISTS": "GA", + "STORAGE_CREDENTIAL_DOES_NOT_EXIST": "GA", + "TABLE_ALREADY_EXISTS": "GA", + "TABLE_DOES_NOT_EXIST": "GA", + "TEMPORARILY_UNAVAILABLE": "GA", + "UNAUTHENTICATED": "GA", + "UNAVAILABLE": "GA", + "UNKNOWN": "GA", + "UNPARSEABLE_HTTP_ERROR": "GA", + "WORKSPACE_TEMPORARILY_UNAVAILABLE": "GA" + } + }, + "postgres.GenerateDatabaseCredentialRequest": { + "fields": { + "claims": { + "description": "The returned token will be scoped to UC tables with the specified permissions.", + "launch_stage": "GA" + }, + "endpoint": { + "description": "The endpoint resource name for which this credential will be generated.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "launch_stage": "GA" + }, + "expire_time": { + "description": "Timestamp in UTC of when this credential should expire.\nMust be at least 300 seconds (5 minutes) and at most 1 hour from the current time.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "ttl": { + "description": "The requested time-to-live for the generated credential token.\nMust be at least 300 seconds (5 minutes) and at most 3600 seconds (1 hour).", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.GetBranchRequest": {}, + "postgres.GetCatalogRequest": {}, + "postgres.GetCdfConfigRequest": {}, + "postgres.GetCdfStatusRequest": {}, + "postgres.GetDataApiRequest": {}, + "postgres.GetDatabaseRequest": {}, + "postgres.GetEndpointRequest": {}, + "postgres.GetOperationRequest": {}, + "postgres.GetProjectRequest": {}, + "postgres.GetRoleRequest": {}, + "postgres.GetSnapshotRequest": {}, + "postgres.GetSnapshotScheduleRequest": {}, + "postgres.GetSyncedTableRequest": {}, + "postgres.InitialBranchSpec": { + "description": "Configuration for the initial default branch created during project creation.", + "fields": { + "is_protected": { + "description": "Whether the initial default branch should be protected from deletion.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.InitialEndpointSpec": { + "description": "Configuration for the initial Read/Write endpoint created during project creation.", + "fields": { + "autoscaling_limit_max_cu": { + "description": "The maximum number of Compute Units for the initial endpoint.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "autoscaling_limit_min_cu": { + "description": "The minimum number of Compute Units for the initial endpoint.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "group": { + "description": "Settings for HA configuration of the endpoint.", + "ref": "postgres.EndpointGroupSpec", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "no_suspension": { + "description": "When set to true, explicitly disables automatic suspension (never suspend).\nShould be set to true when provided.\nMutually exclusive with `suspend_timeout_duration`.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "suspend_timeout_duration": { + "description": "Duration of inactivity after which the initial endpoint is automatically suspended.\nIf specified, should be between 60s and 604800s (1 minute to 1 week).\nMutually exclusive with `no_suspension`.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.ListBranchesRequest": { + "fields": { + "page_size": { + "description": "Upper bound for items returned. Cannot be negative.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Page token from a previous response. If not provided, returns the first page.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "show_deleted": { + "description": "Whether to include soft-deleted branches in the response.\nWhen true, deleted branches are included alongside active branches.\nPurged branches are never returned.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.ListBranchesResponse": { + "fields": { + "branches": { + "description": "List of branches in the project.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Token to request the next page of branches.", + "launch_stage": "GA" + } + } + }, + "postgres.ListCdfConfigsRequest": { + "fields": { + "page_size": { + "description": "Maximum number of CdfConfigs to return.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token returned by a previous ListCdfConfigs call. Empty on the\nfirst page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.ListCdfConfigsResponse": { + "description": "Response to a ListCdfConfigs request, containing a page of CdfConfigs and a\ntoken for fetching the next page.", + "fields": { + "cdf_configs": { + "description": "The CdfConfigs under the parent database.", + "launch_stage": "PUBLIC_BETA" + }, + "next_page_token": { + "description": "Token to retrieve the next page of results; empty when there are no more.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "postgres.ListCdfStatusesRequest": { + "fields": { + "page_size": { + "description": "Maximum number of CdfStatuses to return.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token returned by a previous ListCdfStatuses call. Empty on the\nfirst page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.ListCdfStatusesResponse": { + "description": "Response to a ListCdfStatuses request, containing a page of replicated table\nstatuses and a token for fetching the next page.", + "fields": { + "cdf_statuses": { + "description": "The replicated tables under the parent CdfConfig.", + "launch_stage": "PUBLIC_BETA" + }, + "next_page_token": { + "description": "Token to retrieve the next page of results; empty when there are no more.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "postgres.ListDatabasesRequest": { + "fields": { + "page_size": { + "description": "Upper bound for items returned.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token to go to the next page of Databases. Requests first page if absent.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.ListDatabasesResponse": { + "fields": { + "databases": { + "description": "List of databases.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "Pagination token to request the next page of databases.", + "launch_stage": "GA" + } + } + }, + "postgres.ListEndpointsRequest": { + "fields": { + "page_size": { + "description": "Upper bound for items returned. Cannot be negative.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Page token from a previous response. If not provided, returns the first page.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.ListEndpointsResponse": { + "fields": { + "endpoints": { + "description": "List of compute endpoints in the branch.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "next_page_token": { + "description": "Token to request the next page of compute endpoints.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.ListProjectsRequest": { + "fields": { + "page_size": { + "description": "Upper bound for items returned. Cannot be negative. The maximum value is 100.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Page token from a previous response. If not provided, returns the first page.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "show_deleted": { + "description": "Whether to include soft-deleted projects in the response.\nWhen true, soft-deleted projects are included alongside active projects.\nHard-deleted and already-purged projects are never returned.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.ListProjectsResponse": { + "fields": { + "next_page_token": { + "description": "Token to request the next page of projects.", + "launch_stage": "GA" + }, + "projects": { + "description": "List of all projects in the workspace that the user has permission to access.", + "launch_stage": "GA" + } + } + }, + "postgres.ListRolesRequest": { + "fields": { + "page_size": { + "description": "Upper bound for items returned. Cannot be negative.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Page token from a previous response. If not provided, returns the first page.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.ListRolesResponse": { + "fields": { + "next_page_token": { + "description": "Token to request the next page of Postgres roles.", + "launch_stage": "GA" + }, + "roles": { + "description": "List of Postgres roles in the branch.", + "launch_stage": "GA" + } + } + }, + "postgres.ListSnapshotsRequest": { + "fields": { + "page_size": { + "description": "Maximum number of snapshots to return per page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Page token from a previous response; omit for the first page.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.ListSnapshotsResponse": { + "fields": { + "next_page_token": { + "description": "Token to retrieve the next page; empty if there are no more pages.", + "launch_stage": "PUBLIC_BETA" + }, + "snapshots": { + "description": "The snapshots in the project.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "postgres.MonthlySchedule": { + "description": "Take a snapshot once per month, on the configured day at the configured hour.", + "fields": { + "day": { + "description": "The day of the month on which to take the snapshot, in [1, 31]. In shorter\nmonths the snapshot is taken on the last day instead (day 31 runs on Feb 28\nor 29, and on Apr 30), so every month gets exactly one snapshot.", + "launch_stage": "PUBLIC_BETA" + }, + "hour": { + "description": "The hour of the day, in UTC, at which to take the snapshot, in [0, 23].", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.NewPipelineSpec": { + "fields": { + "budget_policy_id": { + "description": "Budget policy to set on the newly created pipeline.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "pipeline_channel": { + "description": "Release channel of the underlying pipeline's runtime.\nSome source table configurations (e.g., read-time CDF) require PREVIEW.\nDefaults to CURRENT if not specified.", + "ref": "postgres.NewPipelineSpecPipelineChannel", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "storage_catalog": { + "description": "UC catalog for the pipeline to store intermediate files (checkpoints, event logs etc).\nThis needs to be a standard catalog where the user has permissions to create Delta tables.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "storage_schema": { + "description": "UC schema for the pipeline to store intermediate files (checkpoints, event logs etc).\nThis needs to be in the standard catalog where the user has permissions to create Delta tables.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.NewPipelineSpecPipelineChannel": { + "description": "Release channel of the underlying pipeline's runtime.\nPREVIEW provides early access to the latest features but may be less stable.\nSome source table configurations (e.g., read-time CDF) require PREVIEW.\nDefaults to CURRENT if not specified.", + "enum": [ + "CURRENT", + "PREVIEW" + ], + "enum_launch_stages": { + "CURRENT": "PRIVATE_PREVIEW", + "PREVIEW": "PRIVATE_PREVIEW" + } + }, + "postgres.OpenApiMode": { + "description": "Controls how the Data API exposes the OpenAPI documentation endpoint.\nOnly IGNORE_PRIVILEGES and DISABLED are supported today; \"follow-privileges\"\nis not implemented yet (it may be added later as value 3 — adding new enum\nvalues is backward-compatible).", + "enum": [ + "OPEN_API_MODE_IGNORE_PRIVILEGES", + "OPEN_API_MODE_DISABLED" + ], + "enum_launch_stages": { + "OPEN_API_MODE_DISABLED": "PRIVATE_PREVIEW", + "OPEN_API_MODE_IGNORE_PRIVILEGES": "PRIVATE_PREVIEW" + } + }, + "postgres.Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "fields": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", + "launch_stage": "GA" + }, + "error": { + "description": "The error result of the operation in case of failure or cancellation.", + "ref": "postgres.DatabricksServiceExceptionWithDetailsProto", + "launch_stage": "GA" + }, + "metadata": { + "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata.", + "launch_stage": "GA" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should be a resource name ending with `operations/{unique_id}`.", + "launch_stage": "GA" + }, + "response": { + "description": "The normal, successful response of the operation.", + "launch_stage": "GA" + } + } + }, + "postgres.Project": { + "fields": { + "create_time": { + "description": "A timestamp indicating when the project was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "delete_time": { + "description": "A timestamp indicating when the project was soft-deleted.\nEmpty if the project is not deleted, otherwise set to a timestamp in the past.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "initial_branch_spec": { + "description": "Configuration for the initial default branch created as part of project creation.\nAllows overriding branch protection. These settings only apply at creation time\nand do not affect resources created after project creation.", + "ref": "postgres.InitialBranchSpec", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "initial_endpoint_spec": { + "description": "Configuration settings for the initial Read/Write endpoint created inside the initial branch for a newly\ncreated project. If omitted, the initial endpoint created will have default settings, without high availability\nconfigured. This field does not apply to any endpoints created after project creation. Use\nspec.default_endpoint_settings to configure default settings for endpoints created after project creation.", + "ref": "postgres.InitialEndpointSpec", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "name": { + "description": "Output only. The full resource path of the project.\nFormat: projects/{project_id}", + "launch_stage": "GA" + }, + "project_id": { + "description": "The part of the name, chosen by the user when the resource was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "purge_time": { + "description": "A timestamp indicating when the project is scheduled for permanent deletion.\nEmpty if the project is not deleted, otherwise set to a timestamp in the future.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "spec": { + "description": "The spec contains the project configuration, including display_name, pg_version (Postgres version), history_retention_duration, and default_endpoint_settings.", + "ref": "postgres.ProjectSpec", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "status": { + "description": "The current status of a Project.", + "ref": "postgres.ProjectStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "uid": { + "description": "System-generated unique ID for the project.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "A timestamp indicating when the project was last updated.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.ProjectCustomTag": { + "fields": { + "key": { + "description": "The key of the custom tag.", + "launch_stage": "GA" + }, + "value": { + "description": "The value of the custom tag.", + "launch_stage": "GA" + } + } + }, + "postgres.ProjectDefaultEndpointSettings": { + "description": "A collection of settings for a compute endpoint.", + "fields": { + "autoscaling_limit_max_cu": { + "description": "The maximum number of Compute Units. Minimum value is 0.5.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "autoscaling_limit_min_cu": { + "description": "The minimum number of Compute Units. Minimum value is 0.5.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "no_suspension": { + "description": "When set to true, explicitly disables automatic suspension (never suspend).\nShould be set to true when provided.\nMutually exclusive with `suspend_timeout_duration`.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "pg_settings": { + "description": "A raw representation of Postgres settings.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "suspend_timeout_duration": { + "description": "Duration of inactivity after which the compute endpoint is automatically suspended.\nIf specified should be between 60s and 604800s (1 minute to 1 week).\nMutually exclusive with `no_suspension`.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.ProjectOperationMetadata": {}, + "postgres.ProjectSpec": { + "fields": { + "budget_policy_id": { + "description": "The desired budget policy to associate with the project.\nSee status.budget_policy_id for the policy that is actually applied to the project.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "custom_tags": { + "description": "Custom tags to associate with the project. Forwarded to LBM for billing and cost tracking.\nTo update tags, provide the new tag list and include \"spec.custom_tags\" in the update_mask.\nTo clear all tags, provide an empty list and include \"spec.custom_tags\" in the update_mask.\nTo preserve existing tags, omit this field from the update_mask (or use wildcard \"*\" which auto-excludes empty tags).", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "default_branch": { + "description": "The full resource path for the default branch of the project\nFormat: projects/{project_id}/branches/{branch_id}", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "default_endpoint_settings": { + "ref": "postgres.ProjectDefaultEndpointSettings", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "display_name": { + "description": "Human-readable project name. Length should be between 1 and 256 characters.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "enable_pg_native_login": { + "description": "Whether to enable PG native password login on all endpoints in this project. Defaults to false.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "history_retention_duration": { + "description": "The number of seconds to retain the shared history for point in time recovery for all branches in this project. Value should be between 172800s (2 days) and 3024000s (35 days).", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "pg_version": { + "description": "The major Postgres version number. The set of supported versions may vary; consult the API documentation for currently accepted values.", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + } + } + }, + "postgres.ProjectStatus": { + "fields": { + "branch_logical_size_limit_bytes": { + "description": "The logical size limit for a branch.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "budget_policy_id": { + "description": "The budget policy that is applied to the project.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "compute_last_active_time": { + "description": "The most recent time when any endpoint of this project was active.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "custom_tags": { + "description": "The effective custom tags associated with the project.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "default_branch": { + "description": "The full resource path of the default branch of the project", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "default_endpoint_settings": { + "description": "The effective default endpoint settings.", + "ref": "postgres.ProjectDefaultEndpointSettings", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "display_name": { + "description": "The effective human-readable project name.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "enable_pg_native_login": { + "description": "Whether to enable PG native password login on all endpoints in this project.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "history_retention_duration": { + "description": "The effective number of seconds to retain the shared history for point in time recovery.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "owner": { + "description": "The email of the project owner.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "pg_version": { + "description": "The effective major Postgres version number.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "project_id": { + "description": "Part of the resource name.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "synthetic_storage_size_bytes": { + "description": "The current space occupied by the project in storage.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.ProvisioningInfoState": { + "enum": [ + "PROVISIONING", + "ACTIVE", + "FAILED", + "DELETING", + "UPDATING", + "DEGRADED" + ], + "enum_launch_stages": { + "ACTIVE": "GA", + "DEGRADED": "GA", + "DELETING": "GA", + "FAILED": "GA", + "PROVISIONING": "GA", + "UPDATING": "GA" + } + }, + "postgres.ProvisioningPhase": { + "description": "The current phase of the data synchronization pipeline.", + "enum": [ + "PROVISIONING_PHASE_MAIN", + "PROVISIONING_PHASE_INDEX_SCAN", + "PROVISIONING_PHASE_INDEX_SORT" + ], + "enum_launch_stages": { + "PROVISIONING_PHASE_INDEX_SCAN": "GA", + "PROVISIONING_PHASE_INDEX_SORT": "GA", + "PROVISIONING_PHASE_MAIN": "GA" + } + }, + "postgres.RequestedClaims": { + "fields": { + "permission_set": { + "ref": "postgres.RequestedClaimsPermissionSet", + "launch_stage": "GA" + }, + "resources": { + "launch_stage": "GA" + } + } + }, + "postgres.RequestedClaimsPermissionSet": { + "enum": [ + "READ_ONLY" + ], + "enum_launch_stages": { + "READ_ONLY": "GA" + } + }, + "postgres.RequestedResource": { + "fields": { + "table_name": { + "description": "The full Unity Catalog table name.", + "launch_stage": "GA" + } + } + }, + "postgres.RevealRolePasswordRequest": { + "description": "Request to reveal the current password for a password-authenticated Postgres role." + }, + "postgres.RevealRolePasswordResponse": { + "description": "Response containing the password for a password-authenticated Postgres role.", + "fields": { + "password": { + "description": "The current password for the Postgres role.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.Role": { + "description": "Role represents a Postgres role within a Branch.", + "fields": { + "create_time": { + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Output only. The full resource path of the role.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "launch_stage": "GA" + }, + "parent": { + "description": "The Branch where this Role exists.\nFormat: projects/{project_id}/branches/{branch_id}", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "role_id": { + "description": "The part of the name, chosen by the user when the resource was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "spec": { + "description": "The spec contains the role configuration, including identity type, authentication method, and role attributes.", + "ref": "postgres.RoleRoleSpec", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "status": { + "description": "Current status of the role, including its identity type, authentication method, and role attributes.", + "ref": "postgres.RoleRoleStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.RoleAttributes": { + "description": "Attributes that can be granted to a Postgres role. We are only implementing a subset for now, see xref:\nhttps://www.postgresql.org/docs/16/sql-createrole.html\nThe values follow Postgres keyword naming e.g. CREATEDB, BYPASSRLS, etc. which is why they don't include typical\nunderscores between words.", + "fields": { + "bypassrls": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "createdb": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "createrole": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.RoleAuthMethod": { + "description": "How the role is authenticated when connecting to Postgres.", + "enum": [ + "NO_LOGIN", + "PG_PASSWORD_SCRAM_SHA_256", + "LAKEBASE_OAUTH_V1" + ], + "enum_launch_stages": { + "LAKEBASE_OAUTH_V1": "GA", + "NO_LOGIN": "GA", + "PG_PASSWORD_SCRAM_SHA_256": "GA" + } + }, + "postgres.RoleIdentityType": { + "description": "The type of the Databricks managed identity that this Role represents.\nLeave empty if you wish to create a regular Postgres role not associated with a Databricks identity.", + "enum": [ + "USER", + "SERVICE_PRINCIPAL", + "GROUP" + ], + "enum_launch_stages": { + "GROUP": "GA", + "SERVICE_PRINCIPAL": "GA", + "USER": "GA" + } + }, + "postgres.RoleMembershipRole": { + "description": "Roles that the DatabaseInstanceRole can be a member of.", + "enum": [ + "DATABRICKS_SUPERUSER" + ], + "enum_launch_stages": { + "DATABRICKS_SUPERUSER": "GA" + } + }, + "postgres.RoleOperationMetadata": {}, + "postgres.RoleRoleSpec": { + "fields": { + "attributes": { + "description": "The desired API-exposed Postgres role attribute to associate with the role. Optional.", + "ref": "postgres.RoleAttributes", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "auth_method": { + "description": "Controls how the Postgres role authenticates when a client opens a database\nconnection. Supported values:\n\n* LAKEBASE_OAUTH_V1: the role authenticates by presenting a Databricks\nOAuth access token derived from the backing managed identity (the\nDatabricks user, service principal, or group named by the role's\n`postgres_role`). No static password exists for roles using this method.\n* PG_PASSWORD_SCRAM_SHA_256: the role authenticates with a Postgres\npassword verified server-side using the SCRAM-SHA-256 mechanism.\nLakebase generates a password for the role.\n* NO_LOGIN: the role cannot open a Postgres session at all. Useful for\nroles that exist only to own objects or to aggregate privileges that\nare then granted to other, loginable roles.\n\nIf auth_method is left unspecified, a meaningful authentication method is derived from the identity_type:\n* For the managed identities, OAUTH is used.\n* For the regular postgres roles, authentication based on postgres passwords is used.\n\nNOTE: for the Databricks identity type GROUP, LAKEBASE_OAUTH_V1\nis the default auth method (group can login as well).", + "ref": "postgres.RoleAuthMethod", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "identity_type": { + "description": "The type of role.\nWhen specifying a managed-identity, the chosen role_id must be a valid:\n\n* application ID for SERVICE_PRINCIPAL\n* user email for USER\n* group name for GROUP", + "ref": "postgres.RoleIdentityType", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "membership_roles": { + "description": "An enum value for a standard role that this role is a member of.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "postgres_role": { + "description": "The name of the Postgres role.\n\nThis expects a valid Postgres identifier as specified in the link below.\nhttps://www.postgresql.org/docs/current/sql-syntax-lexical.html#SQL-SYNTAX-IDENTIFIERS\n\nRequired when creating the Role.\n\nIf you wish to create a Postgres Role backed by a managed Databricks identity, then postgres_role\nmust be one of the following:\n\n1. user email for IdentityType.USER\n2. app ID for IdentityType.SERVICE_PRINCIPAL\n2. group name for IdentityType.GROUP", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.RoleRoleStatus": { + "fields": { + "attributes": { + "description": "The PG role attributes associated with the role.", + "ref": "postgres.RoleAttributes", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "auth_method": { + "ref": "postgres.RoleAuthMethod", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "identity_type": { + "description": "The type of the role.", + "ref": "postgres.RoleIdentityType", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "membership_roles": { + "description": "An enum value for a standard role that this role is a member of.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "postgres_role": { + "description": "The name of the Postgres role.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "role_id": { + "description": "Part of the resource name.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.ScheduleCadence": { + "description": "One cadence at which automatic snapshots are taken.", + "fields": { + "daily_schedule": { + "description": "Take a snapshot once per day.", + "ref": "postgres.DailySchedule", + "launch_stage": "PUBLIC_BETA" + }, + "monthly_schedule": { + "description": "Take a snapshot once per month.", + "ref": "postgres.MonthlySchedule", + "launch_stage": "PUBLIC_BETA" + }, + "retention": { + "description": "How long snapshots from this cadence are kept before automatic deletion.\nMust be at least 1 hour. Applied when a snapshot is taken; not retroactive,\nso changing it affects only later snapshots.", + "launch_stage": "PUBLIC_BETA" + }, + "weekly_schedule": { + "description": "Take a snapshot once per week.", + "ref": "postgres.WeeklySchedule", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "postgres.Snapshot": { + "description": "An immutable, point-in-time copy of a branch's data within a project. It\nremains available after the source branch is deleted.", + "fields": { + "create_time": { + "description": "When the snapshot was created.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "The resource name of the snapshot.\nFormat: projects/{project_id}/snapshots/{snapshot_id}", + "launch_stage": "PUBLIC_BETA" + }, + "snapshot_id": { + "description": "The user-chosen ID; the final segment of `name`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "spec": { + "description": "Client-provided configuration of the snapshot.", + "ref": "postgres.SnapshotSpec", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "status": { + "description": "Server-observed state of the snapshot.", + "ref": "postgres.SnapshotStatus", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "uid": { + "description": "Unique system-generated ID for the snapshot.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.SnapshotOperationMetadata": { + "description": "Metadata for the long-running snapshot Create and Delete operations." + }, + "postgres.SnapshotSchedule": { + "description": "The automatic snapshot cadences for a branch. There is exactly one schedule\nper branch (singleton); it is configured in place, not created or deleted.\n\nName: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "fields": { + "name": { + "description": "The resource name of the branch's snapshot schedule.\nFormat: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "launch_stage": "PUBLIC_BETA" + }, + "schedule": { + "description": "The cadences at which automatic snapshots are taken. Update replaces the\nwhole set; an empty set disables automatic snapshots. Order is not\nsignificant. When several cadences fire together, one snapshot is taken,\nretained for the longest of their retentions.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL", + "UNORDERED_LIST" + ] + } + } + }, + "postgres.SnapshotScheduleOperationMetadata": { + "description": "Metadata for the long-running snapshot schedule Update operation." + }, + "postgres.SnapshotSpec": { + "description": "Client-provided configuration of the snapshot.", + "fields": { + "expire_time": { + "description": "Absolute time at which the snapshot is deleted.\nMutually exclusive with `ttl` and `no_expiry`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "no_expiry": { + "description": "If true, the snapshot never expires.\nMutually exclusive with `ttl` and `expire_time`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "source_branch": { + "description": "The source branch to snapshot.\nFormat: projects/{project_id}/branches/{branch_id}", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "source_branch_lsn": { + "description": "LSN to snapshot from, e.g. `16/B374D848`.\nMutually exclusive with `source_branch_time`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "source_branch_time": { + "description": "Timestamp to snapshot from.\nMutually exclusive with `source_branch_lsn`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE", + "OPTIONAL" + ] + }, + "ttl": { + "description": "Time-to-live. The snapshot expires this long after it is created.\nMutually exclusive with `expire_time` and `no_expiry`. Reads report the\nresolved absolute `expire_time` instead.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "IMMUTABLE", + "INPUT_ONLY", + "OPTIONAL" + ] + } + } + }, + "postgres.SnapshotStatus": { + "description": "Server-observed state of a snapshot.", + "fields": { + "diff_size_bytes": { + "description": "Incremental storage size in bytes since the previous snapshot. Unset when\nthe snapshot is not billed on incremental usage.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "expire_time": { + "description": "Absolute time at which the snapshot is deleted.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "full_size_bytes": { + "description": "Full logical size of the snapshot, in bytes.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "no_expiry": { + "description": "True if the snapshot never expires.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "source_branch": { + "description": "The source branch the snapshot was taken from.\nFormat: projects/{project_id}/branches/{branch_id}", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.SyncedTable": { + "fields": { + "create_time": { + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Output only. The Full resource name of the synced table in Postgres\nwhere (catalog, schema, table) are the UC entity names.\n\nFormat \"synced_tables/{catalog}.{schema}.{table}\"\n\nFor the corresponding source table in the Unity catalog look for the \"source_table_full_name\" attribute.", + "launch_stage": "GA" + }, + "spec": { + "description": "Configuration details of the synced table, such as the source table, scheduling policy, etc.\nThis attribute is specified at creation time and most fields are returned as is on subsequent queries.", + "ref": "postgres.SyncedTableSyncedTableSpec", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + }, + "status": { + "description": "Synced Table data synchronization status.", + "ref": "postgres.SyncedTableSyncedTableStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "synced_table_id": { + "description": "The part of the name, chosen by the user when the resource was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "uid": { + "description": "The Unity Catalog table ID for this synced table.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.SyncedTableOperationMetadata": { + "description": "Metadata for SyncedTable long-running operations." + }, + "postgres.SyncedTablePipelineProgress": { + "description": "Progress information of the Synced Table data synchronization pipeline.", + "fields": { + "estimated_completion_time_seconds": { + "description": "The estimated time remaining to complete this update in seconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "latest_version_currently_processing": { + "description": "The source table Delta version that was last processed by the pipeline. The pipeline may not\nhave completely processed this version yet.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "sync_progress_completion": { + "description": "The completion ratio of this update. This is a number between 0 and 1.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "synced_row_count": { + "description": "The number of rows that have been synced in this update.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "total_row_count": { + "description": "The total number of rows that need to be synced in this update. This number may be an estimate.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.SyncedTablePosition": { + "fields": { + "delta_table_sync_info": { + "ref": "postgres.DeltaTableSyncInfo", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "sync_end_time": { + "description": "The end timestamp of the most recent successful synchronization.\nThis is the time when the data is available in the synced table.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "sync_start_time": { + "description": "The starting timestamp of the most recent successful synchronization from the source table\nto the destination (synced) table.\nNote this is the starting timestamp of the sync operation, not the end time.\nE.g., for a batch, this is the time when the sync operation started.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.SyncedTableState": { + "description": "The state of a synced table.", + "enum": [ + "SYNCED_TABLE_PROVISIONING", + "SYNCED_TABLE_PROVISIONING_PIPELINE_RESOURCES", + "SYNCED_TABLE_PROVISIONING_INITIAL_SNAPSHOT", + "SYNCED_TABLE_ONLINE", + "SYNCED_TABLE_ONLINE_CONTINUOUS_UPDATE", + "SYNCED_TABLE_ONLINE_TRIGGERED_UPDATE", + "SYNCED_TABLE_ONLINE_NO_PENDING_UPDATE", + "SYNCED_TABLE_OFFLINE", + "SYNCED_TABLE_OFFLINE_FAILED", + "SYNCED_TABLE_ONLINE_PIPELINE_FAILED", + "SYNCED_TABLE_ONLINE_UPDATING_PIPELINE_RESOURCES" + ], + "enum_launch_stages": { + "SYNCED_TABLE_OFFLINE": "GA", + "SYNCED_TABLE_OFFLINE_FAILED": "GA", + "SYNCED_TABLE_ONLINE": "GA", + "SYNCED_TABLE_ONLINE_CONTINUOUS_UPDATE": "GA", + "SYNCED_TABLE_ONLINE_NO_PENDING_UPDATE": "GA", + "SYNCED_TABLE_ONLINE_PIPELINE_FAILED": "GA", + "SYNCED_TABLE_ONLINE_TRIGGERED_UPDATE": "GA", + "SYNCED_TABLE_ONLINE_UPDATING_PIPELINE_RESOURCES": "GA", + "SYNCED_TABLE_PROVISIONING": "GA", + "SYNCED_TABLE_PROVISIONING_INITIAL_SNAPSHOT": "GA", + "SYNCED_TABLE_PROVISIONING_PIPELINE_RESOURCES": "GA" + } + }, + "postgres.SyncedTableSyncedTableSpec": { + "fields": { + "accelerated_sync": { + "description": "When true, enables accelerated sync mode for the initial data load.\nThis significantly improves performance for large tables.\nRequires workspace-level enablement through Lakebase Accelerated Sync preview.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "branch": { + "description": "The full resource name the branch associated with the table.\n\nFormat: \"projects/{project_id}/branches/{branch_id}\".", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "create_database_objects_if_missing": { + "description": "If true, the synced table's logical database and schema resources in PG\nwill be created if they do not already exist.\nThe request will fail if this is false and the database/schema do not exist.\n\nDefaults to true if omitted.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "existing_pipeline_id": { + "description": "ID of an existing pipeline to bin-pack this synced table into.\nAt most one of existing_pipeline_id and new_pipeline_spec should be defined.\n\nThe pipeline used for the synced table is returned via the top level pipeline_id attribute.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "extra_columns": { + "description": "Extra PostgreSQL-only columns to add to the synced table.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "new_pipeline_spec": { + "description": "Specification for creating a new pipeline.\nAt most one of existing_pipeline_id and new_pipeline_spec should be defined.\n\nThe pipeline used for the synced table is returned via the top level pipeline_id attribute.", + "ref": "postgres.NewPipelineSpec", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "postgres_database": { + "description": "The Postgres database name where the synced table will be created in.\n\nIf this synced table is created inside a Lakebase Catalog, this attribute can be omitted on creation and is inferred\nfrom the postgres_database associated with the Lakebase Catalog. If specified when inside a Lakebase Catalog, the value must match.\n\nA value must be specified when creating a synced table inside a Standard Catalog.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "primary_key_columns": { + "description": "Primary Key columns to be used for data insert/update in the destination.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "scheduling_policy": { + "description": "Scheduling policy of the underlying pipeline.", + "ref": "postgres.SyncedTableSyncedTableSpecSyncedTableSchedulingPolicy", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "source_table_full_name": { + "description": "Three-part (catalog, schema, table) name of the source Delta table.\n\nFor the corresponding destination table, use any of the two:\n\n* synced_table_id used at the creation of the SyncedTable\n* \"name\" consisting of \"synced_tables/\" prefix and the full name of the destination table.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "timeseries_key": { + "description": "Time series key to deduplicate (tie-break) rows with the same primary key.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "type_overrides": { + "description": "Override the default Delta-\u003ePG type mapping for specific columns.\nA TypeOverride with PG_SPECIFIC_TYPE_UNSPECIFIED is rejected; a valid pg_type must be set.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.SyncedTableSyncedTableSpecExtraColumn": { + "description": "An extra PostgreSQL column to add to the synced table.", + "fields": { + "column_name": { + "description": "Name of the column.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "column_type": { + "description": "PostgreSQL type of the column, for example \"tsvector\" or \"vector(1024)\".", + "launch_stage": "PRIVATE_PREVIEW" + }, + "compute": { + "description": "SQL expression used to compute the column's value, for example\n\"to_tsvector('english', content)\".", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "maintenance": { + "ref": "postgres.SyncedTableSyncedTableSpecExtraColumnMaintenance", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.SyncedTableSyncedTableSpecExtraColumnMaintenance": { + "description": "How the column's value is populated and kept up to date.", + "enum": [ + "STORED_GENERATED" + ], + "enum_launch_stages": { + "STORED_GENERATED": "PRIVATE_PREVIEW" + } + }, + "postgres.SyncedTableSyncedTableSpecPgSpecificType": { + "description": "PostgreSQL-specific target types that can override the default Delta-to-PG mapping.", + "enum": [ + "PG_SPECIFIC_TYPE_VECTOR", + "PG_SPECIFIC_TYPE_HALFVEC", + "PG_SPECIFIC_TYPE_VARCHAR" + ], + "enum_launch_stages": { + "PG_SPECIFIC_TYPE_HALFVEC": "GA", + "PG_SPECIFIC_TYPE_VARCHAR": "GA", + "PG_SPECIFIC_TYPE_VECTOR": "GA" + } + }, + "postgres.SyncedTableSyncedTableSpecSyncedTableSchedulingPolicy": { + "description": "Scheduling policy of the synced table's underlying pipeline.", + "enum": [ + "CONTINUOUS", + "TRIGGERED", + "SNAPSHOT" + ], + "enum_launch_stages": { + "CONTINUOUS": "GA", + "SNAPSHOT": "GA", + "TRIGGERED": "GA" + } + }, + "postgres.SyncedTableSyncedTableSpecTypeOverride": { + "description": "Overrides the default Delta-to-PostgreSQL type mapping for a single column.", + "fields": { + "column_name": { + "description": "Name of the source column whose target PostgreSQL type should be overridden.", + "launch_stage": "GA" + }, + "pg_type": { + "description": "PostgreSQL-specific target type to use for the column.", + "ref": "postgres.SyncedTableSyncedTableSpecPgSpecificType", + "launch_stage": "GA" + }, + "size": { + "description": "Size parameter for the target type, for types that take one (e.g. vector\ndimension, varchar length). Required when the chosen pg_type needs a size.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "postgres.SyncedTableSyncedTableStatus": { + "fields": { + "detailed_state": { + "description": "The state of the synced table.", + "ref": "postgres.SyncedTableState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_processed_commit_version": { + "description": "The last source table Delta version that was successfully synced to the synced table.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_sync": { + "description": "Summary of the last successful synchronization from source to destination.", + "ref": "postgres.SyncedTablePosition", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "last_sync_time": { + "description": "The end timestamp of the last time any data was synchronized from the source table to the synced\ntable. This is when the data is available in the synced table.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "message": { + "description": "A text description of the current state of the synced table.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "ongoing_sync_progress": { + "ref": "postgres.SyncedTablePipelineProgress", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "pipeline_id": { + "description": "ID of the associated pipeline.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "project": { + "description": "The full resource name of the project associated with the table.\n\nFormat: \"projects/{project_id}\".", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "provisioning_phase": { + "description": "The current phase of the data synchronization pipeline.", + "ref": "postgres.ProvisioningPhase", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "unity_catalog_provisioning_state": { + "description": "The provisioning state of the synced table entity in Unity Catalog.", + "ref": "postgres.ProvisioningInfoState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "postgres.UndeleteBranchRequest": {}, + "postgres.UndeleteProjectRequest": { + "description": "Request to restore a soft-deleted project within its retention period." + }, + "postgres.UpdateBranchRequest": { + "fields": { + "branch": { + "description": "The Branch to update.\n\nThe branch's `name` field is used to identify the branch to update.\nFormat: projects/{project_id}/branches/{branch_id}", + "ref": "postgres.Branch", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The list of fields to update.", + "launch_stage": "GA" + } + } + }, + "postgres.UpdateDataApiRequest": { + "fields": { + "data_api": { + "description": "The Data API configuration to update.\nThe data_api's `name` field identifies the resource.", + "ref": "postgres.DataApi", + "launch_stage": "PRIVATE_PREVIEW" + }, + "update_mask": { + "description": "The list of fields to update.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "postgres.UpdateDatabaseRequest": { + "fields": { + "database": { + "description": "The Database to update.\n\nThe database's `name` field is used to identify the database to update.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "ref": "postgres.Database", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The list of fields to update.", + "launch_stage": "GA" + } + } + }, + "postgres.UpdateEndpointRequest": { + "fields": { + "endpoint": { + "description": "The Endpoint to update.\n\nThe endpoint's `name` field is used to identify the endpoint to update.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "ref": "postgres.Endpoint", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The list of fields to update.", + "launch_stage": "GA" + } + } + }, + "postgres.UpdateProjectRequest": { + "fields": { + "project": { + "description": "The Project to update.\n\nThe project's `name` field is used to identify the project to update.\nFormat: projects/{project_id}", + "ref": "postgres.Project", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The list of fields to update.", + "launch_stage": "GA" + } + } + }, + "postgres.UpdateRoleRequest": { + "fields": { + "role": { + "description": "The Postgres Role to update.\n\nThe role's `name` field is used to identify the role to update.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "ref": "postgres.Role", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The list of fields to update.", + "launch_stage": "GA" + } + } + }, + "postgres.UpdateSnapshotScheduleRequest": { + "fields": { + "snapshot_schedule": { + "description": "The snapshot schedule to set. Its `name` identifies the branch.\nFormat: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "ref": "postgres.SnapshotSchedule", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Fields to update. The only updatable path is `schedule`, which replaces the\nentire set of cadences.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "postgres.WeeklySchedule": { + "description": "Take a snapshot once per week, on the configured day at the configured hour.", + "fields": { + "day_of_week": { + "description": "The day of the week on which to take the snapshot.", + "ref": "postgres.DayOfWeek", + "launch_stage": "PUBLIC_BETA" + }, + "hour": { + "description": "The hour of the day, in UTC, at which to take the snapshot, in [0, 23].", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "provisioning.AwsCredentials": { + "fields": { + "sts_role": { + "ref": "provisioning.StsRole", + "launch_stage": "GA" + } + } + }, + "provisioning.AwsKeyInfo": { + "fields": { + "key_alias": { + "description": "The AWS KMS key alias.", + "launch_stage": "GA" + }, + "key_arn": { + "description": "The AWS KMS key's Amazon Resource Name (ARN).", + "launch_stage": "GA" + }, + "key_region": { + "description": "The AWS KMS key region.", + "launch_stage": "GA" + }, + "reuse_key_for_cluster_volumes": { + "description": "This field applies only if the `use_cases` property includes `STORAGE`. If this is set to true or omitted, the key is also used to encrypt\ncluster EBS volumes. If you do not want to use this key for encrypting EBS volumes, set to false.", + "launch_stage": "GA" + } + } + }, + "provisioning.AzureKeyInfo": { + "fields": { + "disk_encryption_set_id": { + "description": "The Disk Encryption Set id that is used to represent the key info used for\nManaged Disk BYOK use case", + "launch_stage": "GA" + }, + "key_access_configuration": { + "description": "The structure to store key access credential\nThis is set if the Managed Identity is being used to access the Azure Key Vault key.", + "ref": "provisioning.KeyAccessConfiguration", + "launch_stage": "GA" + }, + "key_name": { + "description": "The name of the key in KeyVault.", + "launch_stage": "GA" + }, + "key_vault_uri": { + "description": "The base URI of the KeyVault.", + "launch_stage": "GA" + }, + "tenant_id": { + "description": "The tenant id where the KeyVault lives.", + "launch_stage": "GA" + }, + "version": { + "description": "The current key version.", + "launch_stage": "GA" + } + } + }, + "provisioning.AzureWorkspaceInfo": { + "fields": { + "resource_group": { + "description": "Azure Resource Group name", + "launch_stage": "GA" + }, + "subscription_id": { + "description": "Azure Subscription ID", + "launch_stage": "GA" + } + } + }, + "provisioning.CloudResourceContainer": { + "fields": { + "gcp": { + "ref": "provisioning.CustomerFacingGcpCloudResourceContainer", + "launch_stage": "GA" + } + } + }, + "provisioning.CreateAwsKeyInfo": { + "fields": { + "key_alias": { + "description": "The AWS KMS key alias.", + "launch_stage": "GA" + }, + "key_arn": { + "description": "The AWS KMS key's Amazon Resource Name (ARN).", + "launch_stage": "GA" + }, + "key_region": { + "description": "The AWS KMS key region.", + "launch_stage": "GA" + }, + "reuse_key_for_cluster_volumes": { + "description": "This field applies only if the `use_cases` property includes `STORAGE`. If this is set to true or omitted, the key is also used to encrypt\ncluster EBS volumes. If you do not want to use this key for encrypting EBS volumes, set to false.", + "launch_stage": "GA" + } + } + }, + "provisioning.CreateAzureKeyInfo": { + "fields": { + "disk_encryption_set_id": { + "description": "The Disk Encryption Set id that is used to represent the key info used for\nManaged Disk BYOK use case", + "launch_stage": "PRIVATE_PREVIEW" + }, + "key_access_configuration": { + "description": "The structure to store key access credential\nThis is set if the Managed Identity is being used to access the Azure Key Vault key.", + "ref": "provisioning.KeyAccessConfiguration", + "launch_stage": "PRIVATE_PREVIEW" + }, + "key_name": { + "description": "The name of the key in KeyVault.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "key_vault_uri": { + "description": "The base URI of the KeyVault.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "tenant_id": { + "description": "The tenant id where the KeyVault lives.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "version": { + "description": "The current key version.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "provisioning.CreateCredentialAwsCredentials": { + "fields": { + "sts_role": { + "ref": "provisioning.CreateCredentialStsRole", + "launch_stage": "GA" + } + } + }, + "provisioning.CreateCredentialRequest": { + "fields": { + "aws_credentials": { + "ref": "provisioning.CreateCredentialAwsCredentials", + "launch_stage": "GA" + }, + "credentials_name": { + "description": "The human-readable name of the credential configuration object.", + "launch_stage": "GA" + } + } + }, + "provisioning.CreateCredentialStsRole": { + "fields": { + "role_arn": { + "description": "The Amazon Resource Name (ARN) of the cross account IAM role.", + "launch_stage": "GA" + } + } + }, + "provisioning.CreateCustomerManagedKeyRequest": { + "fields": { + "aws_key_info": { + "ref": "provisioning.CreateAwsKeyInfo", + "launch_stage": "GA" + }, + "azure_key_info": { + "ref": "provisioning.CreateAzureKeyInfo", + "launch_stage": "PRIVATE_PREVIEW" + }, + "gcp_key_info": { + "ref": "provisioning.CreateGcpKeyInfo", + "launch_stage": "GA" + }, + "use_cases": { + "description": "The cases that the key can be used for.", + "launch_stage": "GA" + } + } + }, + "provisioning.CreateGcpKeyInfo": { + "fields": { + "gcp_service_account": { + "description": "Globally unique service account email that has access to the KMS key.\nThe service account exists within the Databricks CP project.", + "ref": "provisioning.GcpServiceAccount", + "launch_stage": "GA" + }, + "kms_key_id": { + "description": "Globally unique kms key resource id of the form\nprojects/testProjectId/locations/us-east4/keyRings/gcpCmkKeyRing/cryptoKeys/cmk-eastus4", + "launch_stage": "GA" + }, + "manual": { + "description": "When true, Databricks will not use OAuth to grant the service account\naccess to the KMS key. The customer is responsible for granting access\nmanually.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "provisioning.CreateNetworkRequest": { + "fields": { + "gcp_network_info": { + "ref": "provisioning.GcpNetworkInfo", + "launch_stage": "GA" + }, + "network_name": { + "description": "The human-readable name of the network configuration.", + "launch_stage": "GA" + }, + "security_group_ids": { + "description": "IDs of one to five security groups associated with this network. Security group IDs **cannot** be used in multiple network configurations.", + "launch_stage": "GA" + }, + "subnet_ids": { + "description": "IDs of at least two subnets associated with this network. Subnet IDs **cannot** be used in multiple network configurations.", + "launch_stage": "GA" + }, + "vpc_endpoints": { + "ref": "provisioning.NetworkVpcEndpoints", + "launch_stage": "GA" + }, + "vpc_id": { + "description": "The ID of the VPC associated with this network configuration. VPC IDs can be used in multiple networks.", + "launch_stage": "GA" + } + } + }, + "provisioning.CreatePrivateAccessSettingsRequest": { + "fields": { + "allowed_vpc_endpoint_ids": { + "description": "An array of Databricks VPC endpoint IDs. This is the Databricks ID returned when registering the VPC endpoint configuration in your Databricks account. This is not the ID of the VPC endpoint in AWS.\nOnly used when private_access_level is set to ENDPOINT. This is an allow list of VPC endpoints registered in your Databricks account that can connect to your workspace over AWS PrivateLink.\nNote: If hybrid access to your workspace is enabled by setting public_access_enabled to true, this control only works for PrivateLink connections. To control how your workspace is accessed via public internet, see IP access lists.", + "launch_stage": "GA" + }, + "private_access_level": { + "description": "The private access level controls which VPC endpoints can connect to the UI or API of any workspace that attaches this private access settings object.\n`ACCOUNT` level access (the default) allows only VPC endpoints that are registered in your Databricks account connect to your workspace.\n`ENDPOINT` level access allows only specified VPC endpoints connect to your workspace. For details, see allowed_vpc_endpoint_ids.", + "ref": "provisioning.PrivateAccessLevel", + "launch_stage": "GA" + }, + "private_access_settings_name": { + "description": "The human-readable name of the private access settings object.", + "launch_stage": "GA" + }, + "public_access_enabled": { + "description": "Determines if the workspace can be accessed over public internet. For fully private workspaces, you can optionally specify false, but only if you implement both the front-end and the back-end PrivateLink connections. Otherwise, specify true, which means that public access is enabled.", + "launch_stage": "GA" + }, + "region": { + "description": "The AWS region for workspaces attached to this private access settings object.", + "launch_stage": "GA" + } + } + }, + "provisioning.CreateStorageConfigurationRequest": { + "fields": { + "role_arn": { + "description": "Optional IAM role that is used to access the workspace catalog which is created during workspace creation\nfor UC by Default. If a storage configuration with this field populated is used to create a workspace,\nthen a workspace catalog is created together with the workspace. The workspace catalog shares the root\nbucket with internal workspace storage (including DBFS root) but uses a dedicated bucket path prefix.", + "launch_stage": "GA" + }, + "root_bucket_info": { + "description": "Root S3 bucket information.", + "ref": "provisioning.RootBucketInfo", + "launch_stage": "GA" + }, + "storage_configuration_name": { + "description": "The human-readable name of the storage configuration.", + "launch_stage": "GA" + } + } + }, + "provisioning.CreateVpcEndpointRequest": { + "fields": { + "aws_vpc_endpoint_id": { + "description": "The ID of the VPC endpoint object in AWS.", + "launch_stage": "GA" + }, + "gcp_vpc_endpoint_info": { + "description": "The cloud info of this vpc endpoint.", + "ref": "provisioning.GcpVpcEndpointInfo", + "launch_stage": "GA" + }, + "region": { + "description": "The region in which this VPC endpoint object exists.", + "launch_stage": "GA" + }, + "vpc_endpoint_name": { + "description": "The human-readable name of the storage configuration.", + "launch_stage": "GA" + } + } + }, + "provisioning.CreateWorkspaceRequest": { + "fields": { + "aws_region": { + "launch_stage": "GA" + }, + "cloud": { + "description": "DEPRECATED: This field is being ignored by the server and will be removed in the future.\nThe cloud name. This field always has the value `gcp`.", + "deprecated": true, + "launch_stage": "GA" + }, + "cloud_resource_container": { + "ref": "provisioning.CloudResourceContainer", + "launch_stage": "GA" + }, + "compute_mode": { + "description": "If the compute mode is `SERVERLESS`, a serverless workspace is created that comes pre-configured with serverless compute and default storage, providing a fully-managed, enterprise-ready SaaS experience. This means you don't need to provide any resources managed by you, such as credentials, storage, or network.\nIf the compute mode is `HYBRID` (which is the default option), a classic workspace is created that uses customer-managed resources.", + "ref": "provisioning.CustomerFacingComputeMode", + "launch_stage": "GA" + }, + "credentials_id": { + "description": "ID of the workspace's credential configuration object.", + "launch_stage": "GA" + }, + "custom_tags": { + "description": "The custom tags key-value pairing that is attached to this workspace. The key-value pair is a string of utf-8 characters. The\nvalue can be an empty string, with maximum length of 255 characters. The key can be of maximum length of 127 characters, and cannot be empty.", + "launch_stage": "GA" + }, + "deployment_name": { + "description": "The deployment name defines part of the subdomain for the workspace. The workspace URL for the web application and REST APIs is \u003cworkspace-deployment-name\u003e.cloud.databricks.com. For example, if the deployment name is abcsales, your workspace URL will be https://abcsales.cloud.databricks.com. Hyphens are allowed. This property supports only the set of characters that are allowed in a subdomain.\nTo set this value, you must have a deployment name prefix. Contact your Databricks account team to add an account deployment name prefix to your account.\nWorkspace deployment names follow the account prefix and a hyphen. For example, if your account's deployment prefix is acme and the workspace deployment name is workspace-1, the JSON response for the deployment_name field becomes acme-workspace-1. The workspace URL would be acme-workspace-1.cloud.databricks.com.\nYou can also set the deployment_name to the reserved keyword EMPTY if you want the deployment name to only include the deployment prefix. For example, if your account's deployment prefix is acme and the workspace deployment name is EMPTY, the deployment_name becomes acme only and the workspace URL is acme.cloud.databricks.com.\nThis value must be unique across all non-deleted deployments across all AWS regions.\nIf a new workspace omits this property, the server generates a unique deployment name for you with the pattern dbc-xxxxxxxx-xxxx.", + "launch_stage": "GA" + }, + "gcp_managed_network_config": { + "ref": "provisioning.GcpManagedNetworkConfig", + "launch_stage": "GA" + }, + "gke_config": { + "ref": "provisioning.GkeConfig", + "launch_stage": "GA" + }, + "location": { + "description": "The Google Cloud region of the workspace data plane in your Google account (for example, `us-east4`).", + "launch_stage": "GA" + }, + "managed_services_customer_managed_key_id": { + "description": "The ID of the workspace's managed services encryption key configuration object. This is used to help protect and control access to the workspace's notebooks, secrets, Databricks SQL queries, and query history. The provided key configuration object property use_cases must contain MANAGED_SERVICES.", + "launch_stage": "GA" + }, + "network_connectivity_config_id": { + "description": "The object ID of network connectivity config. Once assigned, the workspace serverless compute resources use the same set of stable IP CIDR blocks and optional private link to access your resources.", + "launch_stage": "GA" + }, + "network_id": { + "description": "The ID of the workspace's network configuration object. To use AWS PrivateLink, this field is required.", + "launch_stage": "GA" + }, + "pricing_tier": { + "ref": "provisioning.PricingTier", + "launch_stage": "GA" + }, + "private_access_settings_id": { + "description": "ID of the workspace's private access settings object. Only used for PrivateLink. You must specify this ID if you are using [AWS PrivateLink](https://aws.amazon.com/privatelink/) for either front-end (user-to-workspace connection), back-end (data plane to control plane connection), or both connection types.\nBefore configuring PrivateLink, read the [Databricks article about PrivateLink](https://docs.databricks.com/administration-guide/cloud-configurations/aws/privatelink.html).\",", + "launch_stage": "GA" + }, + "storage_configuration_id": { + "description": "ID of the workspace's storage configuration object.", + "launch_stage": "GA" + }, + "storage_customer_managed_key_id": { + "description": "The ID of the workspace's storage encryption key configuration object. This is used to encrypt the workspace's root S3 bucket (root DBFS and system data) and, optionally, cluster EBS volumes. The provided key configuration object property use_cases must contain STORAGE.", + "launch_stage": "GA" + }, + "workspace_name": { + "description": "The human-readable name of the workspace.", + "launch_stage": "GA" + } + } + }, + "provisioning.Credential": { + "fields": { + "account_id": { + "description": "The Databricks account ID that hosts the credential.", + "launch_stage": "GA" + }, + "aws_credentials": { + "ref": "provisioning.AwsCredentials", + "launch_stage": "GA" + }, + "creation_time": { + "description": "Time in epoch milliseconds when the credential was created.", + "launch_stage": "GA" + }, + "credentials_id": { + "description": "Databricks credential configuration ID.", + "launch_stage": "GA" + }, + "credentials_name": { + "description": "The human-readable name of the credential configuration object.", + "launch_stage": "GA" + } + } + }, + "provisioning.CustomerFacingComputeMode": { + "description": "Corresponds to compute mode defined here:\nhttps://src.dev.databricks.com/databricks/universe@9076536b18479afd639d1c1f9dd5a59f72215e69/-/blob/central/api/common.proto?L872", + "enum": [ + "HYBRID", + "SERVERLESS" + ], + "enum_launch_stages": { + "HYBRID": "GA", + "SERVERLESS": "GA" + } + }, + "provisioning.CustomerFacingGcpCloudResourceContainer": { + "fields": { + "project_id": { + "launch_stage": "GA" + } + } + }, + "provisioning.CustomerFacingStorageMode": { + "enum": [ + "CUSTOMER_HOSTED", + "DEFAULT_STORAGE" + ], + "enum_launch_stages": { + "CUSTOMER_HOSTED": "GA", + "DEFAULT_STORAGE": "GA" + } + }, + "provisioning.CustomerManagedKey": { + "fields": { + "account_id": { + "description": "The Databricks account ID that holds the customer-managed key.", + "launch_stage": "GA" + }, + "aws_key_info": { + "ref": "provisioning.AwsKeyInfo", + "launch_stage": "GA" + }, + "azure_key_info": { + "ref": "provisioning.AzureKeyInfo", + "launch_stage": "GA" + }, + "creation_time": { + "description": "Time in epoch milliseconds when the customer key was created.", + "launch_stage": "GA" + }, + "customer_managed_key_id": { + "description": "ID of the encryption key configuration object.", + "launch_stage": "GA" + }, + "gcp_key_info": { + "ref": "provisioning.GcpKeyInfo", + "launch_stage": "GA" + }, + "use_cases": { + "description": "The cases that the key can be used for.", + "launch_stage": "GA" + } + } + }, + "provisioning.DeleteCredentialRequest": {}, + "provisioning.DeleteEncryptionKeyRequest": {}, + "provisioning.DeleteNetworkRequest": {}, + "provisioning.DeletePrivateAccesRequest": {}, + "provisioning.DeleteStorageRequest": {}, + "provisioning.DeleteVpcEndpointRequest": {}, + "provisioning.DeleteWorkspaceRequest": {}, + "provisioning.EndpointUseCase": { + "enum": [ + "WORKSPACE_ACCESS", + "DATAPLANE_RELAY_ACCESS", + "GENERAL_ACCESS" + ], + "enum_launch_stages": { + "DATAPLANE_RELAY_ACCESS": "GA", + "GENERAL_ACCESS": "PUBLIC_BETA", + "WORKSPACE_ACCESS": "GA" + } + }, + "provisioning.ErrorType": { + "description": "ErrorType and WarningType are used to represent the type of error or warning by NetworkHealth and NetworkWarning defined in central/api/accounts/accounts.proto", + "enum": [ + "credentials", + "vpc", + "subnet", + "securityGroup", + "networkAcl" + ], + "enum_launch_stages": { + "credentials": "GA", + "networkAcl": "GA", + "securityGroup": "GA", + "subnet": "GA", + "vpc": "GA" + } + }, + "provisioning.GcpCommonNetworkConfig": { + "description": "The shared network config for GCP workspace.\nThis object has common network configurations that are network attributions of a workspace.\nDEPRECATED. Use GkeConfig instead.", + "fields": { + "gke_cluster_master_ip_range": { + "description": "The IP range that will be used to allocate GKE cluster master resources from.\nThis field must not be set if gke_cluster_type=PUBLIC_NODE_PUBLIC_MASTER.", + "launch_stage": "GA" + }, + "gke_connectivity_type": { + "description": "The type of network connectivity of the GKE cluster.", + "ref": "provisioning.GkeConfigConnectivityType", + "launch_stage": "GA" + } + } + }, + "provisioning.GcpKeyInfo": { + "fields": { + "gcp_service_account": { + "description": "Globally unique service account email that has access to the KMS key.\nThe service account exists within the Databricks CP project.", + "ref": "provisioning.GcpServiceAccount", + "launch_stage": "GA" + }, + "kms_key_id": { + "description": "Globally unique kms key resource id of the form\nprojects/testProjectId/locations/us-east4/keyRings/gcpCmkKeyRing/cryptoKeys/cmk-eastus4", + "launch_stage": "GA" + }, + "manual": { + "description": "When true, Databricks will not use OAuth to grant the service account\naccess to the KMS key. The customer is responsible for granting access\nmanually.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "provisioning.GcpManagedNetworkConfig": { + "description": "The network configuration for the workspace.", + "fields": { + "gke_cluster_pod_ip_range": { + "description": "The IP range that will be used to allocate GKE cluster Pods from.", + "launch_stage": "GA" + }, + "gke_cluster_service_ip_range": { + "description": "The IP range that will be used to allocate GKE cluster Services from.", + "launch_stage": "GA" + }, + "subnet_cidr": { + "description": "The IP range which will be used to allocate GKE cluster nodes from.\nNote: Pods, services and master IP range must be mutually exclusive.", + "launch_stage": "GA" + } + } + }, + "provisioning.GcpNetworkInfo": { + "fields": { + "network_project_id": { + "description": "The GCP project ID for network resources. This project is where the VPC and subnet resides.", + "launch_stage": "GA" + }, + "pod_ip_range_name": { + "description": "Name of the secondary range within the subnet that will be used by GKE as Pod IP range.\nThis is BYO VPC specific. DB VPC uses network.getGcpManagedNetworkConfig.getGkeClusterPodIpRange", + "launch_stage": "GA" + }, + "service_ip_range_name": { + "description": "Name of the secondary range within the subnet that will be used by GKE as Service IP range.", + "launch_stage": "GA" + }, + "subnet_id": { + "description": "The customer-provided Subnet ID that will be available to Clusters in Workspaces using this\nNetwork.", + "launch_stage": "GA" + }, + "subnet_region": { + "launch_stage": "GA" + }, + "vpc_id": { + "description": "The customer-provided VPC ID.", + "launch_stage": "GA" + } + } + }, + "provisioning.GcpServiceAccount": { + "fields": { + "service_account_email": { + "launch_stage": "GA" + } + } + }, + "provisioning.GcpVpcEndpointInfo": { + "fields": { + "endpoint_region": { + "launch_stage": "GA" + }, + "project_id": { + "launch_stage": "GA" + }, + "psc_connection_id": { + "launch_stage": "GA" + }, + "psc_endpoint_name": { + "launch_stage": "GA" + }, + "service_attachment_id": { + "launch_stage": "GA" + } + } + }, + "provisioning.GetCredentialRequest": {}, + "provisioning.GetEncryptionKeyRequest": {}, + "provisioning.GetNetworkRequest": {}, + "provisioning.GetPrivateAccesRequest": {}, + "provisioning.GetStorageRequest": {}, + "provisioning.GetVpcEndpointRequest": {}, + "provisioning.GetWorkspaceRequest": {}, + "provisioning.GkeConfig": { + "description": "The configurations of the GKE cluster used by the GCP workspace.", + "fields": { + "connectivity_type": { + "description": "The type of network connectivity of the GKE cluster.", + "ref": "provisioning.GkeConfigConnectivityType", + "launch_stage": "GA" + }, + "master_ip_range": { + "description": "The IP range that will be used to allocate GKE cluster master resources from.\nThis field must not be set if gke_cluster_type=PUBLIC_NODE_PUBLIC_MASTER.", + "launch_stage": "GA" + } + } + }, + "provisioning.GkeConfigConnectivityType": { + "description": "Specifies the network connectivity types for the GKE nodes and the GKE master network.\n\nSet to `PRIVATE_NODE_PUBLIC_MASTER` for a private GKE cluster\nfor the workspace. The GKE nodes will not have public IPs.\n\nSet to `PUBLIC_NODE_PUBLIC_MASTER` for a public GKE cluster.\nThe nodes of a public GKE cluster have public IP addresses.", + "enum": [ + "PRIVATE_NODE_PUBLIC_MASTER", + "PUBLIC_NODE_PUBLIC_MASTER" + ], + "enum_launch_stages": { + "PRIVATE_NODE_PUBLIC_MASTER": "GA", + "PUBLIC_NODE_PUBLIC_MASTER": "GA" + } + }, + "provisioning.KeyAccessConfiguration": { + "description": "The credential ID that is used to access the key vault.", + "fields": { + "credential_id": { + "launch_stage": "GA" + } + } + }, + "provisioning.KeyUseCase": { + "enum": [ + "MANAGED_SERVICES", + "STORAGE" + ], + "enum_launch_stages": { + "MANAGED_SERVICES": "GA", + "STORAGE": "GA" + } + }, + "provisioning.ListCredentialsRequest": {}, + "provisioning.ListEncryptionKeysRequest": {}, + "provisioning.ListNetworksRequest": {}, + "provisioning.ListPrivateAccessRequest": {}, + "provisioning.ListStorageRequest": {}, + "provisioning.ListVpcEndpointsRequest": {}, + "provisioning.ListWorkspacesRequest": {}, + "provisioning.Network": { + "fields": { + "account_id": { + "description": "The Databricks account ID associated with this network configuration.", + "launch_stage": "GA" + }, + "creation_time": { + "description": "Time in epoch milliseconds when the network was created.", + "launch_stage": "GA" + }, + "error_messages": { + "description": "Array of error messages about the network configuration.", + "launch_stage": "GA" + }, + "gcp_network_info": { + "ref": "provisioning.GcpNetworkInfo", + "launch_stage": "GA" + }, + "network_id": { + "description": "The Databricks network configuration ID.", + "launch_stage": "GA" + }, + "network_name": { + "description": "The human-readable name of the network configuration.", + "launch_stage": "GA" + }, + "security_group_ids": { + "description": "IDs of one to five security groups associated with this network. Security group IDs **cannot** be used in multiple network configurations.", + "launch_stage": "GA" + }, + "subnet_ids": { + "description": "IDs of at least two subnets associated with this network. Subnet IDs **cannot** be used in multiple network configurations.", + "launch_stage": "GA" + }, + "vpc_endpoints": { + "ref": "provisioning.NetworkVpcEndpoints", + "launch_stage": "GA" + }, + "vpc_id": { + "description": "The ID of the VPC associated with this network configuration. VPC IDs can be used in multiple networks.", + "launch_stage": "GA" + }, + "vpc_status": { + "ref": "provisioning.VpcStatus", + "launch_stage": "GA" + }, + "warning_messages": { + "description": "Array of warning messages about the network configuration.", + "launch_stage": "GA" + }, + "workspace_id": { + "description": "Workspace ID associated with this network configuration.", + "launch_stage": "GA" + } + } + }, + "provisioning.NetworkHealth": { + "fields": { + "error_message": { + "description": "Details of the error.", + "launch_stage": "GA" + }, + "error_type": { + "ref": "provisioning.ErrorType", + "launch_stage": "GA" + } + } + }, + "provisioning.NetworkVpcEndpoints": { + "fields": { + "dataplane_relay": { + "description": "The VPC endpoint ID used by this network to access the Databricks secure cluster connectivity relay.", + "launch_stage": "GA" + }, + "rest_api": { + "description": "The VPC endpoint ID used by this network to access the Databricks REST API.", + "launch_stage": "GA" + } + } + }, + "provisioning.NetworkWarning": { + "fields": { + "warning_message": { + "description": "Details of the warning.", + "launch_stage": "GA" + }, + "warning_type": { + "ref": "provisioning.WarningType", + "launch_stage": "GA" + } + } + }, + "provisioning.PricingTier": { + "enum": [ + "UNKNOWN", + "COMMUNITY_EDITION", + "STANDARD", + "PREMIUM", + "ENTERPRISE", + "DEDICATED" + ], + "enum_launch_stages": { + "COMMUNITY_EDITION": "GA", + "DEDICATED": "GA", + "ENTERPRISE": "GA", + "PREMIUM": "GA", + "STANDARD": "GA", + "UNKNOWN": "GA" + } + }, + "provisioning.PrivateAccessLevel": { + "enum": [ + "ENDPOINT", + "ACCOUNT" + ], + "enum_launch_stages": { + "ACCOUNT": "GA", + "ENDPOINT": "GA" + } + }, + "provisioning.PrivateAccessSettings": { + "description": "*", + "fields": { + "account_id": { + "description": "The Databricks account ID that hosts the private access settings.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "allowed_vpc_endpoint_ids": { + "description": "An array of Databricks VPC endpoint IDs. This is the Databricks ID that is returned when registering the VPC endpoint configuration in your Databricks account. This is not the ID of the VPC endpoint in AWS.\nOnly used when private_access_level is set to ENDPOINT. This is an allow list of VPC endpoints that in your account that can connect to your workspace over AWS PrivateLink.\nIf hybrid access to your workspace is enabled by setting public_access_enabled to true, this control only works for PrivateLink connections. To control how your workspace is accessed via public internet, see IP access lists.", + "launch_stage": "GA" + }, + "private_access_level": { + "description": "The private access level controls which VPC endpoints can connect to the UI or API of any workspace that attaches this private access settings object.\n`ACCOUNT` level access (the default) allows only VPC endpoints that are registered in your Databricks account connect to your workspace.\n`ENDPOINT` level access allows only specified VPC endpoints connect to your workspace. For details, see allowed_vpc_endpoint_ids.", + "ref": "provisioning.PrivateAccessLevel", + "launch_stage": "GA" + }, + "private_access_settings_id": { + "description": "Databricks private access settings ID.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "private_access_settings_name": { + "description": "The human-readable name of the private access settings object.", + "launch_stage": "GA" + }, + "public_access_enabled": { + "description": "Determines if the workspace can be accessed over public internet. For fully private workspaces, you can optionally specify false, but only if you implement both the front-end and the back-end PrivateLink connections. Otherwise, specify true, which means that public access is enabled.", + "launch_stage": "GA" + }, + "region": { + "description": "The AWS region for workspaces attached to this private access settings object.", + "launch_stage": "GA" + } + } + }, + "provisioning.ReplacePrivateAccessSettingsRequest": { + "fields": { + "customer_facing_private_access_settings": { + "description": "Properties of the new private access settings object.", + "ref": "provisioning.PrivateAccessSettings", + "launch_stage": "GA" + } + } + }, + "provisioning.RootBucketInfo": { + "fields": { + "bucket_name": { + "description": "Name of the S3 bucket", + "launch_stage": "GA" + } + } + }, + "provisioning.StorageConfiguration": { + "fields": { + "account_id": { + "description": "The Databricks account ID associated with this storage configuration.", + "launch_stage": "GA" + }, + "creation_time": { + "description": "Time in epoch milliseconds when the storage configuration was created.", + "launch_stage": "GA" + }, + "role_arn": { + "description": "Optional IAM role that is used to access the workspace catalog which is created during workspace creation\nfor UC by Default. If a storage configuration with this field populated is used to create a workspace,\nthen a workspace catalog is created together with the workspace. The workspace catalog shares the root\nbucket with internal workspace storage (including DBFS root) but uses a dedicated bucket path prefix.", + "launch_stage": "GA" + }, + "root_bucket_info": { + "description": "The root bucket information for the storage configuration.", + "ref": "provisioning.RootBucketInfo", + "launch_stage": "GA" + }, + "storage_configuration_id": { + "description": "Databricks storage configuration ID.", + "launch_stage": "GA" + }, + "storage_configuration_name": { + "description": "The human-readable name of the storage configuration.", + "launch_stage": "GA" + } + } + }, + "provisioning.StsRole": { + "fields": { + "role_arn": { + "description": "The Amazon Resource Name (ARN) of the cross account IAM role.", + "launch_stage": "GA" + } + } + }, + "provisioning.UpdateWorkspaceRequest": { + "fields": { + "customer_facing_workspace": { + "ref": "provisioning.Workspace", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "GA" + } + } + }, + "provisioning.VpcEndpoint": { + "description": "*", + "fields": { + "account_id": { + "description": "The Databricks account ID that hosts the VPC endpoint configuration.", + "launch_stage": "GA" + }, + "aws_account_id": { + "description": "The AWS Account in which the VPC endpoint object exists.", + "launch_stage": "GA" + }, + "aws_endpoint_service_id": { + "description": "The ID of the Databricks [endpoint service](https://docs.aws.amazon.com/vpc/latest/privatelink/endpoint-service.html) that this VPC endpoint is connected to. For a list of endpoint service IDs for each supported AWS region, see the [Databricks PrivateLink documentation](https://docs.databricks.com/administration-guide/cloud-configurations/aws/privatelink.html).", + "launch_stage": "GA" + }, + "aws_vpc_endpoint_id": { + "description": "The ID of the VPC endpoint object in AWS.", + "launch_stage": "GA" + }, + "gcp_vpc_endpoint_info": { + "description": "The cloud info of this vpc endpoint.\nInfo for a GCP vpc endpoint.", + "ref": "provisioning.GcpVpcEndpointInfo", + "launch_stage": "GA" + }, + "region": { + "description": "The AWS region in which this VPC endpoint object exists.", + "launch_stage": "GA" + }, + "state": { + "description": "The current state (such as `available` or `rejected`) of the VPC endpoint. Derived from AWS. For the full set of values, see [AWS DescribeVpcEndpoint documentation](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpc-endpoints.html).", + "launch_stage": "GA" + }, + "use_case": { + "description": "This enumeration represents the type of Databricks VPC endpoint service that was used when creating this VPC endpoint.\nIf the VPC endpoint connects to the Databricks control plane for either the front-end connection or the back-end REST API connection, the value is GENERAL_ACCESS.\nIf the VPC endpoint connects to the Databricks workspace for the back-end secure cluster connectivity relay, the value is DATAPLANE_RELAY_ACCESS.", + "ref": "provisioning.EndpointUseCase", + "launch_stage": "GA" + }, + "vpc_endpoint_id": { + "description": "Databricks VPC endpoint ID. This is the Databricks-specific name of the VPC endpoint. Do not confuse this with the `aws_vpc_endpoint_id`, which is the ID within AWS of the VPC endpoint.", + "launch_stage": "GA" + }, + "vpc_endpoint_name": { + "description": "The human-readable name of the storage configuration.", + "launch_stage": "GA" + } + } + }, + "provisioning.VpcStatus": { + "enum": [ + "VALID", + "BROKEN", + "UNATTACHED", + "WARNED" + ], + "enum_launch_stages": { + "BROKEN": "GA", + "UNATTACHED": "GA", + "VALID": "GA", + "WARNED": "GA" + } + }, + "provisioning.WarningType": { + "enum": [ + "subnet", + "securityGroup" + ], + "enum_launch_stages": { + "securityGroup": "GA", + "subnet": "GA" + } + }, + "provisioning.Workspace": { + "fields": { + "account_id": { + "description": "Databricks account ID.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "aws_region": { + "launch_stage": "GA" + }, + "azure_workspace_info": { + "ref": "provisioning.AzureWorkspaceInfo", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "cloud": { + "description": "The cloud name. This field can have values like `azure`, `gcp`.", + "launch_stage": "GA" + }, + "cloud_resource_container": { + "ref": "provisioning.CloudResourceContainer", + "launch_stage": "GA" + }, + "compute_mode": { + "description": "The compute mode of the workspace.", + "ref": "provisioning.CustomerFacingComputeMode", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "creation_time": { + "description": "Time in epoch milliseconds when the workspace was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "credentials_id": { + "description": "ID of the workspace's credential configuration object.", + "launch_stage": "GA" + }, + "custom_tags": { + "description": "The custom tags key-value pairing that is attached to this workspace. The key-value pair is a string of utf-8 characters. The value can be an empty string,\nwith maximum length of 255 characters. The key can be of maximum length of 127 characters, and cannot be empty.", + "launch_stage": "GA" + }, + "deployment_name": { + "launch_stage": "GA" + }, + "expected_workspace_status": { + "description": "A client owned field used to indicate the workspace status that the client expects to be in.\nFor now this is only used to unblock Temporal workflow for GCP least privileged workspace.", + "ref": "provisioning.WorkspaceStatus", + "launch_stage": "PRIVATE_PREVIEW" + }, + "gcp_managed_network_config": { + "ref": "provisioning.GcpManagedNetworkConfig", + "launch_stage": "GA" + }, + "gke_config": { + "ref": "provisioning.GkeConfig", + "launch_stage": "GA" + }, + "location": { + "description": "The Google Cloud region of the workspace data plane in your Google account (for example, `us-east4`).", + "launch_stage": "GA" + }, + "managed_services_customer_managed_key_id": { + "description": "ID of the key configuration for encrypting managed services.", + "launch_stage": "GA" + }, + "network": { + "description": "The network configuration for the workspace.\n\nDEPRECATED. Use `network_id` instead.", + "ref": "provisioning.WorkspaceNetwork", + "deprecated": true, + "launch_stage": "GA" + }, + "network_connectivity_config_id": { + "description": "The object ID of network connectivity config.", + "launch_stage": "GA" + }, + "network_id": { + "description": "If this workspace is BYO VPC, then the network_id will be populated. If this workspace is not\nBYO VPC, then the network_id will be empty.", + "launch_stage": "GA" + }, + "pricing_tier": { + "ref": "provisioning.PricingTier", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "private_access_settings_id": { + "description": "ID of the workspace's private access settings object. Only used for PrivateLink. You must specify this ID if you are using [AWS PrivateLink](https://aws.amazon.com/privatelink/) for either front-end (user-to-workspace connection), back-end (data plane to control plane connection), or both connection types.\n\nBefore configuring PrivateLink, read the [Databricks article about PrivateLink](https://docs.databricks.com/administration-guide/cloud-configurations/aws/privatelink.html).\",", + "launch_stage": "GA" + }, + "storage_configuration_id": { + "description": "ID of the workspace's storage configuration object.", + "launch_stage": "GA" + }, + "storage_customer_managed_key_id": { + "description": "ID of the key configuration for encrypting workspace storage.", + "launch_stage": "GA" + }, + "storage_mode": { + "description": "The storage mode of the workspace.", + "ref": "provisioning.CustomerFacingStorageMode", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "workspace_id": { + "description": "A unique integer ID for the workspace", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "workspace_name": { + "description": "The human-readable name of the workspace.", + "launch_stage": "GA" + }, + "workspace_status": { + "description": "The status of a workspace", + "ref": "provisioning.WorkspaceStatus", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "workspace_status_message": { + "description": "Message describing the current workspace status.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "provisioning.WorkspaceNetwork": { + "description": "The network configuration for workspaces.", + "fields": { + "gcp_common_network_config": { + "description": "The shared network config for GCP workspace.\nThis object has common network configurations that are network attributions of a workspace.\nThis object is input-only.", + "ref": "provisioning.GcpCommonNetworkConfig", + "launch_stage": "GA" + }, + "gcp_managed_network_config": { + "description": "The mutually exclusive network deployment modes. The option decides which network mode the\nworkspace will use.\nThe network config for GCP workspace with Databricks managed network.\nThis object is input-only and will not be provided when listing workspaces.", + "ref": "provisioning.GcpManagedNetworkConfig", + "launch_stage": "GA" + }, + "network_id": { + "description": "The ID of the network object, if the workspace is a BYOVPC workspace.\nThis should apply to workspaces on all clouds in internal services. In accounts-rest-api, user will use\nworkspace.network_id for input and output instead.\nCurrently (2021-06-19) the network ID is only used by GCP.", + "launch_stage": "GA" + } + } + }, + "provisioning.WorkspaceStatus": { + "description": "The different statuses of a workspace. The following represents the current set of valid\ntransitions from status to status:\nNOT_PROVISIONED\n-\u003e PROVISIONING\n-\u003e CANCELLED\nPROVISIONING\n-\u003e RUNNING\n-\u003e FAILED\n-\u003e CANCELLED (note that this transition is disallowed in the MultiWorkspace Project)\nRUNNING\n-\u003e PROVISIONING\n-\u003e BANNED\n-\u003e CANCELLED\nFAILED\n-\u003e PROVISIONING\n-\u003e CANCELLED\nBANNED\n-\u003e RUNNING\n-\u003e CANCELLED\nNote that a transition from any state to itself is also valid.", + "enum": [ + "NOT_PROVISIONED", + "PROVISIONING", + "RUNNING", + "FAILED", + "BANNED", + "CANCELLING" + ], + "enum_launch_stages": { + "BANNED": "GA", + "CANCELLING": "GA", + "FAILED": "GA", + "NOT_PROVISIONED": "GA", + "PROVISIONING": "GA", + "RUNNING": "GA" + } + }, + "qualitymonitorv2.AnomalyDetectionConfig": { + "fields": { + "excluded_table_full_names": { + "description": "List of fully qualified table names to exclude from anomaly detection.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "last_run_id": { + "description": "Run id of the last run of the workflow", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "latest_run_status": { + "description": "The status of the last run of the workflow.", + "ref": "qualitymonitorv2.AnomalyDetectionRunStatus", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "qualitymonitorv2.AnomalyDetectionRunStatus": { + "description": "Status of Anomaly Detection Job Run", + "enum": [ + "ANOMALY_DETECTION_RUN_STATUS_UNKNOWN", + "ANOMALY_DETECTION_RUN_STATUS_RUNNING", + "ANOMALY_DETECTION_RUN_STATUS_CANCELED", + "ANOMALY_DETECTION_RUN_STATUS_PENDING", + "ANOMALY_DETECTION_RUN_STATUS_SUCCESS", + "ANOMALY_DETECTION_RUN_STATUS_FAILED", + "ANOMALY_DETECTION_RUN_STATUS_JOB_DELETED", + "ANOMALY_DETECTION_RUN_STATUS_WORKSPACE_MISMATCH_ERROR" + ], + "enum_launch_stages": { + "ANOMALY_DETECTION_RUN_STATUS_CANCELED": "PUBLIC_BETA", + "ANOMALY_DETECTION_RUN_STATUS_FAILED": "PUBLIC_BETA", + "ANOMALY_DETECTION_RUN_STATUS_JOB_DELETED": "PUBLIC_BETA", + "ANOMALY_DETECTION_RUN_STATUS_PENDING": "PUBLIC_BETA", + "ANOMALY_DETECTION_RUN_STATUS_RUNNING": "PUBLIC_BETA", + "ANOMALY_DETECTION_RUN_STATUS_SUCCESS": "PUBLIC_BETA", + "ANOMALY_DETECTION_RUN_STATUS_UNKNOWN": "PUBLIC_BETA", + "ANOMALY_DETECTION_RUN_STATUS_WORKSPACE_MISMATCH_ERROR": "PUBLIC_BETA" + } + }, + "qualitymonitorv2.CreateQualityMonitorRequest": { + "fields": { + "quality_monitor": { + "ref": "qualitymonitorv2.QualityMonitor", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "qualitymonitorv2.DeleteQualityMonitorRequest": {}, + "qualitymonitorv2.GetQualityMonitorRequest": {}, + "qualitymonitorv2.ListQualityMonitorRequest": { + "fields": { + "page_size": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "qualitymonitorv2.ListQualityMonitorResponse": { + "fields": { + "next_page_token": { + "launch_stage": "PUBLIC_BETA" + }, + "quality_monitors": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "qualitymonitorv2.PercentNullValidityCheck": { + "fields": { + "column_names": { + "description": "List of column names to check for null percentage", + "launch_stage": "PUBLIC_BETA" + }, + "upper_bound": { + "description": "Optional upper bound; we should use auto determined bounds for now", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "qualitymonitorv2.QualityMonitor": { + "fields": { + "anomaly_detection_config": { + "ref": "qualitymonitorv2.AnomalyDetectionConfig", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "object_id": { + "description": "The uuid of the request object. For example, schema id.", + "launch_stage": "PUBLIC_BETA" + }, + "object_type": { + "description": "The type of the monitored object. Can be one of the following: schema.", + "launch_stage": "PUBLIC_BETA" + }, + "validity_check_configurations": { + "description": "Validity check configurations for anomaly detection.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "INPUT_ONLY", + "OPTIONAL" + ] + } + } + }, + "qualitymonitorv2.RangeValidityCheck": { + "fields": { + "column_names": { + "description": "List of column names to check for range validity", + "launch_stage": "PUBLIC_BETA" + }, + "lower_bound": { + "description": "Lower bound for the range", + "launch_stage": "PUBLIC_BETA" + }, + "upper_bound": { + "description": "Upper bound for the range", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "qualitymonitorv2.UniquenessValidityCheck": { + "fields": { + "column_names": { + "description": "List of column names to check for uniqueness", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "qualitymonitorv2.UpdateQualityMonitorRequest": { + "fields": { + "quality_monitor": { + "ref": "qualitymonitorv2.QualityMonitor", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "qualitymonitorv2.ValidityCheckConfiguration": { + "fields": { + "name": { + "description": "Can be set by system. Does not need to be user facing.", + "launch_stage": "PUBLIC_BETA" + }, + "percent_null_validity_check": { + "ref": "qualitymonitorv2.PercentNullValidityCheck", + "launch_stage": "PUBLIC_BETA" + }, + "range_validity_check": { + "ref": "qualitymonitorv2.RangeValidityCheck", + "launch_stage": "PUBLIC_BETA" + }, + "uniqueness_validity_check": { + "ref": "qualitymonitorv2.UniquenessValidityCheck", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "sandbox.Command": { + "description": "A single command execution.", + "fields": { + "args": { + "description": "Arguments passed to the program.", + "launch_stage": "PUBLIC_BETA" + }, + "cmd": { + "description": "The program that was executed.", + "launch_stage": "PUBLIC_BETA" + }, + "command_id": { + "description": "Stable identifier for this command.", + "launch_stage": "PUBLIC_BETA" + }, + "exit_code": { + "description": "Process exit code. Only present when finished is true and the process\nexited normally (not killed by signal or failed to start).", + "launch_stage": "PUBLIC_BETA" + }, + "finished": { + "description": "Whether the command has finished executing.", + "launch_stage": "PUBLIC_BETA" + }, + "pid": { + "description": "PID of the spawned process. Absent if the process failed to start.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "sandbox.ComputeSpec": { + "fields": { + "inactivity_timeout": { + "description": "Idle duration after which the sandbox is automatically terminated.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sandbox.CreateDirectoryRequest": { + "description": "Selects a sandbox directory to create and whether to create its parents.", + "fields": { + "parents": { + "description": "Defaults to true, which also succeeds when the directory already exists.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "path": { + "description": "Absolute UTF-8 path of the directory.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sandbox.CreateDirectoryResponse": { + "description": "Confirms that the requested directory exists." + }, + "sandbox.CreateSandboxRequest": { + "fields": { + "sandbox": { + "description": "The sandbox to create.", + "ref": "sandbox.Sandbox", + "launch_stage": "PUBLIC_BETA" + }, + "sandbox_id": { + "description": "Client-supplied ID that becomes the final path segment of the resource name.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "sandbox.DeletePathRequest": { + "description": "Selects a sandbox path to delete and whether to delete its contents.", + "fields": { + "path": { + "description": "Absolute UTF-8 path of the entry to delete.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "recursive": { + "description": "Required for a non-empty directory.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sandbox.DeletePathResponse": { + "description": "Confirms that the requested path is absent." + }, + "sandbox.DeleteSandboxRequest": {}, + "sandbox.EnvironmentSpec": { + "fields": { + "image_uri": { + "description": "A Unity Catalog container artifact (e.g. `catalog.schema.folder.image:tag`) to run as the\nsandbox environment. When set, this image is used as the environment instead of resolving a\nmanaged image from `environment_version`.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sandbox.ExecuteCommandStatus": { + "description": "Terminal status of a unary command execution.", + "enum": [ + "EXECUTE_COMMAND_STATUS_COMPLETED", + "EXECUTE_COMMAND_STATUS_TIMED_OUT", + "EXECUTE_COMMAND_STATUS_FAILED" + ], + "enum_launch_stages": { + "EXECUTE_COMMAND_STATUS_COMPLETED": "PUBLIC_BETA", + "EXECUTE_COMMAND_STATUS_FAILED": "PUBLIC_BETA", + "EXECUTE_COMMAND_STATUS_TIMED_OUT": "PUBLIC_BETA" + } + }, + "sandbox.ExecuteCommandSyncRequest": { + "description": "Request to run a command in the given sandbox and wait for it to finish.", + "fields": { + "args": { + "description": "Arguments passed to `cmd`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "cmd": { + "description": "Executable or command to run (e.g. `/bin/echo`, `python3`).", + "launch_stage": "PUBLIC_BETA" + }, + "envs": { + "description": "Extra environment variables for the command's process, merged over the\nsandbox's default environment.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "execution_timeout": { + "description": "Maximum time to wait for the command to finish. When it elapses the\ncommand is terminated and the response carries status `TIMED_OUT`. The\nserver applies a default when unset and clamps to an upper bound; negative\nor otherwise invalid durations are rejected with `INVALID_ARGUMENT`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sandbox.ExecuteCommandSyncResponse": { + "description": "Result of a completed unary command execution: captured output, exit code,\nand terminal status.", + "fields": { + "command_id": { + "description": "Daemon-generated identifier for this command execution, for correlation\n(for example in `ListCommands`).", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "exit_code": { + "description": "Process exit code. Unset when the process was terminated by a signal\n(e.g. on `TIMED_OUT`) or never started (`FAILED`) rather than exiting\nnormally.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "status": { + "description": "Terminal status of the command execution. Always set on a successful\nresponse; never `EXECUTE_COMMAND_STATUS_UNSPECIFIED`.", + "ref": "sandbox.ExecuteCommandStatus", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "stderr": { + "description": "Captured standard error, with the same UTF-8 semantics as `stdout`.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "stdout": { + "description": "Captured standard output as UTF-8 text. Invalid UTF-8 bytes are replaced\nwith the Unicode replacement character (U+FFFD).", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "truncated": { + "description": "True when `stdout` / `stderr` were truncated because the captured output\nexceeded the server's per-response size cap. The dropped output is not\nincluded in this response and is not recoverable through this unary API.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "sandbox.GetMetadataRequest": { + "fields": { + "path": { + "description": "Absolute UTF-8 path of the entry to inspect.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sandbox.GetMetadataResponse": { + "description": "Contains metadata for the requested path without following its final symlink.", + "fields": { + "file": { + "ref": "sandbox.SandboxFileInfo", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sandbox.GetSandboxRequest": {}, + "sandbox.ListCommandsRequest": { + "fields": { + "page_size": { + "description": "Maximum number of commands to return. The server may return fewer.\nIf unspecified, the server returns all commands.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Page token returned by a previous ListCommands call. Use this to\nretrieve the next page of results.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sandbox.ListCommandsResponse": { + "description": "Response listing tracked command executions.", + "fields": { + "commands": { + "description": "Commands in this page of results.", + "launch_stage": "PUBLIC_BETA" + }, + "next_page_token": { + "description": "Token to retrieve the next page. Empty when there are no more results.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "sandbox.ListDirectoryContentsRequest": { + "fields": { + "page_size": { + "description": "Zero uses the default of 1000; values above 1000 are clamped to 1000.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "page_token": { + "description": "The token from a prior response. Keep parent and path unchanged between pages.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "path": { + "description": "Absolute UTF-8 path of the directory.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sandbox.ListDirectoryContentsResponse": { + "description": "Contains a page of immediate directory entries and an optional continuation token.\nAn empty token marks the final page. Pages reflect concurrent directory changes.", + "fields": { + "contents": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "next_page_token": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sandbox.ListSandboxesRequest": { + "fields": { + "page_size": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sandbox.ListSandboxesResponse": { + "description": "A list of Sandboxes.", + "fields": { + "next_page_token": { + "launch_stage": "PUBLIC_BETA" + }, + "sandboxes": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "sandbox.RenamePathRequest": { + "description": "Identifies the source and exact destination for a sandbox path rename.", + "fields": { + "destination": { + "description": "Exact absolute UTF-8 destination; it must not already exist.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "source": { + "description": "Absolute UTF-8 path to move.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sandbox.RenamePathResponse": { + "description": "Confirms that the sandbox path was renamed." + }, + "sandbox.Sandbox": { + "description": "A Sandbox resource representing an execution environment.", + "fields": { + "create_time": { + "description": "Output only. The creation time of the sandbox.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "display_name": { + "description": "Human-readable display label for the sandbox. At most 256 characters.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "The sandbox resource name, in the form `sandboxes/{sandbox_id}`. Derived from\n`sandbox_id`; any value supplied in a create or update request body is ignored.", + "launch_stage": "PUBLIC_BETA" + }, + "spec": { + "description": "The desired configuration of the sandbox, supplied by the caller at creation time.", + "ref": "sandbox.SandboxSpec", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "status": { + "description": "The observed runtime state of the sandbox, populated by the server.", + "ref": "sandbox.SandboxStatus", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "update_time": { + "description": "Output only. The last update time of the sandbox metadata and spec.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "sandbox.SandboxFileInfo": { + "description": "Metadata for a sandbox filesystem entry, describing a final symlink itself.", + "fields": { + "file_type": { + "ref": "sandbox.SandboxFileType", + "launch_stage": "PRIVATE_PREVIEW" + }, + "group": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "mode": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "modify_time": { + "description": "Nanosecond precision is preserved on the wire.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "name": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "owner": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "path": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "permissions": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "size": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "symlink_target": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sandbox.SandboxFileType": { + "description": "Type of a sandbox filesystem entry without following its final symlink.", + "enum": [ + "SANDBOX_FILE_TYPE_FILE", + "SANDBOX_FILE_TYPE_DIRECTORY", + "SANDBOX_FILE_TYPE_SYMLINK", + "SANDBOX_FILE_TYPE_OTHER" + ], + "enum_launch_stages": { + "SANDBOX_FILE_TYPE_DIRECTORY": "PRIVATE_PREVIEW", + "SANDBOX_FILE_TYPE_FILE": "PRIVATE_PREVIEW", + "SANDBOX_FILE_TYPE_OTHER": "PRIVATE_PREVIEW", + "SANDBOX_FILE_TYPE_SYMLINK": "PRIVATE_PREVIEW" + } + }, + "sandbox.SandboxSpec": { + "fields": { + "compute": { + "description": "Compute configuration (size, inactivity timeout) requested for the sandbox.", + "ref": "sandbox.ComputeSpec", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "environment": { + "description": "The execution environment to use for the sandbox.", + "ref": "sandbox.EnvironmentSpec", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sandbox.SandboxState": { + "description": "Lifecycle state of a Sandbox resource. STOPPING is the transient state while the\nsandbox is being stopped -- by a Stop request or inactivity auto-termination\n-- and settles to STOPPED once the operation completes.", + "enum": [ + "SANDBOX_STATE_PENDING", + "SANDBOX_STATE_RUNNING", + "SANDBOX_STATE_STOPPED", + "SANDBOX_STATE_STOPPING" + ], + "enum_launch_stages": { + "SANDBOX_STATE_PENDING": "PUBLIC_BETA", + "SANDBOX_STATE_RUNNING": "PUBLIC_BETA", + "SANDBOX_STATE_STOPPED": "PUBLIC_BETA", + "SANDBOX_STATE_STOPPING": "PUBLIC_BETA" + } + }, + "sandbox.SandboxStatus": { + "fields": { + "state": { + "description": "Lifecycle state of the sandbox.", + "ref": "sandbox.SandboxState", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "sandbox.StartSandboxRequest": { + "description": "A request to start a Sandbox." + }, + "sandbox.StopSandboxRequest": { + "description": "A request to stop a Sandbox." + }, + "sandbox.UpdateSandboxRequest": { + "fields": { + "sandbox": { + "description": "The Sandbox resource carrying new field values. Only fields named in\n`update_mask` are read; unmasked fields are ignored.", + "ref": "sandbox.Sandbox", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Field paths to update. Must be a non-empty subset of:\n- display_name\n- spec.compute.inactivity_timeout\nAny other path returns INVALID_PARAMETER_VALUE.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "serving.Ai21LabsConfig": { + "fields": { + "ai21labs_api_key": { + "description": "The Databricks secret key reference for an AI21 Labs API key. If you\nprefer to paste your API key directly, see `ai21labs_api_key_plaintext`.\nYou must provide an API key using one of the following fields:\n`ai21labs_api_key` or `ai21labs_api_key_plaintext`.", + "launch_stage": "GA" + }, + "ai21labs_api_key_plaintext": { + "description": "An AI21 Labs API key provided as a plaintext string. If you prefer to\nreference your key using Databricks Secrets, see `ai21labs_api_key`. You\nmust provide an API key using one of the following fields:\n`ai21labs_api_key` or `ai21labs_api_key_plaintext`.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + } + } + }, + "serving.AiGatewayConfig": { + "fields": { + "fallback_config": { + "description": "Configuration for traffic fallback which auto fallbacks to other served entities if the request to a served\nentity fails with certain error codes, to increase availability.", + "ref": "serving.FallbackConfig", + "launch_stage": "GA" + }, + "guardrails": { + "description": "Configuration for AI Guardrails to prevent unwanted data and unsafe data in requests and responses.", + "ref": "serving.AiGatewayGuardrails", + "launch_stage": "PUBLIC_PREVIEW" + }, + "inference_table_config": { + "description": "Configuration for payload logging using inference tables.\nUse these tables to monitor and audit data being sent to and received from model APIs and to improve model quality.", + "ref": "serving.AiGatewayInferenceTableConfig", + "launch_stage": "GA" + }, + "rate_limits": { + "description": "Configuration for rate limits which can be set to limit endpoint traffic.", + "launch_stage": "GA" + }, + "usage_tracking_config": { + "description": "Configuration to enable usage tracking using system tables.\nThese tables allow you to monitor operational usage on endpoints and their associated costs.", + "ref": "serving.AiGatewayUsageTrackingConfig", + "launch_stage": "GA" + } + } + }, + "serving.AiGatewayGuardrailParameters": { + "fields": { + "invalid_keywords": { + "description": "List of invalid keywords.\nAI guardrail uses keyword or string matching to decide if the keyword exists in the request or response content.", + "deprecated": true, + "launch_stage": "PUBLIC_PREVIEW" + }, + "pii": { + "description": "Configuration for guardrail PII filter.", + "ref": "serving.AiGatewayGuardrailPiiBehavior", + "launch_stage": "PUBLIC_PREVIEW" + }, + "safety": { + "description": "Indicates whether the safety filter is enabled.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "valid_topics": { + "description": "The list of allowed topics.\nGiven a chat request, this guardrail flags the request if its topic is not in the allowed topics.", + "deprecated": true, + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.AiGatewayGuardrailPiiBehavior": { + "fields": { + "behavior": { + "description": "Configuration for input guardrail filters.", + "ref": "serving.AiGatewayGuardrailPiiBehaviorBehavior", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.AiGatewayGuardrailPiiBehaviorBehavior": { + "enum": [ + "NONE", + "BLOCK", + "MASK" + ], + "enum_launch_stages": { + "BLOCK": "PUBLIC_PREVIEW", + "MASK": "PUBLIC_PREVIEW", + "NONE": "PUBLIC_PREVIEW" + } + }, + "serving.AiGatewayGuardrails": { + "fields": { + "input": { + "description": "Configuration for input guardrail filters.", + "ref": "serving.AiGatewayGuardrailParameters", + "launch_stage": "PUBLIC_PREVIEW" + }, + "output": { + "description": "Configuration for output guardrail filters.", + "ref": "serving.AiGatewayGuardrailParameters", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.AiGatewayInferenceTableConfig": { + "fields": { + "catalog_name": { + "description": "The name of the catalog in Unity Catalog. Required when enabling inference tables.\nNOTE: On update, you have to disable inference table first in order to change the catalog name.", + "launch_stage": "GA" + }, + "enabled": { + "description": "Indicates whether the inference table is enabled.", + "launch_stage": "GA" + }, + "schema_name": { + "description": "The name of the schema in Unity Catalog. Required when enabling inference tables.\nNOTE: On update, you have to disable inference table first in order to change the schema name.", + "launch_stage": "GA" + }, + "table_name_prefix": { + "description": "The prefix of the table in Unity Catalog.\nNOTE: On update, you have to disable inference table first in order to change the prefix name.", + "launch_stage": "GA" + } + } + }, + "serving.AiGatewayRateLimit": { + "fields": { + "calls": { + "description": "Used to specify how many calls are allowed for a key within the renewal_period.", + "launch_stage": "GA" + }, + "key": { + "description": "Key field for a rate limit. Currently, 'user', 'user_group, 'service_principal', and 'endpoint' are supported,\nwith 'endpoint' being the default if not specified.", + "ref": "serving.AiGatewayRateLimitKey", + "launch_stage": "GA" + }, + "principal": { + "description": "Principal field for a user, user group, or service principal to apply rate limiting to. Accepts a user email, group name, or service principal application ID.", + "launch_stage": "GA" + }, + "renewal_period": { + "description": "Renewal period field for a rate limit. Currently, only 'minute' is supported.", + "ref": "serving.AiGatewayRateLimitRenewalPeriod", + "launch_stage": "GA" + }, + "tokens": { + "description": "Used to specify how many tokens are allowed for a key within the renewal_period.", + "launch_stage": "GA" + } + } + }, + "serving.AiGatewayRateLimitKey": { + "enum": [ + "user", + "endpoint", + "user_group", + "service_principal" + ], + "enum_launch_stages": { + "endpoint": "PUBLIC_PREVIEW", + "service_principal": "PUBLIC_PREVIEW", + "user": "PUBLIC_PREVIEW", + "user_group": "PUBLIC_PREVIEW" + } + }, + "serving.AiGatewayRateLimitRenewalPeriod": { + "enum": [ + "minute" + ], + "enum_launch_stages": { + "minute": "PUBLIC_PREVIEW" + } + }, + "serving.AiGatewayUsageTrackingConfig": { + "fields": { + "enabled": { + "description": "Whether to enable usage tracking.", + "launch_stage": "GA" + } + } + }, + "serving.AmazonBedrockConfig": { + "fields": { + "aws_access_key_id": { + "description": "The Databricks secret key reference for an AWS access key ID with\npermissions to interact with Bedrock services. If you prefer to paste\nyour API key directly, see `aws_access_key_id_plaintext`. You must provide an API\nkey using one of the following fields: `aws_access_key_id` or\n`aws_access_key_id_plaintext`.", + "launch_stage": "GA" + }, + "aws_access_key_id_plaintext": { + "description": "An AWS access key ID with permissions to interact with Bedrock services\nprovided as a plaintext string. If you prefer to reference your key using\nDatabricks Secrets, see `aws_access_key_id`. You must provide an API key\nusing one of the following fields: `aws_access_key_id` or\n`aws_access_key_id_plaintext`.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "aws_region": { + "description": "The AWS region to use. Bedrock has to be enabled there.", + "launch_stage": "GA" + }, + "aws_secret_access_key": { + "description": "The Databricks secret key reference for an AWS secret access key paired\nwith the access key ID, with permissions to interact with Bedrock\nservices. If you prefer to paste your API key directly, see\n`aws_secret_access_key_plaintext`. You must provide an API key using one\nof the following fields: `aws_secret_access_key` or\n`aws_secret_access_key_plaintext`.", + "launch_stage": "GA" + }, + "aws_secret_access_key_plaintext": { + "description": "An AWS secret access key paired with the access key ID, with permissions\nto interact with Bedrock services provided as a plaintext string. If you\nprefer to reference your key using Databricks Secrets, see\n`aws_secret_access_key`. You must provide an API key using one of the\nfollowing fields: `aws_secret_access_key` or\n`aws_secret_access_key_plaintext`.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "bedrock_provider": { + "description": "The underlying provider in Amazon Bedrock. Supported values (case\ninsensitive) include: Anthropic, Cohere, AI21Labs, Amazon.", + "ref": "serving.AmazonBedrockConfigBedrockProvider", + "launch_stage": "GA" + }, + "instance_profile_arn": { + "description": "ARN of the instance profile that the external model will use to access AWS resources.\nYou must authenticate using an instance profile or access keys.\nIf you prefer to authenticate using access keys, see `aws_access_key_id`,\n`aws_access_key_id_plaintext`, `aws_secret_access_key` and `aws_secret_access_key_plaintext`.", + "launch_stage": "GA" + }, + "uc_service_credential_name": { + "description": "The name of the Unity Catalog service credential that the external model uses to access AWS\nresources.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.AmazonBedrockConfigBedrockProvider": { + "enum": [ + "anthropic", + "cohere", + "ai21labs", + "amazon" + ], + "enum_launch_stages": { + "ai21labs": "PUBLIC_PREVIEW", + "amazon": "PUBLIC_PREVIEW", + "anthropic": "PUBLIC_PREVIEW", + "cohere": "PUBLIC_PREVIEW" + } + }, + "serving.AnthropicConfig": { + "fields": { + "anthropic_api_key": { + "description": "The Databricks secret key reference for an Anthropic API key. If you\nprefer to paste your API key directly, see `anthropic_api_key_plaintext`.\nYou must provide an API key using one of the following fields:\n`anthropic_api_key` or `anthropic_api_key_plaintext`.", + "launch_stage": "GA" + }, + "anthropic_api_key_plaintext": { + "description": "The Anthropic API key provided as a plaintext string. If you prefer to\nreference your key using Databricks Secrets, see `anthropic_api_key`. You\nmust provide an API key using one of the following fields:\n`anthropic_api_key` or `anthropic_api_key_plaintext`.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + } + } + }, + "serving.ApiKeyAuth": { + "fields": { + "key": { + "description": "The name of the API key parameter used for authentication.", + "launch_stage": "GA" + }, + "value": { + "description": "The Databricks secret key reference for an API Key.\nIf you prefer to paste your token directly, see `value_plaintext`.", + "launch_stage": "GA" + }, + "value_plaintext": { + "description": "The API Key provided as a plaintext string. If you prefer to reference your\ntoken using Databricks Secrets, see `value`.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + } + } + }, + "serving.AutoCaptureConfigInput": { + "description": "Deprecated: legacy inference table configuration. Please use AI Gateway inference tables instead.\nSee https://docs.databricks.com/aws/en/ai-gateway/inference-tables.", + "fields": { + "catalog_name": { + "description": "The name of the catalog in Unity Catalog. NOTE: On update, you cannot change the catalog name if the inference table is already enabled.", + "launch_stage": "GA" + }, + "enabled": { + "description": "Indicates whether the inference table is enabled.", + "launch_stage": "GA" + }, + "schema_name": { + "description": "The name of the schema in Unity Catalog. NOTE: On update, you cannot change the schema name if the inference table is already enabled.", + "launch_stage": "GA" + }, + "table_name_prefix": { + "description": "The prefix of the table in Unity Catalog. NOTE: On update, you cannot change the prefix name if the inference table is already enabled.", + "launch_stage": "GA" + } + } + }, + "serving.AutoCaptureConfigOutput": { + "description": "Deprecated: legacy inference table configuration. Please use AI Gateway inference tables instead.\nSee https://docs.databricks.com/aws/en/ai-gateway/inference-tables.", + "fields": { + "catalog_name": { + "description": "The name of the catalog in Unity Catalog. NOTE: On update, you cannot change the catalog name if the inference table is already enabled.", + "launch_stage": "GA" + }, + "enabled": { + "description": "Indicates whether the inference table is enabled.", + "launch_stage": "GA" + }, + "schema_name": { + "description": "The name of the schema in Unity Catalog. NOTE: On update, you cannot change the schema name if the inference table is already enabled.", + "launch_stage": "GA" + }, + "state": { + "ref": "serving.AutoCaptureState", + "launch_stage": "GA" + }, + "table_name_prefix": { + "description": "The prefix of the table in Unity Catalog. NOTE: On update, you cannot change the prefix name if the inference table is already enabled.", + "launch_stage": "GA" + } + } + }, + "serving.AutoCaptureState": { + "fields": { + "payload_table": { + "ref": "serving.PayloadTable", + "launch_stage": "GA" + } + } + }, + "serving.BearerTokenAuth": { + "fields": { + "token": { + "description": "The Databricks secret key reference for a token.\nIf you prefer to paste your token directly, see `token_plaintext`.", + "launch_stage": "GA" + }, + "token_plaintext": { + "description": "The token provided as a plaintext string. If you prefer to reference your\ntoken using Databricks Secrets, see `token`.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + } + } + }, + "serving.BuildLogsRequest": {}, + "serving.BuildLogsResponse": { + "fields": { + "logs": { + "description": "The logs associated with building the served entity's environment.", + "launch_stage": "GA" + } + } + }, + "serving.ChatMessage": { + "fields": { + "content": { + "description": "The content of the message.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "role": { + "description": "The role of the message. One of [system, user, assistant].", + "ref": "serving.ChatMessageRole", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.ChatMessageRole": { + "description": "The role of the message. One of [system, user, assistant].", + "enum": [ + "system", + "user", + "assistant" + ], + "enum_launch_stages": { + "assistant": "PUBLIC_PREVIEW", + "system": "PUBLIC_PREVIEW", + "user": "PUBLIC_PREVIEW" + } + }, + "serving.CohereConfig": { + "fields": { + "cohere_api_base": { + "description": "This is an optional field to provide a customized base URL for the Cohere\nAPI. If left unspecified, the standard Cohere base URL is used.", + "launch_stage": "GA" + }, + "cohere_api_key": { + "description": "The Databricks secret key reference for a Cohere API key. If you prefer\nto paste your API key directly, see `cohere_api_key_plaintext`. You must\nprovide an API key using one of the following fields: `cohere_api_key` or\n`cohere_api_key_plaintext`.", + "launch_stage": "GA" + }, + "cohere_api_key_plaintext": { + "description": "The Cohere API key provided as a plaintext string. If you prefer to\nreference your key using Databricks Secrets, see `cohere_api_key`. You\nmust provide an API key using one of the following fields:\n`cohere_api_key` or `cohere_api_key_plaintext`.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + } + } + }, + "serving.CreatePtEndpointRequest": { + "fields": { + "ai_gateway": { + "description": "The AI Gateway configuration for the serving endpoint.", + "ref": "serving.AiGatewayConfig", + "launch_stage": "PUBLIC_PREVIEW" + }, + "budget_policy_id": { + "description": "The budget policy associated with the endpoint.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "config": { + "description": "The core config of the serving endpoint.", + "ref": "serving.PtEndpointCoreConfig", + "launch_stage": "PUBLIC_PREVIEW" + }, + "email_notifications": { + "description": "Email notification settings.", + "ref": "serving.EmailNotifications", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "The name of the serving endpoint. This field is required and must be unique across a Databricks workspace.\nAn endpoint name can consist of alphanumeric characters, dashes, and underscores.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "tags": { + "description": "Tags to be attached to the serving endpoint and automatically propagated to billing logs.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.CreateServingEndpoint": { + "fields": { + "ai_gateway": { + "description": "The AI Gateway configuration for the serving endpoint. NOTE: External model, provisioned throughput, and pay-per-token endpoints are fully supported; agent endpoints currently only support inference tables.", + "ref": "serving.AiGatewayConfig", + "launch_stage": "GA" + }, + "budget_policy_id": { + "description": "The budget policy to be applied to the serving endpoint.", + "launch_stage": "GA" + }, + "config": { + "description": "The core config of the serving endpoint.", + "ref": "serving.EndpointCoreConfigInput", + "launch_stage": "GA" + }, + "description": { + "launch_stage": "GA" + }, + "email_notifications": { + "description": "Email notification settings.", + "ref": "serving.EmailNotifications", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the serving endpoint. This field is required and must be unique across a Databricks workspace.\nAn endpoint name can consist of alphanumeric characters, dashes, and underscores.", + "launch_stage": "GA" + }, + "rate_limits": { + "description": "Rate limits to be applied to the serving endpoint. NOTE: this field is deprecated, please use AI Gateway to manage rate limits.", + "deprecated": true, + "launch_stage": "GA" + }, + "route_optimized": { + "description": "Enable route optimization for the serving endpoint.", + "launch_stage": "GA" + }, + "tags": { + "description": "Tags to be attached to the serving endpoint and automatically propagated to billing logs.", + "launch_stage": "GA" + }, + "telemetry_config": { + "description": "Configuration for persisting endpoint telemetry (logs, traces, and metrics) to Unity Catalog tables.", + "ref": "serving.TelemetryConfig", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.CustomProviderConfig": { + "description": "Configs needed to create a custom provider model route.", + "fields": { + "api_key_auth": { + "description": "This is a field to provide API key authentication for the custom provider API.\nYou can only specify one authentication method.", + "ref": "serving.ApiKeyAuth", + "launch_stage": "GA" + }, + "bearer_token_auth": { + "description": "This is a field to provide bearer token authentication for the custom provider API.\nYou can only specify one authentication method.", + "ref": "serving.BearerTokenAuth", + "launch_stage": "GA" + }, + "custom_provider_url": { + "description": "This is a field to provide the URL of the custom provider API.", + "launch_stage": "GA" + } + } + }, + "serving.DataPlaneInfo": { + "description": "Details necessary to query this object's API through the DataPlane APIs.", + "fields": { + "authorization_details": { + "description": "Authorization details as a string.", + "launch_stage": "GA" + }, + "endpoint_url": { + "description": "The URL of the endpoint for this operation in the dataplane.", + "launch_stage": "GA" + } + } + }, + "serving.DatabricksModelServingConfig": { + "fields": { + "databricks_api_token": { + "description": "The Databricks secret key reference for a Databricks API token that\ncorresponds to a user or service principal with Can Query access to the\nmodel serving endpoint pointed to by this external model. If you prefer\nto paste your API key directly, see `databricks_api_token_plaintext`. You\nmust provide an API key using one of the following fields:\n`databricks_api_token` or `databricks_api_token_plaintext`.", + "launch_stage": "GA" + }, + "databricks_api_token_plaintext": { + "description": "The Databricks API token that corresponds to a user or service principal\nwith Can Query access to the model serving endpoint pointed to by this\nexternal model provided as a plaintext string. If you prefer to reference\nyour key using Databricks Secrets, see `databricks_api_token`. You must\nprovide an API key using one of the following fields:\n`databricks_api_token` or `databricks_api_token_plaintext`.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "databricks_workspace_url": { + "description": "The URL of the Databricks workspace containing the model serving endpoint\npointed to by this external model.", + "launch_stage": "GA" + } + } + }, + "serving.DataframeSplitInput": { + "fields": { + "columns": { + "description": "Columns array for the dataframe", + "launch_stage": "GA" + }, + "data": { + "description": "Data array for the dataframe", + "launch_stage": "GA" + }, + "index": { + "description": "Index array for the dataframe", + "launch_stage": "GA" + } + } + }, + "serving.DeleteServingEndpointRequest": {}, + "serving.EmailNotifications": { + "fields": { + "on_update_failure": { + "description": "A list of email addresses to be notified when an endpoint fails to update its configuration or state.", + "launch_stage": "GA" + }, + "on_update_success": { + "description": "A list of email addresses to be notified when an endpoint successfully updates its configuration or state.", + "launch_stage": "GA" + } + } + }, + "serving.EmbeddingsV1ResponseEmbeddingElement": { + "fields": { + "embedding": { + "description": "The embedding vector", + "launch_stage": "PUBLIC_PREVIEW" + }, + "index": { + "description": "The index of the embedding in the response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "object": { + "description": "This will always be 'embedding'.", + "ref": "serving.EmbeddingsV1ResponseEmbeddingElementObject", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.EmbeddingsV1ResponseEmbeddingElementObject": { + "description": "This will always be 'embedding'.", + "enum": [ + "embedding" + ], + "enum_launch_stages": { + "embedding": "PUBLIC_PREVIEW" + } + }, + "serving.EndpointCoreConfigInput": { + "fields": { + "auto_capture_config": { + "description": "Configuration for legacy Inference Tables which automatically log requests and responses to Unity\nCatalog.\nDeprecated: please use AI Gateway inference tables instead. See\nhttps://docs.databricks.com/aws/en/ai-gateway/inference-tables.", + "ref": "serving.AutoCaptureConfigInput", + "deprecated": true, + "launch_stage": "GA" + }, + "served_entities": { + "description": "The list of served entities under the serving endpoint config.", + "launch_stage": "GA" + }, + "served_models": { + "description": "(Deprecated, use served_entities instead) The list of served models under the serving endpoint config.", + "launch_stage": "GA" + }, + "traffic_config": { + "description": "The traffic configuration associated with the serving endpoint config.", + "ref": "serving.TrafficConfig", + "launch_stage": "GA" + } + } + }, + "serving.EndpointCoreConfigOutput": { + "fields": { + "auto_capture_config": { + "description": "Configuration for legacy Inference Tables which automatically log requests and responses to Unity\nCatalog.\nDeprecated: please use AI Gateway inference tables instead. See\nhttps://docs.databricks.com/aws/en/ai-gateway/inference-tables.", + "ref": "serving.AutoCaptureConfigOutput", + "deprecated": true, + "launch_stage": "GA" + }, + "config_version": { + "description": "The config version that the serving endpoint is currently serving.", + "launch_stage": "GA" + }, + "served_entities": { + "description": "The list of served entities under the serving endpoint config.", + "launch_stage": "GA" + }, + "served_models": { + "description": "(Deprecated, use served_entities instead) The list of served models under the serving endpoint config.", + "launch_stage": "GA" + }, + "traffic_config": { + "description": "The traffic configuration associated with the serving endpoint config.", + "ref": "serving.TrafficConfig", + "launch_stage": "GA" + } + } + }, + "serving.EndpointCoreConfigSummary": { + "fields": { + "served_entities": { + "description": "The list of served entities under the serving endpoint config.", + "launch_stage": "GA" + }, + "served_models": { + "description": "(Deprecated, use served_entities instead) The list of served models under the serving endpoint config.", + "launch_stage": "GA" + } + } + }, + "serving.EndpointPendingConfig": { + "fields": { + "auto_capture_config": { + "description": "Configuration for legacy Inference Tables which automatically log requests and responses to Unity\nCatalog.\nDeprecated: please use AI Gateway inference tables instead. See\nhttps://docs.databricks.com/aws/en/ai-gateway/inference-tables.", + "ref": "serving.AutoCaptureConfigOutput", + "deprecated": true, + "launch_stage": "GA" + }, + "config_version": { + "description": "The config version that the serving endpoint is currently serving.", + "launch_stage": "GA" + }, + "served_entities": { + "description": "The list of served entities belonging to the last issued update to the serving endpoint.", + "launch_stage": "GA" + }, + "served_models": { + "description": "(Deprecated, use served_entities instead) The list of served models belonging to the last issued update to the serving endpoint.", + "launch_stage": "GA" + }, + "start_time": { + "description": "The timestamp when the update to the pending config started.", + "launch_stage": "GA" + }, + "traffic_config": { + "description": "The traffic config defining how invocations to the serving endpoint should be routed.", + "ref": "serving.TrafficConfig", + "launch_stage": "GA" + } + } + }, + "serving.EndpointState": { + "fields": { + "config_update": { + "description": "The state of an endpoint's config update. This informs the user if the pending_config is in progress, if the\nupdate failed, or if there is no update in progress. Note that if the endpoint's config_update state value is\nIN_PROGRESS, another update can not be made until the update completes or fails.", + "ref": "serving.EndpointStateConfigUpdate", + "launch_stage": "GA" + }, + "ready": { + "description": "The state of an endpoint, indicating whether or not the endpoint is queryable. An endpoint is READY if all of\nthe served entities in its active configuration are ready. If any of the actively served entities are in a\nnon-ready state, the endpoint state will be NOT_READY.", + "ref": "serving.EndpointStateReady", + "launch_stage": "GA" + } + } + }, + "serving.EndpointStateConfigUpdate": { + "enum": [ + "NOT_UPDATING", + "IN_PROGRESS", + "UPDATE_FAILED", + "UPDATE_CANCELED" + ], + "enum_launch_stages": { + "IN_PROGRESS": "GA", + "NOT_UPDATING": "GA", + "UPDATE_CANCELED": "GA", + "UPDATE_FAILED": "GA" + } + }, + "serving.EndpointStateReady": { + "enum": [ + "READY", + "NOT_READY" + ], + "enum_launch_stages": { + "NOT_READY": "GA", + "READY": "GA" + } + }, + "serving.EndpointTag": { + "fields": { + "key": { + "description": "Key field for a serving endpoint tag.", + "launch_stage": "GA" + }, + "value": { + "description": "Optional value field for a serving endpoint tag.", + "launch_stage": "GA" + } + } + }, + "serving.EndpointTags": { + "fields": { + "tags": { + "launch_stage": "GA" + } + } + }, + "serving.ExportMetricsRequest": {}, + "serving.ExportMetricsResponse": { + "fields": { + "contents": { + "launch_stage": "GA" + } + } + }, + "serving.ExternalFunctionRequest": { + "description": "Simple Proto message for testing", + "fields": { + "connection_name": { + "description": "The connection name to use. This is required to identify the external connection.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "headers": { + "description": "Additional headers for the request. If not provided, only auth headers from connections would be passed.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "json": { + "description": "The JSON payload to send in the request body.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "method": { + "description": "The HTTP method to use (e.g., 'GET', 'POST').", + "ref": "serving.ExternalFunctionRequestHttpMethod", + "launch_stage": "PRIVATE_PREVIEW" + }, + "params": { + "description": "Query parameters for the request.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "path": { + "description": "The relative path for the API endpoint. This is required.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "sub_domain": { + "description": "Optional subdomain to prepend to the connection URL's host. If provided, this will be\nadded as a prefix to the connection URL's host. For example, if the connection URL is\n`https://api.example.com/v1` and `sub_domain` is `\"custom\"`, the resulting URL will be\n`https://custom.api.example.com/v1`.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "serving.ExternalFunctionRequestHttpMethod": { + "enum": [ + "GET", + "POST", + "PUT", + "DELETE", + "PATCH" + ], + "enum_launch_stages": { + "DELETE": "PRIVATE_PREVIEW", + "GET": "PRIVATE_PREVIEW", + "PATCH": "PRIVATE_PREVIEW", + "POST": "PRIVATE_PREVIEW", + "PUT": "PRIVATE_PREVIEW" + } + }, + "serving.ExternalModel": { + "fields": { + "ai21labs_config": { + "description": "AI21Labs Config. Only required if the provider is 'ai21labs'.", + "ref": "serving.Ai21LabsConfig", + "launch_stage": "GA" + }, + "amazon_bedrock_config": { + "description": "Amazon Bedrock Config. Only required if the provider is 'amazon-bedrock'.", + "ref": "serving.AmazonBedrockConfig", + "launch_stage": "GA" + }, + "anthropic_config": { + "description": "Anthropic Config. Only required if the provider is 'anthropic'.", + "ref": "serving.AnthropicConfig", + "launch_stage": "GA" + }, + "cohere_config": { + "description": "Cohere Config. Only required if the provider is 'cohere'.", + "ref": "serving.CohereConfig", + "launch_stage": "GA" + }, + "custom_provider_config": { + "description": "Custom Provider Config. Only required if the provider is 'custom'.", + "ref": "serving.CustomProviderConfig", + "launch_stage": "GA" + }, + "databricks_model_serving_config": { + "description": "Databricks Model Serving Config. Only required if the provider is 'databricks-model-serving'.", + "ref": "serving.DatabricksModelServingConfig", + "launch_stage": "GA" + }, + "google_cloud_vertex_ai_config": { + "description": "Google Cloud Vertex AI Config. Only required if the provider is 'google-cloud-vertex-ai'.", + "ref": "serving.GoogleCloudVertexAiConfig", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the external model.", + "launch_stage": "GA" + }, + "openai_config": { + "description": "OpenAI Config. Only required if the provider is 'openai'.", + "ref": "serving.OpenAiConfig", + "launch_stage": "GA" + }, + "palm_config": { + "description": "PaLM Config. Only required if the provider is 'palm'.", + "ref": "serving.PaLmConfig", + "launch_stage": "GA" + }, + "provider": { + "description": "The name of the provider for the external model. Currently, the supported providers are 'ai21labs', 'anthropic', 'amazon-bedrock', 'cohere', 'databricks-model-serving', 'google-cloud-vertex-ai', 'openai', 'palm', and 'custom'.", + "ref": "serving.ExternalModelProvider", + "launch_stage": "GA" + }, + "task": { + "description": "The task type of the external model.", + "launch_stage": "GA" + } + } + }, + "serving.ExternalModelProvider": { + "enum": [ + "ai21labs", + "anthropic", + "amazon-bedrock", + "cohere", + "databricks-model-serving", + "google-cloud-vertex-ai", + "openai", + "palm", + "custom" + ], + "enum_launch_stages": { + "ai21labs": "PUBLIC_PREVIEW", + "amazon-bedrock": "PUBLIC_PREVIEW", + "anthropic": "PUBLIC_PREVIEW", + "cohere": "PUBLIC_PREVIEW", + "custom": "PUBLIC_PREVIEW", + "databricks-model-serving": "PUBLIC_PREVIEW", + "google-cloud-vertex-ai": "PUBLIC_PREVIEW", + "openai": "PUBLIC_PREVIEW", + "palm": "PUBLIC_PREVIEW" + } + }, + "serving.ExternalModelUsageElement": { + "fields": { + "completion_tokens": { + "description": "The number of tokens in the chat/completions response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "prompt_tokens": { + "description": "The number of tokens in the prompt.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "total_tokens": { + "description": "The total number of tokens in the prompt and response.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.FallbackConfig": { + "fields": { + "enabled": { + "description": "Whether to enable traffic fallback. When a served entity in the serving endpoint returns specific error\ncodes (e.g. 500), the request will automatically be round-robin attempted with other served entities in the same\nendpoint, following the order of served entity list, until a successful response is returned.\nIf all attempts fail, return the last response with the error code.", + "launch_stage": "GA" + } + } + }, + "serving.FoundationModel": { + "description": "All fields are not sensitive as they are hard-coded in the system and made available to customers.", + "fields": { + "description": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "display_name": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "docs": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.GetOpenApiRequest": {}, + "serving.GetOpenApiResponse": { + "fields": { + "contents": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.GetServingEndpointPermissionLevelsRequest": {}, + "serving.GetServingEndpointPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "GA" + } + } + }, + "serving.GetServingEndpointPermissionsRequest": {}, + "serving.GetServingEndpointRequest": {}, + "serving.GoogleCloudVertexAiConfig": { + "fields": { + "private_key": { + "description": "The Databricks secret key reference for a private key for the service\naccount which has access to the Google Cloud Vertex AI Service. See [Best\npractices for managing service account keys]. If you prefer to paste your\nAPI key directly, see `private_key_plaintext`. You must provide an API\nkey using one of the following fields: `private_key` or\n`private_key_plaintext`\n\n[Best practices for managing service account keys]: https://cloud.google.com/iam/docs/best-practices-for-managing-service-account-keys", + "launch_stage": "GA" + }, + "private_key_plaintext": { + "description": "The private key for the service account which has access to the Google\nCloud Vertex AI Service provided as a plaintext secret. See [Best\npractices for managing service account keys]. If you prefer to reference\nyour key using Databricks Secrets, see `private_key`. You must provide an\nAPI key using one of the following fields: `private_key` or\n`private_key_plaintext`.\n\n[Best practices for managing service account keys]: https://cloud.google.com/iam/docs/best-practices-for-managing-service-account-keys", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "project_id": { + "description": "This is the Google Cloud project id that the service account is\nassociated with.", + "launch_stage": "GA" + }, + "region": { + "description": "This is the region for the Google Cloud Vertex AI Service. See [supported\nregions] for more details. Some models are only available in specific\nregions.\n\n[supported regions]: https://cloud.google.com/vertex-ai/docs/general/locations", + "launch_stage": "GA" + } + } + }, + "serving.HttpRequestResponse": { + "fields": { + "contents": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "serving.ListEndpointsResponse": { + "fields": { + "endpoints": { + "description": "The list of endpoints.", + "launch_stage": "GA" + } + } + }, + "serving.ListServingEndpointsRequest": {}, + "serving.LogsRequest": {}, + "serving.ModelDataPlaneInfo": { + "description": "A representation of all DataPlaneInfo for operations that can be done on a model through Data Plane APIs.", + "fields": { + "query_info": { + "description": "Information required to query DataPlane API 'query' endpoint.", + "ref": "serving.DataPlaneInfo", + "launch_stage": "GA" + } + } + }, + "serving.OpenAiConfig": { + "description": "Configs needed to create an OpenAI model route.", + "fields": { + "microsoft_entra_client_id": { + "description": "This field is only required for Azure AD OpenAI and is the Microsoft\nEntra Client ID.", + "launch_stage": "GA" + }, + "microsoft_entra_client_secret": { + "description": "The Databricks secret key reference for a client secret used for\nMicrosoft Entra ID authentication. If you prefer to paste your client\nsecret directly, see `microsoft_entra_client_secret_plaintext`. You must\nprovide an API key using one of the following fields:\n`microsoft_entra_client_secret` or\n`microsoft_entra_client_secret_plaintext`.", + "launch_stage": "GA" + }, + "microsoft_entra_client_secret_plaintext": { + "description": "The client secret used for Microsoft Entra ID authentication provided as\na plaintext string. If you prefer to reference your key using Databricks\nSecrets, see `microsoft_entra_client_secret`. You must provide an API key\nusing one of the following fields: `microsoft_entra_client_secret` or\n`microsoft_entra_client_secret_plaintext`.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "microsoft_entra_tenant_id": { + "description": "This field is only required for Azure AD OpenAI and is the Microsoft\nEntra Tenant ID.", + "launch_stage": "GA" + }, + "openai_api_base": { + "description": "This is a field to provide a customized base URl for the OpenAI API. For\nAzure OpenAI, this field is required, and is the base URL for the Azure\nOpenAI API service provided by Azure. For other OpenAI API types, this\nfield is optional, and if left unspecified, the standard OpenAI base URL\nis used.", + "launch_stage": "GA" + }, + "openai_api_key": { + "description": "The Databricks secret key reference for an OpenAI API key using the\nOpenAI or Azure service. If you prefer to paste your API key directly,\nsee `openai_api_key_plaintext`. You must provide an API key using one of\nthe following fields: `openai_api_key` or `openai_api_key_plaintext`.", + "launch_stage": "GA" + }, + "openai_api_key_plaintext": { + "description": "The OpenAI API key using the OpenAI or Azure service provided as a\nplaintext string. If you prefer to reference your key using Databricks\nSecrets, see `openai_api_key`. You must provide an API key using one of\nthe following fields: `openai_api_key` or `openai_api_key_plaintext`.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "openai_api_type": { + "description": "This is an optional field to specify the type of OpenAI API to use. For\nAzure OpenAI, this field is required, and adjust this parameter to\nrepresent the preferred security access validation protocol. For access\ntoken validation, use azure. For authentication using Azure Active\nDirectory (Azure AD) use, azuread.", + "launch_stage": "GA" + }, + "openai_api_version": { + "description": "This is an optional field to specify the OpenAI API version. For Azure\nOpenAI, this field is required, and is the version of the Azure OpenAI\nservice to utilize, specified by a date.", + "launch_stage": "GA" + }, + "openai_deployment_name": { + "description": "This field is only required for Azure OpenAI and is the name of the\ndeployment resource for the Azure OpenAI service.", + "launch_stage": "GA" + }, + "openai_organization": { + "description": "This is an optional field to specify the organization in OpenAI or Azure\nOpenAI.", + "launch_stage": "GA" + } + } + }, + "serving.PaLmConfig": { + "fields": { + "palm_api_key": { + "description": "The Databricks secret key reference for a PaLM API key. If you prefer to\npaste your API key directly, see `palm_api_key_plaintext`. You must\nprovide an API key using one of the following fields: `palm_api_key` or\n`palm_api_key_plaintext`.", + "launch_stage": "GA" + }, + "palm_api_key_plaintext": { + "description": "The PaLM API key provided as a plaintext string. If you prefer to\nreference your key using Databricks Secrets, see `palm_api_key`. You must\nprovide an API key using one of the following fields: `palm_api_key` or\n`palm_api_key_plaintext`.", + "launch_stage": "GA", + "behaviors": [ + "INPUT_ONLY" + ] + } + } + }, + "serving.PatchServingEndpointTags": { + "fields": { + "add_tags": { + "description": "List of endpoint tags to add", + "launch_stage": "GA" + }, + "delete_tags": { + "description": "List of tag keys to delete", + "launch_stage": "GA" + } + } + }, + "serving.PatchTelemetryConfigRequest": { + "description": "Updates the telemetry configuration of a serving endpoint.", + "fields": { + "telemetry_config": { + "description": "The telemetry configuration to be applied to the serving endpoint.\nCan specify either a telemetry_profile_id to use an existing profile,\nor table_names to create a new profile with the specified Unity Catalog tables.\nIf not provided, the telemetry configuration will be removed from the endpoint.", + "ref": "serving.TelemetryConfig", + "launch_stage": "GA" + } + } + }, + "serving.PayloadTable": { + "fields": { + "name": { + "launch_stage": "GA" + }, + "status": { + "launch_stage": "GA" + }, + "status_message": { + "launch_stage": "GA" + } + } + }, + "serving.PtEndpointCoreConfig": { + "fields": { + "served_entities": { + "description": "The list of served entities under the serving endpoint config.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "traffic_config": { + "ref": "serving.TrafficConfig", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.PtServedModel": { + "fields": { + "burst_scaling_enabled": { + "description": "Whether burst scaling is enabled. When enabled (default), the endpoint can automatically\nscale up beyond provisioned capacity to handle traffic spikes. When disabled, the endpoint\nmaintains fixed capacity at provisioned_model_units.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "entity_name": { + "description": "The name of the entity to be served. The entity may be a model in the Databricks Model Registry, a model in the Unity Catalog (UC), or a function of type FEATURE_SPEC in the UC. If it is a UC object, the full name of the object should be given in the form of **catalog_name.schema_name.model_name**.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "entity_version": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "The name of a served entity. It must be unique across an endpoint. A served entity name can consist of alphanumeric characters, dashes, and underscores. If not specified for an external model, this field defaults to external_model.name, with '.' and ':' replaced with '-', and if not specified for other entities, it defaults to entity_name-entity_version.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "provisioned_model_units": { + "description": "The number of model units to be provisioned.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.PutAiGatewayRequest": { + "fields": { + "fallback_config": { + "description": "Configuration for traffic fallback which auto fallbacks to other served entities if the request to a served\nentity fails with certain error codes, to increase availability.", + "ref": "serving.FallbackConfig", + "launch_stage": "GA" + }, + "guardrails": { + "description": "Configuration for AI Guardrails to prevent unwanted data and unsafe data in requests and responses.", + "ref": "serving.AiGatewayGuardrails", + "launch_stage": "PUBLIC_PREVIEW" + }, + "inference_table_config": { + "description": "Configuration for payload logging using inference tables.\nUse these tables to monitor and audit data being sent to and received from model APIs and to improve model quality.", + "ref": "serving.AiGatewayInferenceTableConfig", + "launch_stage": "GA" + }, + "rate_limits": { + "description": "Configuration for rate limits which can be set to limit endpoint traffic.", + "launch_stage": "GA" + }, + "usage_tracking_config": { + "description": "Configuration to enable usage tracking using system tables.\nThese tables allow you to monitor operational usage on endpoints and their associated costs.", + "ref": "serving.AiGatewayUsageTrackingConfig", + "launch_stage": "GA" + } + } + }, + "serving.PutAiGatewayResponse": { + "fields": { + "fallback_config": { + "description": "Configuration for traffic fallback which auto fallbacks to other served entities if the request to a served\nentity fails with certain error codes, to increase availability.", + "ref": "serving.FallbackConfig", + "launch_stage": "GA" + }, + "guardrails": { + "description": "Configuration for AI Guardrails to prevent unwanted data and unsafe data in requests and responses.", + "ref": "serving.AiGatewayGuardrails", + "launch_stage": "PUBLIC_PREVIEW" + }, + "inference_table_config": { + "description": "Configuration for payload logging using inference tables.\nUse these tables to monitor and audit data being sent to and received from model APIs and to improve model quality.", + "ref": "serving.AiGatewayInferenceTableConfig", + "launch_stage": "GA" + }, + "rate_limits": { + "description": "Configuration for rate limits which can be set to limit endpoint traffic.", + "launch_stage": "GA" + }, + "usage_tracking_config": { + "description": "Configuration to enable usage tracking using system tables.\nThese tables allow you to monitor operational usage on endpoints and their associated costs.", + "ref": "serving.AiGatewayUsageTrackingConfig", + "launch_stage": "GA" + } + } + }, + "serving.PutRequest": { + "fields": { + "rate_limits": { + "description": "The list of endpoint rate limits.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.PutResponse": { + "fields": { + "rate_limits": { + "description": "The list of endpoint rate limits.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.QueryEndpointInput": { + "fields": { + "client_request_id": { + "description": "Optional user-provided request identifier that will be recorded in the inference table and the usage tracking table.", + "launch_stage": "GA" + }, + "dataframe_records": { + "description": "Pandas Dataframe input in the records orientation.", + "launch_stage": "GA" + }, + "dataframe_split": { + "description": "Pandas Dataframe input in the split orientation.", + "ref": "serving.DataframeSplitInput", + "launch_stage": "GA" + }, + "extra_params": { + "description": "The extra parameters field used ONLY for __completions, chat,__ and __embeddings external \u0026 foundation\nmodel__ serving endpoints. This is a map of strings and should only be used with other external/foundation\nmodel query fields.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "input": { + "description": "The input string (or array of strings) field used ONLY for __embeddings external \u0026 foundation model__\nserving endpoints and is the only field (along with extra_params if needed) used by embeddings queries.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "inputs": { + "description": "Tensor-based input in columnar format.", + "launch_stage": "GA" + }, + "instances": { + "description": "Tensor-based input in row format.", + "launch_stage": "GA" + }, + "max_tokens": { + "description": "The max tokens field used ONLY for __completions__ and __chat external \u0026 foundation model__ serving\nendpoints. This is an integer and should only be used with other chat/completions query fields.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "messages": { + "description": "The messages field used ONLY for __chat external \u0026 foundation model__ serving endpoints.\nThis is an array of ChatMessage objects and should only be used with other chat query fields.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "n": { + "description": "The n (number of candidates) field used ONLY for __completions__ and __chat external \u0026 foundation model__\nserving endpoints. This is an integer between 1 and 5 with a default of 1 and should only be used with\nother chat/completions query fields.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "prompt": { + "description": "The prompt string (or array of strings) field used ONLY for __completions external \u0026 foundation model__\nserving endpoints and should only be used with other completions query fields.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "stop": { + "description": "The stop sequences field used ONLY for __completions__ and __chat external \u0026 foundation model__ serving\nendpoints. This is a list of strings and should only be used with other chat/completions query fields.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "stream": { + "description": "The stream field used ONLY for __completions__ and __chat external \u0026 foundation model__ serving endpoints.\nThis is a boolean defaulting to false and should only be used with other chat/completions query fields.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "temperature": { + "description": "The temperature field used ONLY for __completions__ and __chat external \u0026 foundation model__ serving\nendpoints. This is a float between 0.0 and 2.0 with a default of 1.0 and should only be used with other\nchat/completions query fields.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "usage_context": { + "description": "Optional user-provided context that will be recorded in the usage tracking table.", + "launch_stage": "GA" + } + } + }, + "serving.QueryEndpointResponse": { + "fields": { + "choices": { + "description": "The list of choices returned by the __chat or completions external/foundation model__ serving endpoint.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "created": { + "description": "The timestamp in seconds when the query was created in Unix time returned by a __completions or chat external/foundation model__ serving endpoint.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "data": { + "description": "The list of the embeddings returned by the __embeddings external/foundation model__ serving endpoint.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "id": { + "description": "The ID of the query that may be returned by a __completions or chat external/foundation model__ serving endpoint.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "model": { + "description": "The name of the __external/foundation model__ used for querying. This is the name of the model that was\nspecified in the endpoint config.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "object": { + "description": "The type of object returned by the __external/foundation model__ serving endpoint, one of\n[text_completion, chat.completion, list (of embeddings)].", + "ref": "serving.QueryEndpointResponseObject", + "launch_stage": "PUBLIC_PREVIEW" + }, + "outputs": { + "description": "The outputs of the feature serving endpoint.", + "launch_stage": "GA" + }, + "predictions": { + "description": "The predictions returned by the serving endpoint.", + "launch_stage": "GA" + }, + "usage": { + "description": "The usage object that may be returned by the __external/foundation model__ serving endpoint. This\ncontains information about the number of tokens used in the prompt and response.", + "ref": "serving.ExternalModelUsageElement", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.QueryEndpointResponseObject": { + "description": "The type of object returned by the __external/foundation model__ serving endpoint, one of\n[text_completion, chat.completion, list (of embeddings)].", + "enum": [ + "text_completion", + "chat.completion", + "list" + ], + "enum_launch_stages": { + "chat.completion": "PUBLIC_PREVIEW", + "list": "PUBLIC_PREVIEW", + "text_completion": "PUBLIC_PREVIEW" + } + }, + "serving.RateLimit": { + "fields": { + "calls": { + "description": "Used to specify how many calls are allowed for a key within the renewal_period.", + "launch_stage": "GA" + }, + "key": { + "description": "Key field for a serving endpoint rate limit. Currently, only 'user' and 'endpoint' are supported, with 'endpoint' being the default if not specified.", + "ref": "serving.RateLimitKey", + "launch_stage": "GA" + }, + "renewal_period": { + "description": "Renewal period field for a serving endpoint rate limit. Currently, only 'minute' is supported.", + "ref": "serving.RateLimitRenewalPeriod", + "launch_stage": "GA" + } + } + }, + "serving.RateLimitKey": { + "enum": [ + "user", + "endpoint" + ], + "enum_launch_stages": { + "endpoint": "PUBLIC_PREVIEW", + "user": "PUBLIC_PREVIEW" + } + }, + "serving.RateLimitRenewalPeriod": { + "enum": [ + "minute" + ], + "enum_launch_stages": { + "minute": "PUBLIC_PREVIEW" + } + }, + "serving.Route": { + "fields": { + "served_entity_name": { + "launch_stage": "GA" + }, + "served_model_name": { + "description": "The name of the served model this route configures traffic for.", + "launch_stage": "GA" + }, + "traffic_percentage": { + "description": "The percentage of endpoint traffic to send to this route. It must be an integer between 0 and 100 inclusive.", + "launch_stage": "GA" + } + } + }, + "serving.ServedEntityInput": { + "fields": { + "burst_scaling_enabled": { + "description": "Whether burst scaling is enabled. When enabled (default), the endpoint can automatically\nscale up beyond provisioned capacity to handle traffic spikes. When disabled, the endpoint\nmaintains fixed capacity at provisioned_model_units.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "entity_name": { + "description": "The name of the entity to be served. The entity may be a model in the Databricks Model Registry, a model in the Unity Catalog (UC), or a function of type FEATURE_SPEC in the UC. If it is a UC object, the full name of the object should be given in the form of **catalog_name.schema_name.model_name**.", + "launch_stage": "GA" + }, + "entity_version": { + "launch_stage": "GA" + }, + "environment_vars": { + "description": "An object containing a set of optional, user-specified environment variable key-value pairs used for serving this entity. Note: this is an experimental feature and subject to change. Example entity environment variables that refer to Databricks secrets: `{\"OPENAI_API_KEY\": \"{{secrets/my_scope/my_key}}\", \"DATABRICKS_TOKEN\": \"{{secrets/my_scope2/my_key2}}\"}`", + "launch_stage": "GA" + }, + "external_model": { + "description": "The external model to be served. NOTE: Only one of external_model and (entity_name, entity_version, workload_size, workload_type, and scale_to_zero_enabled) can be specified with the latter set being used for custom model serving for a Databricks registered model. For an existing endpoint with external_model, it cannot be updated to an endpoint without external_model. If the endpoint is created without external_model, users cannot update it to add external_model later. The task type of all external models within an endpoint must be the same.", + "ref": "serving.ExternalModel", + "launch_stage": "GA" + }, + "instance_profile_arn": { + "description": "ARN of the instance profile that the served entity uses to access AWS resources.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "max_provisioned_concurrency": { + "description": "The maximum provisioned concurrency that the endpoint can scale up to. Do not use if workload_size is specified.", + "launch_stage": "GA" + }, + "max_provisioned_throughput": { + "description": "The maximum tokens per second that the endpoint can scale up to.", + "launch_stage": "GA" + }, + "min_provisioned_concurrency": { + "description": "The minimum provisioned concurrency that the endpoint can scale down to. Do not use if workload_size is specified.", + "launch_stage": "GA" + }, + "min_provisioned_throughput": { + "description": "The minimum tokens per second that the endpoint can scale down to.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of a served entity. It must be unique across an endpoint. A served entity name can consist of alphanumeric characters, dashes, and underscores. If not specified for an external model, this field defaults to external_model.name, with '.' and ':' replaced with '-', and if not specified for other entities, it defaults to entity_name-entity_version.", + "launch_stage": "GA" + }, + "provisioned_model_units": { + "description": "The number of model units provisioned.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "scale_to_zero_enabled": { + "description": "Whether the compute resources for the served entity should scale down to zero.", + "launch_stage": "GA" + }, + "workload_size": { + "description": "The workload size of the served entity. The workload size corresponds to a range of provisioned concurrency that the compute autoscales between. A single unit of provisioned concurrency can process one request at a time. Valid workload sizes are \"Small\" (4 - 4 provisioned concurrency), \"Medium\" (8 - 16 provisioned concurrency), and \"Large\" (16 - 64 provisioned concurrency). Additional custom workload sizes can also be used when available in the workspace. If scale-to-zero is enabled, the lower bound of the provisioned concurrency for each workload size is 0. Do not use if min_provisioned_concurrency and max_provisioned_concurrency are specified.", + "launch_stage": "GA" + }, + "workload_type": { + "description": "The workload type of the served entity. The workload type selects which type of compute to use in the endpoint. The default value for this parameter is \"CPU\". For deep learning workloads, GPU acceleration is available by selecting workload types like GPU_SMALL and others. See the available [GPU types](https://docs.databricks.com/en/machine-learning/model-serving/create-manage-serving-endpoints.html#gpu-workload-types).", + "ref": "serving.ServingModelWorkloadType", + "launch_stage": "GA" + } + } + }, + "serving.ServedEntityOutput": { + "fields": { + "burst_scaling_enabled": { + "description": "Whether burst scaling is enabled. When enabled (default), the endpoint can automatically\nscale up beyond provisioned capacity to handle traffic spikes. When disabled, the endpoint\nmaintains fixed capacity at provisioned_model_units.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "creation_timestamp": { + "launch_stage": "GA" + }, + "creator": { + "launch_stage": "GA" + }, + "entity_name": { + "description": "The name of the entity to be served. The entity may be a model in the Databricks Model Registry, a model in the Unity Catalog (UC), or a function of type FEATURE_SPEC in the UC. If it is a UC object, the full name of the object should be given in the form of **catalog_name.schema_name.model_name**.", + "launch_stage": "GA" + }, + "entity_version": { + "launch_stage": "GA" + }, + "environment_vars": { + "description": "An object containing a set of optional, user-specified environment variable key-value pairs used for serving this entity. Note: this is an experimental feature and subject to change. Example entity environment variables that refer to Databricks secrets: `{\"OPENAI_API_KEY\": \"{{secrets/my_scope/my_key}}\", \"DATABRICKS_TOKEN\": \"{{secrets/my_scope2/my_key2}}\"}`", + "launch_stage": "GA" + }, + "external_model": { + "description": "The external model to be served. NOTE: Only one of external_model and (entity_name, entity_version, workload_size, workload_type, and scale_to_zero_enabled) can be specified with the latter set being used for custom model serving for a Databricks registered model. For an existing endpoint with external_model, it cannot be updated to an endpoint without external_model. If the endpoint is created without external_model, users cannot update it to add external_model later. The task type of all external models within an endpoint must be the same.", + "ref": "serving.ExternalModel", + "launch_stage": "GA" + }, + "foundation_model": { + "ref": "serving.FoundationModel", + "launch_stage": "PUBLIC_PREVIEW" + }, + "instance_profile_arn": { + "description": "ARN of the instance profile that the served entity uses to access AWS resources.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "max_provisioned_concurrency": { + "description": "The maximum provisioned concurrency that the endpoint can scale up to. Do not use if workload_size is specified.", + "launch_stage": "GA" + }, + "max_provisioned_throughput": { + "description": "The maximum tokens per second that the endpoint can scale up to.", + "launch_stage": "GA" + }, + "min_provisioned_concurrency": { + "description": "The minimum provisioned concurrency that the endpoint can scale down to. Do not use if workload_size is specified.", + "launch_stage": "GA" + }, + "min_provisioned_throughput": { + "description": "The minimum tokens per second that the endpoint can scale down to.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of a served entity. It must be unique across an endpoint. A served entity name can consist of alphanumeric characters, dashes, and underscores. If not specified for an external model, this field defaults to external_model.name, with '.' and ':' replaced with '-', and if not specified for other entities, it defaults to entity_name-entity_version.", + "launch_stage": "GA" + }, + "provisioned_model_units": { + "description": "The number of model units provisioned.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "scale_to_zero_enabled": { + "description": "Whether the compute resources for the served entity should scale down to zero.", + "launch_stage": "GA" + }, + "state": { + "ref": "serving.ServedModelState", + "launch_stage": "GA" + }, + "workload_size": { + "description": "The workload size of the served entity. The workload size corresponds to a range of provisioned concurrency that the compute autoscales between. A single unit of provisioned concurrency can process one request at a time. Valid workload sizes are \"Small\" (4 - 4 provisioned concurrency), \"Medium\" (8 - 16 provisioned concurrency), and \"Large\" (16 - 64 provisioned concurrency). Additional custom workload sizes can also be used when available in the workspace. If scale-to-zero is enabled, the lower bound of the provisioned concurrency for each workload size is 0. Do not use if min_provisioned_concurrency and max_provisioned_concurrency are specified.", + "launch_stage": "GA" + }, + "workload_type": { + "description": "The workload type of the served entity. The workload type selects which type of compute to use in the endpoint. The default value for this parameter is \"CPU\". For deep learning workloads, GPU acceleration is available by selecting workload types like GPU_SMALL and others. See the available [GPU types](https://docs.databricks.com/en/machine-learning/model-serving/create-manage-serving-endpoints.html#gpu-workload-types).", + "ref": "serving.ServingModelWorkloadType", + "launch_stage": "GA" + } + } + }, + "serving.ServedEntitySpec": { + "fields": { + "entity_name": { + "launch_stage": "GA" + }, + "entity_version": { + "launch_stage": "GA" + }, + "external_model": { + "ref": "serving.ExternalModel", + "launch_stage": "GA" + }, + "foundation_model": { + "ref": "serving.FoundationModel", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "launch_stage": "GA" + } + } + }, + "serving.ServedModelInput": { + "fields": { + "burst_scaling_enabled": { + "description": "Whether burst scaling is enabled. When enabled (default), the endpoint can automatically\nscale up beyond provisioned capacity to handle traffic spikes. When disabled, the endpoint\nmaintains fixed capacity at provisioned_model_units.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "environment_vars": { + "description": "An object containing a set of optional, user-specified environment variable key-value pairs used for serving this entity. Note: this is an experimental feature and subject to change. Example entity environment variables that refer to Databricks secrets: `{\"OPENAI_API_KEY\": \"{{secrets/my_scope/my_key}}\", \"DATABRICKS_TOKEN\": \"{{secrets/my_scope2/my_key2}}\"}`", + "launch_stage": "GA" + }, + "instance_profile_arn": { + "description": "ARN of the instance profile that the served entity uses to access AWS resources.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "max_provisioned_concurrency": { + "description": "The maximum provisioned concurrency that the endpoint can scale up to. Do not use if workload_size is specified.", + "launch_stage": "GA" + }, + "max_provisioned_throughput": { + "description": "The maximum tokens per second that the endpoint can scale up to.", + "launch_stage": "GA" + }, + "min_provisioned_concurrency": { + "description": "The minimum provisioned concurrency that the endpoint can scale down to. Do not use if workload_size is specified.", + "launch_stage": "GA" + }, + "min_provisioned_throughput": { + "description": "The minimum tokens per second that the endpoint can scale down to.", + "launch_stage": "GA" + }, + "model_name": { + "launch_stage": "GA" + }, + "model_version": { + "launch_stage": "GA" + }, + "name": { + "description": "The name of a served entity. It must be unique across an endpoint. A served entity name can consist of alphanumeric characters, dashes, and underscores. If not specified for an external model, this field defaults to external_model.name, with '.' and ':' replaced with '-', and if not specified for other entities, it defaults to entity_name-entity_version.", + "launch_stage": "GA" + }, + "provisioned_model_units": { + "description": "The number of model units provisioned.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "scale_to_zero_enabled": { + "description": "Whether the compute resources for the served entity should scale down to zero.", + "launch_stage": "GA" + }, + "workload_size": { + "description": "The workload size of the served entity. The workload size corresponds to a range of provisioned concurrency that the compute autoscales between. A single unit of provisioned concurrency can process one request at a time. Valid workload sizes are \"Small\" (4 - 4 provisioned concurrency), \"Medium\" (8 - 16 provisioned concurrency), and \"Large\" (16 - 64 provisioned concurrency). Additional custom workload sizes can also be used when available in the workspace. If scale-to-zero is enabled, the lower bound of the provisioned concurrency for each workload size is 0. Do not use if min_provisioned_concurrency and max_provisioned_concurrency are specified.", + "launch_stage": "GA" + }, + "workload_type": { + "description": "The workload type of the served entity. The workload type selects which type of compute to use in the endpoint. The default value for this parameter is \"CPU\". For deep learning workloads, GPU acceleration is available by selecting workload types like GPU_SMALL and others. See the available [GPU types](https://docs.databricks.com/en/machine-learning/model-serving/create-manage-serving-endpoints.html#gpu-workload-types).", + "ref": "serving.ServedModelInputWorkloadType", + "launch_stage": "GA" + } + } + }, + "serving.ServedModelInputWorkloadType": { + "description": "Please keep this in sync with workload types in InferenceEndpointEntities.scala.", + "enum": [ + "CPU", + "GPU_MEDIUM", + "GPU_SMALL", + "GPU_LARGE", + "MULTIGPU_MEDIUM", + "CPU_LARGE", + "GPU_XLARGE_8", + "GPU_XLARGE", + "CPU_MEDIUM" + ], + "enum_launch_stages": { + "CPU": "GA", + "CPU_LARGE": "PUBLIC_BETA", + "CPU_MEDIUM": "PUBLIC_BETA", + "GPU_LARGE": "GA", + "GPU_MEDIUM": "GA", + "GPU_SMALL": "GA", + "GPU_XLARGE": "PUBLIC_BETA", + "GPU_XLARGE_8": "PUBLIC_BETA", + "MULTIGPU_MEDIUM": "GA" + } + }, + "serving.ServedModelOutput": { + "fields": { + "burst_scaling_enabled": { + "description": "Whether burst scaling is enabled. When enabled (default), the endpoint can automatically\nscale up beyond provisioned capacity to handle traffic spikes. When disabled, the endpoint\nmaintains fixed capacity at provisioned_model_units.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "INPUT_ONLY" + ] + }, + "creation_timestamp": { + "launch_stage": "GA" + }, + "creator": { + "launch_stage": "GA" + }, + "environment_vars": { + "description": "An object containing a set of optional, user-specified environment variable key-value pairs used for serving this entity. Note: this is an experimental feature and subject to change. Example entity environment variables that refer to Databricks secrets: `{\"OPENAI_API_KEY\": \"{{secrets/my_scope/my_key}}\", \"DATABRICKS_TOKEN\": \"{{secrets/my_scope2/my_key2}}\"}`", + "launch_stage": "GA" + }, + "instance_profile_arn": { + "description": "ARN of the instance profile that the served entity uses to access AWS resources.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "max_provisioned_concurrency": { + "description": "The maximum provisioned concurrency that the endpoint can scale up to. Do not use if workload_size is specified.", + "launch_stage": "GA" + }, + "min_provisioned_concurrency": { + "description": "The minimum provisioned concurrency that the endpoint can scale down to. Do not use if workload_size is specified.", + "launch_stage": "GA" + }, + "model_name": { + "launch_stage": "GA" + }, + "model_version": { + "launch_stage": "GA" + }, + "name": { + "description": "The name of a served entity. It must be unique across an endpoint. A served entity name can consist of alphanumeric characters, dashes, and underscores. If not specified for an external model, this field defaults to external_model.name, with '.' and ':' replaced with '-', and if not specified for other entities, it defaults to entity_name-entity_version.", + "launch_stage": "GA" + }, + "provisioned_model_units": { + "description": "The number of model units provisioned.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "scale_to_zero_enabled": { + "description": "Whether the compute resources for the served entity should scale down to zero.", + "launch_stage": "GA" + }, + "state": { + "ref": "serving.ServedModelState", + "launch_stage": "GA" + }, + "workload_size": { + "description": "The workload size of the served entity. The workload size corresponds to a range of provisioned concurrency that the compute autoscales between. A single unit of provisioned concurrency can process one request at a time. Valid workload sizes are \"Small\" (4 - 4 provisioned concurrency), \"Medium\" (8 - 16 provisioned concurrency), and \"Large\" (16 - 64 provisioned concurrency). Additional custom workload sizes can also be used when available in the workspace. If scale-to-zero is enabled, the lower bound of the provisioned concurrency for each workload size is 0. Do not use if min_provisioned_concurrency and max_provisioned_concurrency are specified.", + "launch_stage": "GA" + }, + "workload_type": { + "description": "The workload type of the served entity. The workload type selects which type of compute to use in the endpoint. The default value for this parameter is \"CPU\". For deep learning workloads, GPU acceleration is available by selecting workload types like GPU_SMALL and others. See the available [GPU types](https://docs.databricks.com/en/machine-learning/model-serving/create-manage-serving-endpoints.html#gpu-workload-types).", + "ref": "serving.ServingModelWorkloadType", + "launch_stage": "GA" + } + } + }, + "serving.ServedModelSpec": { + "fields": { + "model_name": { + "description": "Only one of model_name and entity_name should be populated", + "launch_stage": "GA" + }, + "model_version": { + "description": "Only one of model_version and entity_version should be populated", + "launch_stage": "GA" + }, + "name": { + "launch_stage": "GA" + } + } + }, + "serving.ServedModelState": { + "fields": { + "deployment": { + "ref": "serving.ServedModelStateDeployment", + "launch_stage": "GA" + }, + "deployment_state_message": { + "launch_stage": "GA" + } + } + }, + "serving.ServedModelStateDeployment": { + "enum": [ + "DEPLOYMENT_CREATING", + "DEPLOYMENT_RECOVERING", + "DEPLOYMENT_READY", + "DEPLOYMENT_FAILED", + "DEPLOYMENT_ABORTED" + ], + "enum_launch_stages": { + "DEPLOYMENT_ABORTED": "PUBLIC_PREVIEW", + "DEPLOYMENT_CREATING": "PUBLIC_PREVIEW", + "DEPLOYMENT_FAILED": "PUBLIC_PREVIEW", + "DEPLOYMENT_READY": "PUBLIC_PREVIEW", + "DEPLOYMENT_RECOVERING": "PUBLIC_PREVIEW" + } + }, + "serving.ServerLogsResponse": { + "fields": { + "logs": { + "description": "The most recent log lines of the model server processing invocation requests.", + "launch_stage": "GA" + } + } + }, + "serving.ServingEndpoint": { + "fields": { + "ai_gateway": { + "description": "The AI Gateway configuration for the serving endpoint. NOTE: External model, provisioned throughput, and pay-per-token endpoints are fully supported; agent endpoints currently only support inference tables.", + "ref": "serving.AiGatewayConfig", + "launch_stage": "GA" + }, + "budget_policy_id": { + "description": "The budget policy associated with the endpoint.", + "launch_stage": "GA" + }, + "config": { + "description": "The config that is currently being served by the endpoint.", + "ref": "serving.EndpointCoreConfigSummary", + "launch_stage": "GA" + }, + "creation_timestamp": { + "description": "The timestamp when the endpoint was created in Unix time.", + "launch_stage": "GA" + }, + "creator": { + "description": "The email of the user who created the serving endpoint.", + "launch_stage": "GA" + }, + "description": { + "description": "Description of the endpoint", + "launch_stage": "GA" + }, + "id": { + "description": "System-generated ID of the endpoint, included to be used by the Permissions API.", + "launch_stage": "GA" + }, + "last_updated_timestamp": { + "description": "The timestamp when the endpoint was last updated by a user in Unix time.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the serving endpoint.", + "launch_stage": "GA" + }, + "state": { + "description": "Information corresponding to the state of the serving endpoint.", + "ref": "serving.EndpointState", + "launch_stage": "GA" + }, + "tags": { + "description": "Tags attached to the serving endpoint.", + "launch_stage": "GA" + }, + "task": { + "description": "The task type of the serving endpoint.", + "launch_stage": "GA" + }, + "telemetry_config": { + "description": "Telemetry configuration for the endpoint, including inference-table payload logging.", + "ref": "serving.TelemetryConfig", + "launch_stage": "PUBLIC_PREVIEW" + }, + "usage_policy_id": { + "description": "The usage policy associated with serving endpoint.", + "launch_stage": "GA" + } + } + }, + "serving.ServingEndpointAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "serving.ServingEndpointPermissionLevel", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "serving.ServingEndpointAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "serving.ServingEndpointDetailed": { + "fields": { + "ai_gateway": { + "description": "The AI Gateway configuration for the serving endpoint. NOTE: External model, provisioned throughput, and pay-per-token endpoints are fully supported; agent endpoints currently only support inference tables.", + "ref": "serving.AiGatewayConfig", + "launch_stage": "GA" + }, + "budget_policy_id": { + "description": "The budget policy associated with the endpoint.", + "launch_stage": "GA" + }, + "config": { + "description": "The config that is currently being served by the endpoint.", + "ref": "serving.EndpointCoreConfigOutput", + "launch_stage": "GA" + }, + "creation_timestamp": { + "description": "The timestamp when the endpoint was created in Unix time.", + "launch_stage": "GA" + }, + "creator": { + "description": "The email of the user who created the serving endpoint.", + "launch_stage": "GA" + }, + "data_plane_info": { + "description": "Information required to query DataPlane APIs.", + "ref": "serving.ModelDataPlaneInfo", + "launch_stage": "GA" + }, + "description": { + "description": "Description of the serving model", + "launch_stage": "GA" + }, + "email_notifications": { + "description": "Email notification settings.", + "ref": "serving.EmailNotifications", + "launch_stage": "GA" + }, + "endpoint_url": { + "description": "Endpoint invocation url if route optimization is enabled for endpoint", + "launch_stage": "GA" + }, + "id": { + "description": "System-generated ID of the endpoint. This is used to refer to the endpoint in the Permissions API", + "launch_stage": "GA" + }, + "last_updated_timestamp": { + "description": "The timestamp when the endpoint was last updated by a user in Unix time.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the serving endpoint.", + "launch_stage": "GA" + }, + "pending_config": { + "description": "The config that the endpoint is attempting to update to.", + "ref": "serving.EndpointPendingConfig", + "launch_stage": "GA" + }, + "permission_level": { + "description": "The permission level of the principal making the request.", + "ref": "serving.ServingEndpointDetailedPermissionLevel", + "launch_stage": "GA" + }, + "route_optimized": { + "description": "Boolean representing if route optimization has been enabled for the endpoint", + "launch_stage": "GA" + }, + "state": { + "description": "Information corresponding to the state of the serving endpoint.", + "ref": "serving.EndpointState", + "launch_stage": "GA" + }, + "tags": { + "description": "Tags attached to the serving endpoint.", + "launch_stage": "GA" + }, + "task": { + "description": "The task type of the serving endpoint.", + "launch_stage": "GA" + }, + "telemetry_config": { + "description": "Telemetry configuration for the endpoint, including inference-table payload logging.", + "ref": "serving.TelemetryConfig", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.ServingEndpointDetailedPermissionLevel": { + "enum": [ + "CAN_MANAGE", + "CAN_QUERY", + "CAN_VIEW" + ], + "enum_launch_stages": { + "CAN_MANAGE": "GA", + "CAN_QUERY": "GA", + "CAN_VIEW": "GA" + } + }, + "serving.ServingEndpointPermission": { + "fields": { + "inherited": { + "launch_stage": "GA" + }, + "inherited_from_object": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "serving.ServingEndpointPermissionLevel", + "launch_stage": "GA" + } + } + }, + "serving.ServingEndpointPermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_MANAGE", + "CAN_QUERY", + "CAN_VIEW" + ] + }, + "serving.ServingEndpointPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "launch_stage": "GA" + }, + "object_type": { + "launch_stage": "GA" + } + } + }, + "serving.ServingEndpointPermissionsDescription": { + "fields": { + "description": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "serving.ServingEndpointPermissionLevel", + "launch_stage": "GA" + } + } + }, + "serving.ServingEndpointPermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "serving.ServingModelWorkloadType": { + "description": "Please keep this in sync with workload types in InferenceEndpointEntities.scala.", + "enum": [ + "CPU", + "GPU_MEDIUM", + "GPU_SMALL", + "GPU_LARGE", + "MULTIGPU_MEDIUM", + "CPU_LARGE", + "GPU_XLARGE_8", + "GPU_XLARGE", + "CPU_MEDIUM" + ], + "enum_launch_stages": { + "CPU": "GA", + "CPU_LARGE": "PUBLIC_BETA", + "CPU_MEDIUM": "PUBLIC_BETA", + "GPU_LARGE": "GA", + "GPU_MEDIUM": "GA", + "GPU_SMALL": "GA", + "GPU_XLARGE": "PUBLIC_BETA", + "GPU_XLARGE_8": "PUBLIC_BETA", + "MULTIGPU_MEDIUM": "GA" + } + }, + "serving.TelemetryConfig": { + "fields": { + "enabled_telemetry_features": { + "description": "The telemetry signals to enable for this endpoint. If empty or omitted, all signals are\nenabled; otherwise only the listed signals are enabled.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "inference_table_config": { + "description": "Configuration for inference table payload logging, including sampling.", + "ref": "serving.TelemetryInferenceTableConfig", + "launch_stage": "PUBLIC_PREVIEW" + }, + "table_names": { + "description": "The Unity Catalog tables to which endpoint telemetry (logs, traces, and metrics) is exported.\nProvide this to create a new telemetry profile for the endpoint from the given tables.", + "ref": "serving.UnityCatalogTableNames", + "launch_stage": "PUBLIC_PREVIEW" + }, + "telemetry_profile_id": { + "description": "The ID of an existing telemetry profile to apply to this endpoint. Provide this to reuse a\ntelemetry profile that has already been created, instead of specifying table_names.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.TelemetryFeature": { + "description": "A telemetry signal that a serving endpoint can export to Unity Catalog. Use these values to\nselect which signals the endpoint exports.", + "enum": [ + "TELEMETRY_FEATURE_LOGS", + "TELEMETRY_FEATURE_TRACES", + "TELEMETRY_FEATURE_METRICS", + "TELEMETRY_FEATURE_INFERENCE_TABLE" + ], + "enum_launch_stages": { + "TELEMETRY_FEATURE_INFERENCE_TABLE": "PUBLIC_PREVIEW", + "TELEMETRY_FEATURE_LOGS": "PUBLIC_PREVIEW", + "TELEMETRY_FEATURE_METRICS": "PUBLIC_PREVIEW", + "TELEMETRY_FEATURE_TRACES": "PUBLIC_PREVIEW" + } + }, + "serving.TelemetryInferenceTableConfig": { + "description": "Inference table payload logging configuration", + "fields": { + "name": { + "description": "The full name of the inference table created for this endpoint.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "sampling_fraction": { + "description": "Fraction of requests sampled for payload logging, in the range [0.0, 1.0], where 1.0 logs all requests.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.TrafficConfig": { + "fields": { + "routes": { + "description": "The list of routes that define traffic to each served entity.", + "launch_stage": "GA" + } + } + }, + "serving.UnityCatalogTableNames": { + "fields": { + "annotations_table": { + "description": "The full three-level Unity Catalog name (catalog.schema.table) of the table that receives\nexported annotations.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "logs_table": { + "description": "The full three-level Unity Catalog name (catalog.schema.table) of the table that receives\nexported logs.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "metrics_table": { + "description": "The full three-level Unity Catalog name (catalog.schema.table) of the table that receives\nexported metrics.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "traces_table": { + "description": "The full three-level Unity Catalog name (catalog.schema.table) of the table that receives\nexported traces (spans).", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.UpdateInferenceEndpointNotifications": { + "fields": { + "email_notifications": { + "description": "The email notification settings to update. Specify email addresses to notify when endpoint state changes occur.", + "ref": "serving.EmailNotifications", + "launch_stage": "GA" + } + } + }, + "serving.UpdateInferenceEndpointNotificationsResponse": { + "fields": { + "email_notifications": { + "ref": "serving.EmailNotifications", + "launch_stage": "GA" + }, + "name": { + "launch_stage": "GA" + } + } + }, + "serving.UpdateProvisionedThroughputEndpointConfigRequest": { + "fields": { + "config": { + "ref": "serving.PtEndpointCoreConfig", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "serving.V1ResponseChoiceElement": { + "fields": { + "finishReason": { + "description": "The finish reason returned by the endpoint.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "index": { + "description": "The index of the choice in the __chat or completions__ response.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "logprobs": { + "description": "The logprobs returned only by the __completions__ endpoint.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "message": { + "description": "The message response from the __chat__ endpoint.", + "ref": "serving.ChatMessage", + "launch_stage": "PUBLIC_PREVIEW" + }, + "text": { + "description": "The text response from the __completions__ endpoint.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.AccountIpAccessEnable": { + "fields": { + "acct_ip_acl_enable": { + "ref": "settings.BooleanMessage", + "launch_stage": "PRIVATE_PREVIEW" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.AccountNetworkPolicy": { + "fields": { + "account_id": { + "description": "The associated account ID for this Network Policy object.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "egress": { + "description": "The network policies applying for egress traffic.", + "ref": "settings.NetworkPolicyEgress", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "ingress": { + "description": "The network policies applying for ingress traffic.", + "ref": "settings.CustomerFacingIngressNetworkPolicy", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "ingress_dry_run": { + "description": "The ingress policy for dry run mode. Dry run will always run even if the request\nis allowed by the ingress policy. When this field is set, the policy will be evaluated\nand emit logs only without blocking requests.", + "ref": "settings.CustomerFacingIngressNetworkPolicy", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "network_policy_id": { + "description": "The unique identifier for the network policy.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settings.AibiDashboardEmbeddingAccessPolicy": { + "fields": { + "access_policy_type": { + "ref": "settings.AibiDashboardEmbeddingAccessPolicyAccessPolicyType", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settings.AibiDashboardEmbeddingAccessPolicyAccessPolicyType": { + "enum": [ + "ALLOW_ALL_DOMAINS", + "ALLOW_APPROVED_DOMAINS", + "DENY_ALL_DOMAINS" + ], + "enum_launch_stages": { + "ALLOW_ALL_DOMAINS": "PUBLIC_PREVIEW", + "ALLOW_APPROVED_DOMAINS": "PUBLIC_PREVIEW", + "DENY_ALL_DOMAINS": "PUBLIC_PREVIEW" + } + }, + "settings.AibiDashboardEmbeddingAccessPolicySetting": { + "fields": { + "aibi_dashboard_embedding_access_policy": { + "ref": "settings.AibiDashboardEmbeddingAccessPolicy", + "launch_stage": "PUBLIC_PREVIEW" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.AibiDashboardEmbeddingApprovedDomains": { + "fields": { + "approved_domains": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settings.AibiDashboardEmbeddingApprovedDomainsSetting": { + "fields": { + "aibi_dashboard_embedding_approved_domains": { + "ref": "settings.AibiDashboardEmbeddingApprovedDomains", + "launch_stage": "PUBLIC_PREVIEW" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.AutomaticClusterUpdateSetting": { + "fields": { + "automatic_cluster_update_workspace": { + "ref": "settings.ClusterAutoRestartMessage", + "launch_stage": "PUBLIC_PREVIEW" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.BooleanMessage": { + "fields": { + "value": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settings.ClusterAutoRestartMessage": { + "fields": { + "can_toggle": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "enabled": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "enablement_details": { + "ref": "settings.ClusterAutoRestartMessageEnablementDetails", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "maintenance_window": { + "ref": "settings.ClusterAutoRestartMessageMaintenanceWindow", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "restart_even_if_no_updates_available": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settings.ClusterAutoRestartMessageEnablementDetails": { + "description": "Contains an information about the enablement status judging (e.g. whether the enterprise tier\nis enabled)\nThis is only additional information that MUST NOT be used to decide whether the setting is\nenabled or not. This is intended to use only for purposes like showing an error message to\nthe customer with the additional details. For example, using these details we can check\nwhy exactly the feature is disabled for this customer.", + "fields": { + "forced_for_compliance_mode": { + "description": "The feature is force enabled if compliance mode is active", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "unavailable_for_disabled_entitlement": { + "description": "The feature is unavailable if the corresponding entitlement disabled (see getShieldEntitlementEnable)", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "unavailable_for_non_enterprise_tier": { + "description": "The feature is unavailable if the customer doesn't have enterprise tier", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settings.ClusterAutoRestartMessageMaintenanceWindow": { + "fields": { + "week_day_based_schedule": { + "ref": "settings.ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settings.ClusterAutoRestartMessageMaintenanceWindowDayOfWeek": { + "enum": [ + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enum_launch_stages": { + "FRIDAY": "PUBLIC_PREVIEW", + "MONDAY": "PUBLIC_PREVIEW", + "SATURDAY": "PUBLIC_PREVIEW", + "SUNDAY": "PUBLIC_PREVIEW", + "THURSDAY": "PUBLIC_PREVIEW", + "TUESDAY": "PUBLIC_PREVIEW", + "WEDNESDAY": "PUBLIC_PREVIEW" + } + }, + "settings.ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule": { + "fields": { + "day_of_week": { + "ref": "settings.ClusterAutoRestartMessageMaintenanceWindowDayOfWeek", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "frequency": { + "ref": "settings.ClusterAutoRestartMessageMaintenanceWindowWeekDayFrequency", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "window_start_time": { + "ref": "settings.ClusterAutoRestartMessageMaintenanceWindowWindowStartTime", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settings.ClusterAutoRestartMessageMaintenanceWindowWeekDayFrequency": { + "enum": [ + "FIRST_OF_MONTH", + "SECOND_OF_MONTH", + "THIRD_OF_MONTH", + "FOURTH_OF_MONTH", + "FIRST_AND_THIRD_OF_MONTH", + "SECOND_AND_FOURTH_OF_MONTH", + "EVERY_WEEK" + ], + "enum_launch_stages": { + "EVERY_WEEK": "PUBLIC_PREVIEW", + "FIRST_AND_THIRD_OF_MONTH": "PUBLIC_PREVIEW", + "FIRST_OF_MONTH": "PUBLIC_PREVIEW", + "FOURTH_OF_MONTH": "PUBLIC_PREVIEW", + "SECOND_AND_FOURTH_OF_MONTH": "PUBLIC_PREVIEW", + "SECOND_OF_MONTH": "PUBLIC_PREVIEW", + "THIRD_OF_MONTH": "PUBLIC_PREVIEW" + } + }, + "settings.ClusterAutoRestartMessageMaintenanceWindowWindowStartTime": { + "fields": { + "hours": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "minutes": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settings.ComplianceSecurityProfile": { + "description": "SHIELD feature: CSP\nCompliance Security Profile (CSP) enables enhanced compliance controls on the workspace.", + "fields": { + "compliance_standards": { + "description": "Compliance standards selected by the customer for this Compliance Security Profile.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "is_enabled": { + "description": "Whether Compliance Security Profile (CSP) is enabled on the workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.ComplianceSecurityProfileSetting": { + "fields": { + "compliance_security_profile_workspace": { + "ref": "settings.ComplianceSecurityProfile", + "launch_stage": "PUBLIC_PREVIEW" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.ComplianceStandard": { + "description": "Compliance standard for SHIELD customers. See README.md for how instructions of how to add new standards.", + "enum": [ + "NONE", + "HIPAA", + "PCI_DSS", + "FEDRAMP_MODERATE", + "IRAP_PROTECTED", + "FEDRAMP_HIGH", + "FEDRAMP_IL5", + "ITAR_EAR", + "CYBER_ESSENTIAL_PLUS", + "CANADA_PROTECTED_B", + "ISMAP", + "HITRUST", + "K_FSI", + "GERMANY_C5", + "GERMANY_TISAX", + "KSA_ECC_CCC_DCC" + ], + "enum_launch_stages": { + "CANADA_PROTECTED_B": "GA", + "CYBER_ESSENTIAL_PLUS": "GA", + "FEDRAMP_HIGH": "GA", + "FEDRAMP_IL5": "GA", + "FEDRAMP_MODERATE": "GA", + "GERMANY_C5": "GA", + "GERMANY_TISAX": "GA", + "HIPAA": "GA", + "HITRUST": "GA", + "IRAP_PROTECTED": "GA", + "ISMAP": "GA", + "ITAR_EAR": "GA", + "KSA_ECC_CCC_DCC": "GA", + "K_FSI": "GA", + "NONE": "GA", + "PCI_DSS": "GA" + } + }, + "settings.Config": { + "fields": { + "databricks_app_slack": { + "ref": "settings.DatabricksAppSlackConfig", + "launch_stage": "PUBLIC_BETA" + }, + "databricks_app_teams": { + "ref": "settings.DatabricksAppTeamsConfig", + "launch_stage": "PUBLIC_BETA" + }, + "email": { + "ref": "settings.EmailConfig", + "launch_stage": "GA" + }, + "generic_webhook": { + "ref": "settings.GenericWebhookConfig", + "launch_stage": "GA" + }, + "microsoft_teams": { + "ref": "settings.MicrosoftTeamsConfig", + "launch_stage": "GA" + }, + "pagerduty": { + "ref": "settings.PagerdutyConfig", + "launch_stage": "GA" + }, + "slack": { + "ref": "settings.SlackConfig", + "launch_stage": "GA" + } + } + }, + "settings.CreateIpAccessList": { + "description": "Details required to configure a block list or allow list.", + "fields": { + "ip_addresses": { + "launch_stage": "GA" + }, + "label": { + "description": "Label for the IP access list. This **cannot** be empty.", + "launch_stage": "GA" + }, + "list_type": { + "ref": "settings.ListType", + "launch_stage": "GA" + } + } + }, + "settings.CreateIpAccessListResponse": { + "description": "An IP access list was successfully created.", + "fields": { + "ip_access_list": { + "ref": "settings.IpAccessListInfo", + "launch_stage": "GA" + } + } + }, + "settings.CreateNetworkConnectivityConfigRequest": { + "fields": { + "network_connectivity_config": { + "ref": "settings.CreateNetworkConnectivityConfiguration", + "launch_stage": "GA" + } + } + }, + "settings.CreateNetworkConnectivityConfiguration": { + "description": "Properties of the new network connectivity configuration.", + "fields": { + "name": { + "description": "The name of the network connectivity configuration. The name can contain alphanumeric characters, hyphens,\nand underscores. The length must be between 3 and 30 characters. The name must match the regular\nexpression ^[0-9a-zA-Z-_]{3,30}$", + "launch_stage": "GA" + }, + "region": { + "description": "The region for the network connectivity configuration.\nOnly workspaces in the same region can be attached to the network connectivity configuration.", + "launch_stage": "GA" + } + } + }, + "settings.CreateNetworkPolicyRequest": { + "fields": { + "network_policy": { + "description": "Network policy configuration details.", + "ref": "settings.AccountNetworkPolicy", + "launch_stage": "GA" + } + } + }, + "settings.CreateNotificationDestinationRequest": { + "fields": { + "config": { + "description": "The configuration for the notification destination. Must wrap EXACTLY one of the nested configs.", + "ref": "settings.Config", + "launch_stage": "GA" + }, + "display_name": { + "description": "The display name for the notification destination.", + "launch_stage": "GA" + } + } + }, + "settings.CreateOboTokenRequest": { + "description": "Configuration details for creating on-behalf tokens.", + "fields": { + "application_id": { + "description": "Application ID of the service principal.", + "launch_stage": "GA" + }, + "autoscope_enabled": { + "description": "Whether to enable autoscoping for this token.", + "launch_stage": "PUBLIC_BETA" + }, + "comment": { + "description": "Comment that describes the purpose of the token.", + "launch_stage": "GA" + }, + "lifetime_seconds": { + "description": "The number of seconds before the token expires.", + "launch_stage": "GA" + }, + "scopes": { + "launch_stage": "GA" + } + } + }, + "settings.CreateOboTokenResponse": { + "description": "An on-behalf token was successfully created for the service principal.", + "fields": { + "token_info": { + "ref": "settings.TokenInfo", + "launch_stage": "GA" + }, + "token_value": { + "description": "Value of the token.", + "launch_stage": "GA" + } + } + }, + "settings.CreatePrivateEndpointRule": { + "description": "Properties of the new private endpoint rule.\nNote that you must approve the endpoint in Azure portal after initialization.", + "fields": { + "domain_names": { + "description": "Only used by private endpoints to customer-managed private endpoint services.\n\nDomain names of target private link service.\nWhen updating this field, the full list of target domain_names must be specified.", + "launch_stage": "GA" + }, + "endpoint_service": { + "description": "The full target AWS endpoint service name that connects to the destination resources of the private endpoint.", + "launch_stage": "GA" + }, + "error_message": { + "launch_stage": "GA" + }, + "gcp_endpoint": { + "ref": "settings.GcpEndpoint", + "launch_stage": "GA" + }, + "group_id": { + "description": "Not used by customer-managed private endpoint services.\n\nThe sub-resource type (group ID) of the target resource.\nNote that to connect to workspace root storage (root DBFS), you need two endpoints, one for blob and one for dfs.", + "launch_stage": "GA" + }, + "resource_id": { + "description": "The Azure resource ID of the target resource.", + "launch_stage": "GA" + }, + "resource_names": { + "description": "Only used by private endpoints towards AWS S3 service.\n\nThe globally unique S3 bucket names that will be accessed via the VPC endpoint.\nThe bucket names must be in the same region as the NCC/endpoint service.\nWhen updating this field, we perform full update on this field. Please ensure a full list of desired\nresource_names is provided.", + "launch_stage": "GA" + } + } + }, + "settings.CreatePrivateEndpointRuleRequest": { + "fields": { + "private_endpoint_rule": { + "ref": "settings.CreatePrivateEndpointRule", + "launch_stage": "GA" + } + } + }, + "settings.CreateTokenRequest": { + "fields": { + "autoscope_enabled": { + "description": "Whether to enable autoscoping for this token. When true, the token will\nautomatically collect inferred API path scopes as it is used.", + "launch_stage": "PUBLIC_BETA" + }, + "comment": { + "description": "Optional description to attach to the token.", + "launch_stage": "GA" + }, + "lifetime_seconds": { + "description": "The lifetime of the token, in seconds.\n\nIf the lifetime is not specified, this token remains valid for 2 years.", + "launch_stage": "GA" + }, + "scopes": { + "description": "Optional scopes of the token.", + "launch_stage": "GA" + } + } + }, + "settings.CreateTokenResponse": { + "fields": { + "token_info": { + "description": "The information for the new token.", + "ref": "settings.PublicTokenInfo", + "launch_stage": "GA" + }, + "token_value": { + "description": "The value of the new token.", + "launch_stage": "GA" + } + } + }, + "settings.CspEnablementAccount": { + "description": "Account level policy for CSP", + "fields": { + "compliance_standards": { + "description": "Set by customers when they request Compliance Security Profile (CSP)\nInvariants are enforced in Settings policy.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "is_enforced": { + "description": "Enforced = it cannot be overriden at workspace level.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.CspEnablementAccountSetting": { + "fields": { + "csp_enablement_account": { + "ref": "settings.CspEnablementAccount", + "launch_stage": "PUBLIC_PREVIEW" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicy": { + "description": "The network policies applying for ingress traffic.", + "fields": { + "cross_workspace_access": { + "ref": "settings.CustomerFacingIngressNetworkPolicyCrossWorkspaceAccess", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "private_access": { + "description": "The network policy restrictions for private access.\nConfigures how requests arriving over private connectivity are governed.", + "ref": "settings.CustomerFacingIngressNetworkPolicyPrivateAccess", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "public_access": { + "description": "The network policy restrictions for public access to the workspace.\nConfigures how public internet traffic is allowed or denied access.", + "ref": "settings.CustomerFacingIngressNetworkPolicyPublicAccess", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyAccountApiDestination": { + "description": "Matches account-level Databricks API endpoints for an ingress network policy rule.", + "fields": { + "scope_qualifier": { + "description": "Qualifies the breadth of API access for the listed scopes. See ApiScopeQualifier.", + "ref": "settings.CustomerFacingIngressNetworkPolicyApiScopeQualifier", + "launch_stage": "PUBLIC_BETA" + }, + "scopes": { + "description": "The API scopes to match. Use \"all-apis\" to match any account-level API.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyAccountDatabricksOneDestination": { + "fields": { + "all_destinations": { + "description": "Must be set to true.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyAccountUiDestination": { + "description": "The account console UI destination.", + "fields": { + "all_destinations": { + "description": "Must be set to true.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyApiScopeQualifier": { + "description": "Qualifies the breadth of API access permitted by an ingress network policy rule.\nAPI_SCOPE_QUALIFIER_READ narrows matching to read-only variants of the listed scopes;\nAPI_SCOPE_QUALIFIER_ALL matches any scope. When unset, scopes match exactly as listed.", + "enum": [ + "API_SCOPE_QUALIFIER_READ", + "API_SCOPE_QUALIFIER_ALL" + ], + "enum_launch_stages": { + "API_SCOPE_QUALIFIER_ALL": "GA", + "API_SCOPE_QUALIFIER_READ": "GA" + } + }, + "settings.CustomerFacingIngressNetworkPolicyAppsRuntimeDestination": { + "fields": { + "all_destinations": { + "description": "Must be set to true.", + "launch_stage": "GA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyAuthentication": { + "fields": { + "identities": { + "description": "Valid only when IdentityType is IDENTITY_TYPE_SELECTED_IDENTITIES.", + "launch_stage": "GA" + }, + "identity_type": { + "ref": "settings.CustomerFacingIngressNetworkPolicyAuthenticationIdentityType", + "launch_stage": "GA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyAuthenticationIdentity": { + "fields": { + "principal_id": { + "launch_stage": "GA" + }, + "principal_type": { + "ref": "settings.CustomerFacingIngressNetworkPolicyAuthenticationIdentityPrincipalType", + "launch_stage": "GA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyAuthenticationIdentityPrincipalType": { + "enum": [ + "PRINCIPAL_TYPE_USER", + "PRINCIPAL_TYPE_SERVICE_PRINCIPAL" + ], + "enum_launch_stages": { + "PRINCIPAL_TYPE_SERVICE_PRINCIPAL": "GA", + "PRINCIPAL_TYPE_USER": "GA" + } + }, + "settings.CustomerFacingIngressNetworkPolicyAuthenticationIdentityType": { + "enum": [ + "IDENTITY_TYPE_ALL_USERS", + "IDENTITY_TYPE_ALL_SERVICE_PRINCIPALS", + "IDENTITY_TYPE_SELECTED_IDENTITIES" + ], + "enum_launch_stages": { + "IDENTITY_TYPE_ALL_SERVICE_PRINCIPALS": "GA", + "IDENTITY_TYPE_ALL_USERS": "GA", + "IDENTITY_TYPE_SELECTED_IDENTITIES": "GA" + } + }, + "settings.CustomerFacingIngressNetworkPolicyCrossWorkspaceAccess": { + "fields": { + "allow_rules": { + "description": "Allow rules are evaluated after deny rules. A request matching any allow rule is\nallowed; a request matching no rule is denied by default. Only applies when\nrestriction_mode is RESTRICTED_ACCESS.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "deny_rules": { + "description": "Deny rules are evaluated first. A request matching any deny rule is denied,\nregardless of allow rules. Only applies when restriction_mode is RESTRICTED_ACCESS.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "restriction_mode": { + "description": "The restriction mode for cross-workspace access.", + "ref": "settings.CustomerFacingIngressNetworkPolicyCrossWorkspaceAccessRestrictionMode", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyCrossWorkspaceAccessRestrictionMode": { + "description": "The restriction mode for cross-workspace access. In FULL_ACCESS mode, requests from any\nsource workspace (in any account) are allowed, and deny rules and allow rules cannot be set.\nIn RESTRICTED_ACCESS mode, access is restricted based on deny rules and allow rules;\nrequests that do not match any allow rule are denied. In LEGACY_MODE, cross-workspace\ningress is not governed by this policy.", + "enum": [ + "FULL_ACCESS", + "RESTRICTED_ACCESS", + "LEGACY_MODE" + ], + "enum_launch_stages": { + "FULL_ACCESS": "PUBLIC_BETA", + "LEGACY_MODE": "PUBLIC_BETA", + "RESTRICTED_ACCESS": "PUBLIC_BETA" + } + }, + "settings.CustomerFacingIngressNetworkPolicyCrossWorkspaceIngressRule": { + "description": "An ingress rule is enforced when a request satisfies all\nspecified attributes — including request origin, destination, and authentication.", + "fields": { + "authentication": { + "description": "The authenticated identity the request must match. When unset, the rule matches\nall users and service principals.", + "ref": "settings.CustomerFacingIngressNetworkPolicyAuthentication", + "launch_stage": "PUBLIC_BETA" + }, + "destination": { + "description": "The destination the request must match — the resource being accessed, for example\nthe workspace UI or workspace APIs. See RequestDestination.", + "ref": "settings.CustomerFacingIngressNetworkPolicyRequestDestination", + "launch_stage": "PUBLIC_BETA" + }, + "label": { + "description": "The label for this ingress rule.", + "launch_stage": "PUBLIC_BETA" + }, + "origin": { + "description": "The origin the request must match — the source workspace the request comes from,\neither specific source workspaces or any source workspace in any account. See\nCrossWorkspaceRequestOrigin.", + "ref": "settings.CustomerFacingIngressNetworkPolicyCrossWorkspaceRequestOrigin", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyCrossWorkspaceRequestOrigin": { + "fields": { + "all_source_workspaces": { + "description": "Matches all source workspaces.", + "launch_stage": "PUBLIC_BETA" + }, + "selected_workspaces": { + "description": "Specific source workspace IDs to match.", + "ref": "settings.CustomerFacingIngressNetworkPolicyWorkspaceIdList", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyEndpoints": { + "description": "A set of registered endpoints, identified by their endpoint IDs.", + "fields": { + "endpoint_ids": { + "description": "The IDs of the registered endpoints. Must contain at least one endpoint ID.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyIpRanges": { + "fields": { + "ip_ranges": { + "description": "We only support IPv4 and IPv4 CIDR notation for now.", + "launch_stage": "GA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyLakebaseRuntimeDestination": { + "fields": { + "all_destinations": { + "description": "Must be set to true.", + "launch_stage": "GA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyPrivateAccess": { + "description": "Configures how requests arriving over private connectivity, such as\nregistered endpoints, are allowed or denied access.", + "fields": { + "allow_rules": { + "description": "Allow rules are evaluated after deny rules. A request matching any allow rule is\nallowed; a request matching no rule is denied by default. Only applies when\nrestriction_mode is RESTRICTED_ACCESS.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "deny_rules": { + "description": "Deny rules are evaluated first. A request matching any deny rule is denied,\nregardless of allow rules. Only applies when restriction_mode is RESTRICTED_ACCESS.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "restriction_mode": { + "description": "The restriction mode for private access.", + "ref": "settings.CustomerFacingIngressNetworkPolicyPrivateAccessRestrictionMode", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyPrivateAccessRestrictionMode": { + "description": "The restriction mode for private access. In ALLOW_ALL_REGISTERED_ENDPOINTS mode,\nrequests arriving through any endpoint registered to the account are allowed, and\ndeny rules and allow rules cannot be set. In RESTRICTED_ACCESS mode, access is\nrestricted based on deny rules and allow rules; requests that do not match any\nallow rule are denied.", + "enum": [ + "ALLOW_ALL_REGISTERED_ENDPOINTS", + "RESTRICTED_ACCESS" + ], + "enum_launch_stages": { + "ALLOW_ALL_REGISTERED_ENDPOINTS": "PUBLIC_BETA", + "RESTRICTED_ACCESS": "PUBLIC_BETA" + } + }, + "settings.CustomerFacingIngressNetworkPolicyPrivateIngressRule": { + "description": "An ingress rule is enforced when a request satisfies all\nspecified attributes — including request origin, destination, and authentication.", + "fields": { + "authentication": { + "description": "The authenticated identity the request must match. When unset, the rule matches\nall users and service principals.\nOn the account-level network policy, scoping to specific identities is not\ncurrently supported, so this field must be unset (the rule matches all users\nand service principals).", + "ref": "settings.CustomerFacingIngressNetworkPolicyAuthentication", + "launch_stage": "PUBLIC_BETA" + }, + "destination": { + "description": "The destination the request must match — the resource being accessed, for example\nthe workspace UI, workspace APIs, or account-level APIs. See RequestDestination.", + "ref": "settings.CustomerFacingIngressNetworkPolicyRequestDestination", + "launch_stage": "PUBLIC_BETA" + }, + "label": { + "description": "The label for this ingress rule.", + "launch_stage": "PUBLIC_BETA" + }, + "origin": { + "description": "The origin the request must match — the private connectivity the request arrives\nthrough, for example a specific set of registered endpoints or any endpoint\nregistered to the account. See PrivateRequestOrigin.", + "ref": "settings.CustomerFacingIngressNetworkPolicyPrivateRequestOrigin", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyPrivateRequestOrigin": { + "description": "The origin of a private access request, identified by the endpoint\nthrough which the request arrives.", + "fields": { + "all_private_access": { + "description": "Matches requests arriving over any private connectivity, including registered\nendpoints and the workspace's Azure Private Link (ui-api) endpoints.\nCan only be used in deny rules of workspace-level network policies.\nMust be set to true when specified.", + "launch_stage": "PUBLIC_BETA" + }, + "all_registered_endpoints": { + "description": "Matches requests arriving through any endpoint registered to the account.\nMust be set to true when specified.", + "launch_stage": "PUBLIC_BETA" + }, + "azure_workspace_private_link": { + "description": "Matches requests arriving through the workspace's Azure Private Link (ui-api)\nendpoints. Can only be used in deny rules of workspace-level network policies.\nMust be set to true when specified.", + "launch_stage": "PUBLIC_BETA" + }, + "endpoints": { + "description": "Matches requests arriving through any of the specified registered endpoints.", + "ref": "settings.CustomerFacingIngressNetworkPolicyEndpoints", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyPublicAccess": { + "fields": { + "allow_rules": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "deny_rules": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "restriction_mode": { + "ref": "settings.CustomerFacingIngressNetworkPolicyPublicAccessRestrictionMode", + "launch_stage": "GA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyPublicAccessRestrictionMode": { + "enum": [ + "FULL_ACCESS", + "RESTRICTED_ACCESS" + ], + "enum_launch_stages": { + "FULL_ACCESS": "GA", + "RESTRICTED_ACCESS": "GA" + } + }, + "settings.CustomerFacingIngressNetworkPolicyPublicIngressRule": { + "description": "An ingress rule is enforced when a request satisfies all\nspecified attributes — including request origin, destination, and authentication.", + "fields": { + "authentication": { + "ref": "settings.CustomerFacingIngressNetworkPolicyAuthentication", + "launch_stage": "GA" + }, + "destination": { + "ref": "settings.CustomerFacingIngressNetworkPolicyRequestDestination", + "launch_stage": "GA" + }, + "label": { + "description": "The label for this ingress rule.", + "launch_stage": "GA" + }, + "origin": { + "ref": "settings.CustomerFacingIngressNetworkPolicyPublicRequestOrigin", + "launch_stage": "GA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyPublicRequestOrigin": { + "fields": { + "all_ip_ranges": { + "description": "Matches all IPv4 and IPv6 ranges (both public and private).", + "launch_stage": "GA" + }, + "excluded_ip_ranges": { + "description": "Excluded means: all public IP ranges except this one.", + "ref": "settings.CustomerFacingIngressNetworkPolicyIpRanges", + "launch_stage": "GA" + }, + "included_ip_ranges": { + "description": "Will not allow IP ranges with private IPs.", + "ref": "settings.CustomerFacingIngressNetworkPolicyIpRanges", + "launch_stage": "GA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyRequestDestination": { + "fields": { + "account_api": { + "description": "Matches requests to account-level APIs.\nCan only be used in the account-level network policy.", + "ref": "settings.CustomerFacingIngressNetworkPolicyAccountApiDestination", + "launch_stage": "PUBLIC_BETA" + }, + "account_databricks_one": { + "description": "Account DatabricksOne destination is not supported.", + "ref": "settings.CustomerFacingIngressNetworkPolicyAccountDatabricksOneDestination", + "launch_stage": "PRIVATE_PREVIEW" + }, + "account_ui": { + "description": "Matches requests to the account console UI.\nCan only be used in the account-level network policy.", + "ref": "settings.CustomerFacingIngressNetworkPolicyAccountUiDestination", + "launch_stage": "PUBLIC_BETA" + }, + "all_destinations": { + "description": "When true, match all destinations, no other destination fields can be set.\nWhen not set or false, at least one specific destination must be provided.", + "launch_stage": "GA" + }, + "apps_runtime": { + "ref": "settings.CustomerFacingIngressNetworkPolicyAppsRuntimeDestination", + "launch_stage": "GA" + }, + "lakebase_runtime": { + "ref": "settings.CustomerFacingIngressNetworkPolicyLakebaseRuntimeDestination", + "launch_stage": "GA" + }, + "workspace_api": { + "ref": "settings.CustomerFacingIngressNetworkPolicyWorkspaceApiDestination", + "launch_stage": "GA" + }, + "workspace_ui": { + "ref": "settings.CustomerFacingIngressNetworkPolicyWorkspaceUiDestination", + "launch_stage": "GA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyWorkspaceApiDestination": { + "description": "Matches workspace-level Databricks API endpoints for an ingress network policy rule.", + "fields": { + "excluded_scopes": { + "description": "Inverse of `scopes`: matches every API scope EXCEPT those listed here\n(\"allow all except\"). Mutually exclusive with `scopes` — a single\ndestination may set at most one of the two.", + "launch_stage": "GA" + }, + "scope_qualifier": { + "description": "Qualifies the breadth of API access for the listed scopes. See ApiScopeQualifier.", + "ref": "settings.CustomerFacingIngressNetworkPolicyApiScopeQualifier", + "launch_stage": "GA" + }, + "scopes": { + "launch_stage": "GA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyWorkspaceIdList": { + "fields": { + "workspace_ids": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settings.CustomerFacingIngressNetworkPolicyWorkspaceUiDestination": { + "fields": { + "all_destinations": { + "description": "Must be set to true.", + "launch_stage": "GA" + } + } + }, + "settings.CustomerFacingNetworkConnectivityConfigAwsPrivateEndpointRule": { + "description": "Properties of the new private endpoint rule.\nNote that for private endpoints towards a VPC endpoint service behind a customer-managed NLB,\nyou must approve the endpoint in AWS console after initialization.", + "fields": { + "account_id": { + "description": "Databricks account ID. You can find your account ID from the Accounts Console.", + "launch_stage": "GA" + }, + "connection_state": { + "description": "The current status of this private endpoint. The private endpoint rules are effective only if the connection state\nis ESTABLISHED. Remember that you must approve new endpoints on your resources in the AWS console\nbefore they take effect.\nThe possible values are:\n- PENDING: The endpoint has been created and pending approval.\n- ESTABLISHED: The endpoint has been approved and is ready to use in your serverless compute resources.\n- REJECTED: Connection was rejected by the private link resource owner.\n- DISCONNECTED: Connection was removed by the private link resource owner, the private endpoint becomes informative and should be deleted for clean-up.\n- EXPIRED: If the endpoint is created but not approved in 14 days, it is EXPIRED.", + "ref": "settings.CustomerFacingNetworkConnectivityConfigAwsPrivateEndpointRulePrivateLinkConnectionState", + "launch_stage": "GA" + }, + "creation_time": { + "description": "Time in epoch milliseconds when this object was created.", + "launch_stage": "GA" + }, + "deactivated": { + "description": "Whether this private endpoint is deactivated.", + "launch_stage": "GA" + }, + "deactivated_at": { + "description": "Time in epoch milliseconds when this object was deactivated.", + "launch_stage": "GA" + }, + "domain_names": { + "description": "Only used by private endpoints towards a VPC endpoint service for customer-managed VPC endpoint service.\n\nThe target AWS resource FQDNs accessible via the VPC endpoint service.\nWhen updating this field, we perform full update on this field. Please ensure a full list of desired domain_names is provided.", + "launch_stage": "GA" + }, + "enabled": { + "description": "Only used by private endpoints towards an AWS S3 service.\n\nUpdate this field to activate/deactivate this private endpoint to allow egress access from serverless compute resources.", + "launch_stage": "GA" + }, + "endpoint_service": { + "description": "The full target AWS endpoint service name that connects to the destination resources of the private endpoint.", + "launch_stage": "GA" + }, + "error_message": { + "launch_stage": "GA" + }, + "network_connectivity_config_id": { + "description": "The ID of a network connectivity configuration, which is the parent resource of this private endpoint rule object.", + "launch_stage": "GA" + }, + "resource_names": { + "description": "Only used by private endpoints towards AWS S3 service.\n\nThe globally unique S3 bucket names that will be accessed via the VPC endpoint.\nThe bucket names must be in the same region as the NCC/endpoint service.\nWhen updating this field, we perform full update on this field.\nPlease ensure a full list of desired resource_names is provided.", + "launch_stage": "GA" + }, + "rule_id": { + "description": "The ID of a private endpoint rule.", + "launch_stage": "GA" + }, + "updated_time": { + "description": "Time in epoch milliseconds when this object was updated.", + "launch_stage": "GA" + }, + "vpc_endpoint_id": { + "description": "The AWS VPC endpoint ID. You can use this ID to identify VPC endpoint created by Databricks.", + "launch_stage": "GA" + } + } + }, + "settings.CustomerFacingNetworkConnectivityConfigAwsPrivateEndpointRulePrivateLinkConnectionState": { + "enum": [ + "ESTABLISHED", + "REJECTED", + "DISCONNECTED", + "EXPIRED", + "PENDING", + "CREATING", + "CREATE_FAILED" + ], + "enum_launch_stages": { + "CREATE_FAILED": "GA", + "CREATING": "GA", + "DISCONNECTED": "GA", + "ESTABLISHED": "GA", + "EXPIRED": "GA", + "PENDING": "GA", + "REJECTED": "GA" + } + }, + "settings.DashboardEmailSubscriptions": { + "fields": { + "boolean_val": { + "ref": "settings.BooleanMessage", + "launch_stage": "PUBLIC_PREVIEW" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.DatabricksAppSlackConfig": { + "description": "Slack channel reached through the Databricks app. The app must already be installed in the\nSlack workspace and connected to this Databricks workspace.", + "fields": { + "channel_id": { + "description": "[Input-Only] Slack channel ID notifications are posted to.", + "launch_stage": "PUBLIC_BETA" + }, + "channel_id_set": { + "description": "[Output-Only] Whether channel ID is set.", + "launch_stage": "PUBLIC_BETA" + }, + "team_id": { + "description": "[Input-Only] Slack workspace (team) ID the Databricks app is installed in.", + "launch_stage": "PUBLIC_BETA" + }, + "team_id_set": { + "description": "[Output-Only] Whether team ID is set.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settings.DatabricksAppTeamsConfig": { + "description": "Microsoft Teams channel reached through the Databricks app. The app must already be installed in\nthe Microsoft 365 tenant and connected to this Databricks workspace.", + "fields": { + "channel_id": { + "description": "[Input-Only] Teams channel ID notifications are posted to.", + "launch_stage": "PUBLIC_BETA" + }, + "channel_id_set": { + "description": "[Output-Only] Whether channel ID is set.", + "launch_stage": "PUBLIC_BETA" + }, + "team_id": { + "description": "[Input-Only] Microsoft Entra group ID of the team that owns the channel.", + "launch_stage": "PUBLIC_BETA" + }, + "team_id_set": { + "description": "[Output-Only] Whether team ID is set.", + "launch_stage": "PUBLIC_BETA" + }, + "tenant_id": { + "description": "[Input-Only] Microsoft Entra tenant ID of the Microsoft 365 tenant the app is installed in.", + "launch_stage": "PUBLIC_BETA" + }, + "tenant_id_set": { + "description": "[Output-Only] Whether tenant ID is set.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settings.DefaultNamespaceSetting": { + "description": "This represents the setting configuration for the default namespace in the Databricks workspace.\nSetting the default catalog for the workspace determines the catalog that is used when queries do not reference\na fully qualified 3 level name. For example, if the default catalog is set to 'retail_prod' then a query\n'SELECT * FROM myTable' would reference the object 'retail_prod.default.myTable' (the schema\n'default' is always assumed). This setting requires a restart of clusters and SQL warehouses to take effect.\nAdditionally, the default namespace only applies when using Unity Catalog-enabled compute.", + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "namespace": { + "ref": "settings.StringMessage", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.DefaultWarehouseId": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "string_val": { + "ref": "settings.StringMessage", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.DeleteAccountIpAccessEnableRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.DeleteAccountIpAccessEnableResponse": { + "description": "The etag is returned.", + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.DeleteAccountIpAccessListRequest": {}, + "settings.DeleteAibiDashboardEmbeddingAccessPolicySettingRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.DeleteAibiDashboardEmbeddingAccessPolicySettingResponse": { + "description": "The etag is returned.", + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.DeleteAibiDashboardEmbeddingApprovedDomainsSettingRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.DeleteAibiDashboardEmbeddingApprovedDomainsSettingResponse": { + "description": "The etag is returned.", + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.DeleteDashboardEmailSubscriptionsRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.DeleteDashboardEmailSubscriptionsResponse": { + "description": "The etag is returned.", + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.DeleteDefaultNamespaceSettingRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.DeleteDefaultNamespaceSettingResponse": { + "description": "The etag is returned.", + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.DeleteDefaultWarehouseIdRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.DeleteDefaultWarehouseIdResponse": { + "description": "The etag is returned.", + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.DeleteDisableLegacyAccessRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "GA" + } + } + }, + "settings.DeleteDisableLegacyAccessResponse": { + "description": "The etag is returned.", + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "GA" + } + } + }, + "settings.DeleteDisableLegacyDbfsRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "GA" + } + } + }, + "settings.DeleteDisableLegacyDbfsResponse": { + "description": "The etag is returned.", + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "GA" + } + } + }, + "settings.DeleteDisableLegacyFeaturesRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "GA" + } + } + }, + "settings.DeleteDisableLegacyFeaturesResponse": { + "description": "The etag is returned.", + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "GA" + } + } + }, + "settings.DeleteIpAccessListRequest": {}, + "settings.DeleteLlmProxyPartnerPoweredWorkspaceRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.DeleteLlmProxyPartnerPoweredWorkspaceResponse": { + "description": "The etag is returned.", + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.DeleteNetworkConnectivityConfigurationRequest": {}, + "settings.DeleteNetworkPolicyRequest": {}, + "settings.DeleteNotificationDestinationRequest": {}, + "settings.DeletePersonalComputeSettingRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.DeletePersonalComputeSettingResponse": { + "description": "The etag is returned.", + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.DeletePrivateEndpointRuleRequest": {}, + "settings.DeleteRestrictWorkspaceAdminsSettingRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.DeleteRestrictWorkspaceAdminsSettingResponse": { + "description": "The etag is returned.", + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.DeleteSqlResultsDownloadRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.DeleteSqlResultsDownloadResponse": { + "description": "The etag is returned.", + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.DeleteTokenManagementRequest": {}, + "settings.DestinationType": { + "enum": [ + "SLACK", + "EMAIL", + "WEBHOOK", + "PAGERDUTY", + "MICROSOFT_TEAMS", + "DATABRICKS_APP_SLACK", + "DATABRICKS_APP_TEAMS" + ], + "enum_launch_stages": { + "DATABRICKS_APP_SLACK": "PUBLIC_BETA", + "DATABRICKS_APP_TEAMS": "PUBLIC_BETA", + "EMAIL": "GA", + "MICROSOFT_TEAMS": "GA", + "PAGERDUTY": "GA", + "SLACK": "GA", + "WEBHOOK": "GA" + } + }, + "settings.DisableLegacyAccess": { + "fields": { + "disable_legacy_access": { + "ref": "settings.BooleanMessage", + "launch_stage": "GA" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "GA" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "GA" + } + } + }, + "settings.DisableLegacyDbfs": { + "fields": { + "disable_legacy_dbfs": { + "ref": "settings.BooleanMessage", + "launch_stage": "GA" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "GA" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "GA" + } + } + }, + "settings.DisableLegacyFeatures": { + "fields": { + "disable_legacy_features": { + "ref": "settings.BooleanMessage", + "launch_stage": "GA" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "GA" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "GA" + } + } + }, + "settings.EgressNetworkPolicy": { + "description": "The network policies applying for egress traffic.\nThis message is used by the UI/REST API. We translate this message to the format expected by the\ndataplane in Lakehouse Network Manager (for the format expected by the dataplane,\nsee networkconfig.textproto).", + "fields": { + "internet_access": { + "description": "The access policy enforced for egress traffic to the internet.", + "ref": "settings.EgressNetworkPolicyInternetAccessPolicy", + "launch_stage": "GA" + } + } + }, + "settings.EgressNetworkPolicyInternetAccessPolicy": { + "fields": { + "allowed_internet_destinations": { + "launch_stage": "GA" + }, + "allowed_storage_destinations": { + "launch_stage": "GA" + }, + "log_only_mode": { + "description": "Optional. If not specified, assume the policy is enforced for all workloads.", + "ref": "settings.EgressNetworkPolicyInternetAccessPolicyLogOnlyMode", + "launch_stage": "GA" + }, + "restriction_mode": { + "ref": "settings.EgressNetworkPolicyInternetAccessPolicyRestrictionMode", + "launch_stage": "GA" + } + } + }, + "settings.EgressNetworkPolicyInternetAccessPolicyInternetDestination": { + "description": "Users can specify accessible internet destinations when outbound access is restricted.\nWe only support domain name (FQDN) destinations for the time being,\nthough going forwards we want to support host names and IP addresses.", + "fields": { + "destination": { + "launch_stage": "GA" + }, + "protocol": { + "ref": "settings.EgressNetworkPolicyInternetAccessPolicyInternetDestinationInternetDestinationFilteringProtocol", + "launch_stage": "GA" + }, + "type": { + "ref": "settings.EgressNetworkPolicyInternetAccessPolicyInternetDestinationInternetDestinationType", + "launch_stage": "GA" + } + } + }, + "settings.EgressNetworkPolicyInternetAccessPolicyInternetDestinationInternetDestinationFilteringProtocol": { + "description": "The filtering protocol used by the DP. For private and public preview, SEG will only\nsupport TCP filtering (i.e. DNS based filtering, filtering by destination IP address),\nso protocol will be set to TCP by default and hidden from the user. In the future, users\nmay be able to select HTTP filtering (i.e. SNI based filtering, filtering by FQDN).", + "enum": [ + "TCP" + ], + "enum_launch_stages": { + "TCP": "GA" + } + }, + "settings.EgressNetworkPolicyInternetAccessPolicyInternetDestinationInternetDestinationType": { + "enum": [ + "FQDN" + ], + "enum_launch_stages": { + "FQDN": "GA" + } + }, + "settings.EgressNetworkPolicyInternetAccessPolicyLogOnlyMode": { + "fields": { + "log_only_mode_type": { + "ref": "settings.EgressNetworkPolicyInternetAccessPolicyLogOnlyModeLogOnlyModeType", + "launch_stage": "GA" + }, + "workloads": { + "launch_stage": "GA" + } + } + }, + "settings.EgressNetworkPolicyInternetAccessPolicyLogOnlyModeLogOnlyModeType": { + "enum": [ + "ALL_SERVICES", + "SELECTED_SERVICES" + ], + "enum_launch_stages": { + "ALL_SERVICES": "GA", + "SELECTED_SERVICES": "GA" + } + }, + "settings.EgressNetworkPolicyInternetAccessPolicyLogOnlyModeWorkloadType": { + "description": "The values should match the list of workloads used in networkconfig.proto", + "enum": [ + "DBSQL", + "ML_SERVING" + ], + "enum_launch_stages": { + "DBSQL": "GA", + "ML_SERVING": "GA" + } + }, + "settings.EgressNetworkPolicyInternetAccessPolicyRestrictionMode": { + "description": "At which level can Databricks and Databricks managed compute access Internet.\nFULL_ACCESS: Databricks can access Internet. No blocking rules will apply.\nRESTRICTED_ACCESS: Databricks can only access explicitly allowed internet and storage destinations,\nas well as UC connections and external locations.\nPRIVATE_ACCESS_ONLY (not used): Databricks can only access destinations via private link.", + "enum": [ + "FULL_ACCESS", + "PRIVATE_ACCESS_ONLY", + "RESTRICTED_ACCESS" + ], + "enum_launch_stages": { + "FULL_ACCESS": "GA", + "PRIVATE_ACCESS_ONLY": "GA", + "RESTRICTED_ACCESS": "GA" + } + }, + "settings.EgressNetworkPolicyInternetAccessPolicyStorageDestination": { + "description": "Users can specify accessible storage destinations.", + "fields": { + "allowed_paths": { + "launch_stage": "GA" + }, + "azure_container": { + "launch_stage": "GA" + }, + "azure_dns_zone": { + "launch_stage": "GA" + }, + "azure_storage_account": { + "launch_stage": "GA" + }, + "azure_storage_service": { + "launch_stage": "GA" + }, + "bucket_name": { + "launch_stage": "GA" + }, + "region": { + "launch_stage": "GA" + }, + "type": { + "ref": "settings.EgressNetworkPolicyInternetAccessPolicyStorageDestinationStorageDestinationType", + "launch_stage": "GA" + } + } + }, + "settings.EgressNetworkPolicyInternetAccessPolicyStorageDestinationStorageDestinationType": { + "enum": [ + "AWS_S3", + "CLOUDFLARE_R2", + "AZURE_STORAGE", + "GOOGLE_CLOUD_STORAGE" + ], + "enum_launch_stages": { + "AWS_S3": "GA", + "AZURE_STORAGE": "GA", + "CLOUDFLARE_R2": "GA", + "GOOGLE_CLOUD_STORAGE": "GA" + } + }, + "settings.EgressNetworkPolicyNetworkAccessPolicy": { + "fields": { + "allowed_databricks_destinations": { + "description": "List of Databricks workspace destinations that serverless workloads are\nallowed to access when in RESTRICTED_ACCESS mode.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "allowed_internet_destinations": { + "description": "List of internet destinations that serverless workloads are allowed to access when in RESTRICTED_ACCESS mode.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "allowed_storage_destinations": { + "description": "List of storage destinations that serverless workloads are allowed to access when in RESTRICTED_ACCESS mode.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "blocked_internet_destinations": { + "description": "List of internet destinations that serverless workloads are blocked from accessing.\nThese destinations are enforced when restriction mode is RESTRICTED_ACCESS or DRY_RUN.\nCurrently supports DNS_NAME type only; IP_RANGE support is planned.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "policy_enforcement": { + "description": "Optional. When policy_enforcement is not provided, we default to ENFORCE_MODE_ALL_SERVICES", + "ref": "settings.EgressNetworkPolicyNetworkAccessPolicyPolicyEnforcement", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "restriction_mode": { + "description": "The restriction mode that controls how serverless workloads can access the internet.", + "ref": "settings.EgressNetworkPolicyNetworkAccessPolicyRestrictionMode", + "launch_stage": "GA" + } + } + }, + "settings.EgressNetworkPolicyNetworkAccessPolicyDatabricksDestination": { + "fields": { + "workspace_ids": { + "description": "The workspace IDs to allow egress traffic to.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.EgressNetworkPolicyNetworkAccessPolicyInternetDestination": { + "description": "Users can specify accessible internet destinations when outbound access is restricted.\nWe only support DNS_NAME (FQDN format) destinations for the time being.\nGoing forward we may extend support to host names and IP addresses.", + "fields": { + "destination": { + "description": "The internet destination to which access will be allowed. Format dependent on the destination type.", + "launch_stage": "GA" + }, + "internet_destination_type": { + "description": "The type of internet destination. Currently only DNS_NAME is supported.", + "ref": "settings.EgressNetworkPolicyNetworkAccessPolicyInternetDestinationInternetDestinationType", + "launch_stage": "GA" + } + } + }, + "settings.EgressNetworkPolicyNetworkAccessPolicyInternetDestinationInternetDestinationType": { + "enum": [ + "DNS_NAME" + ], + "enum_launch_stages": { + "DNS_NAME": "GA" + } + }, + "settings.EgressNetworkPolicyNetworkAccessPolicyPolicyEnforcement": { + "fields": { + "dry_run_mode_product_filter": { + "description": "When empty, it means dry run for all products.\nWhen non-empty, it means dry run for specific products and for the other products, they will run in enforced mode.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "enforcement_mode": { + "description": "The mode of policy enforcement. ENFORCED blocks traffic that violates policy,\nwhile DRY_RUN only logs violations without blocking. When not specified,\ndefaults to ENFORCED.", + "ref": "settings.EgressNetworkPolicyNetworkAccessPolicyPolicyEnforcementEnforcementMode", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settings.EgressNetworkPolicyNetworkAccessPolicyPolicyEnforcementDryRunModeProductFilter": { + "description": "The values should match the list of workloads used in networkconfig.proto", + "enum": [ + "DBSQL", + "ML_SERVING" + ], + "enum_launch_stages": { + "DBSQL": "GA", + "ML_SERVING": "GA" + } + }, + "settings.EgressNetworkPolicyNetworkAccessPolicyPolicyEnforcementEnforcementMode": { + "enum": [ + "ENFORCED", + "DRY_RUN" + ], + "enum_launch_stages": { + "DRY_RUN": "GA", + "ENFORCED": "GA" + } + }, + "settings.EgressNetworkPolicyNetworkAccessPolicyRestrictionMode": { + "description": "At which level can Databricks and Databricks managed compute access Internet.\nFULL_ACCESS: Databricks can access Internet. No blocking rules will apply.\nRESTRICTED_ACCESS: Databricks can only access explicitly allowed internet and storage destinations,\nas well as UC connections and external locations.", + "enum": [ + "FULL_ACCESS", + "RESTRICTED_ACCESS" + ], + "enum_launch_stages": { + "FULL_ACCESS": "GA", + "RESTRICTED_ACCESS": "GA" + } + }, + "settings.EgressNetworkPolicyNetworkAccessPolicyStorageDestination": { + "description": "Users can specify accessible storage destinations.", + "fields": { + "azure_storage_account": { + "description": "The Azure storage account name.", + "launch_stage": "GA" + }, + "azure_storage_service": { + "description": "The Azure storage service type (blob, dfs, etc.).", + "launch_stage": "GA" + }, + "bucket_name": { + "launch_stage": "GA" + }, + "region": { + "launch_stage": "GA" + }, + "storage_destination_type": { + "description": "The type of storage destination.", + "ref": "settings.EgressNetworkPolicyNetworkAccessPolicyStorageDestinationStorageDestinationType", + "launch_stage": "GA" + } + } + }, + "settings.EgressNetworkPolicyNetworkAccessPolicyStorageDestinationStorageDestinationType": { + "enum": [ + "AWS_S3", + "AZURE_STORAGE", + "GOOGLE_CLOUD_STORAGE" + ], + "enum_launch_stages": { + "AWS_S3": "GA", + "AZURE_STORAGE": "GA", + "GOOGLE_CLOUD_STORAGE": "GA" + } + }, + "settings.EgressResourceType": { + "description": "The target resources that are supported by Network Connectivity Config.\nNote: some egress types can support general types that are not defined in EgressResourceType.\nE.g.: Azure private endpoint supports private link enabled Azure services.", + "enum": [ + "AZURE_BLOB_STORAGE" + ], + "enum_launch_stages": { + "AZURE_BLOB_STORAGE": "GA" + } + }, + "settings.EmailConfig": { + "fields": { + "addresses": { + "description": "Email addresses to notify.", + "launch_stage": "GA" + } + } + }, + "settings.Empty": {}, + "settings.EnableExportNotebook": { + "fields": { + "boolean_val": { + "ref": "settings.BooleanMessage", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.EnableNotebookTableClipboard": { + "fields": { + "boolean_val": { + "ref": "settings.BooleanMessage", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.EnableResultsDownloading": { + "fields": { + "boolean_val": { + "ref": "settings.BooleanMessage", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.EnhancedSecurityMonitoring": { + "description": "SHIELD feature: ESM\nEnhanced Security Monitoring (ESM) enables additional security monitoring on the workspace.", + "fields": { + "is_enabled": { + "description": "Whether Enhanced Security Monitoring (ESM) is enabled on the workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.EnhancedSecurityMonitoringSetting": { + "fields": { + "enhanced_security_monitoring_workspace": { + "ref": "settings.EnhancedSecurityMonitoring", + "launch_stage": "PUBLIC_PREVIEW" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.EsmEnablementAccount": { + "description": "Account level policy for ESM", + "fields": { + "is_enforced": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.EsmEnablementAccountSetting": { + "fields": { + "esm_enablement_account": { + "ref": "settings.EsmEnablementAccount", + "launch_stage": "PUBLIC_PREVIEW" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.ExchangeToken": { + "description": "The exchange token is the result of the token exchange with the IdP", + "fields": { + "credential": { + "description": "The requested token.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "credentialEolTime": { + "description": "The end-of-life timestamp of the token. The value is in milliseconds since the Unix epoch.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "ownerId": { + "description": "User ID of the user that owns this token.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "scopes": { + "description": "The scopes of access granted in the token.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "tokenType": { + "description": "The type of this exchange token", + "ref": "settings.TokenType", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.ExchangeTokenRequest": { + "description": "Exchange a token with the IdP", + "fields": { + "partitionId": { + "description": "The partition of Credentials store", + "ref": "settings.PartitionId", + "launch_stage": "PRIVATE_PREVIEW" + }, + "scopes": { + "description": "Array of scopes for the token request.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "tokenType": { + "description": "A list of token types being requested", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.ExchangeTokenResponse": { + "description": "Exhanged tokens were successfully returned.", + "fields": { + "values": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.FetchIpAccessListResponse": { + "description": "An IP access list was successfully returned.", + "fields": { + "ip_access_list": { + "ref": "settings.IpAccessListInfo", + "launch_stage": "GA" + } + } + }, + "settings.GcpEndpoint": { + "fields": { + "all_vpc_sc_services": { + "description": "All Google APIs that support VPC Service Controls (a subset of all Google APIs).", + "launch_stage": "PUBLIC_BETA" + }, + "google_api_endpoints": { + "description": "Selected Google API hostnames, e.g. \"storage.googleapis.com\", \"bigquery.googleapis.com\".", + "ref": "settings.GoogleApiEndpoints", + "launch_stage": "PUBLIC_BETA" + }, + "psc_endpoint_uri": { + "description": "Output only. The URI of the created PSC endpoint.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "service_attachment": { + "description": "The full url of the target service attachment.\nExample:\nprojects/my-gcp-project/regions/us-east4/serviceAttachments/my-service-attachment", + "launch_stage": "GA" + } + } + }, + "settings.GenericWebhookConfig": { + "fields": { + "password": { + "description": "[Input-Only][Optional] Password for webhook.", + "launch_stage": "GA" + }, + "password_set": { + "description": "[Output-Only] Whether password is set.", + "launch_stage": "GA" + }, + "url": { + "description": "[Input-Only] URL for webhook.", + "launch_stage": "GA" + }, + "url_set": { + "description": "[Output-Only] Whether URL is set.", + "launch_stage": "GA" + }, + "username": { + "description": "[Input-Only][Optional] Username for webhook.", + "launch_stage": "GA" + }, + "username_set": { + "description": "[Output-Only] Whether username is set.", + "launch_stage": "GA" + } + } + }, + "settings.GetAccountIpAccessEnableRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.GetAccountIpAccessListRequest": {}, + "settings.GetAibiDashboardEmbeddingAccessPolicySettingRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.GetAibiDashboardEmbeddingApprovedDomainsSettingRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.GetAutomaticClusterUpdateSettingRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.GetComplianceSecurityProfileSettingRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.GetCspEnablementAccountSettingRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.GetDashboardEmailSubscriptionsRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.GetDefaultNamespaceSettingRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.GetDefaultWarehouseIdRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.GetDisableLegacyAccessRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "GA" + } + } + }, + "settings.GetDisableLegacyDbfsRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "GA" + } + } + }, + "settings.GetDisableLegacyFeaturesRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "GA" + } + } + }, + "settings.GetEnableExportNotebookRequest": {}, + "settings.GetEnableNotebookTableClipboardRequest": {}, + "settings.GetEnableResultsDownloadingRequest": {}, + "settings.GetEnhancedSecurityMonitoringSettingRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.GetEsmEnablementAccountSettingRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.GetIpAccessListRequest": {}, + "settings.GetIpAccessListResponse": { + "fields": { + "ip_access_list": { + "ref": "settings.IpAccessListInfo", + "launch_stage": "GA" + } + } + }, + "settings.GetIpAccessListsResponse": { + "description": "IP access lists were successfully returned.", + "fields": { + "ip_access_lists": { + "launch_stage": "GA" + } + } + }, + "settings.GetLlmProxyPartnerPoweredAccountRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.GetLlmProxyPartnerPoweredEnforceRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.GetLlmProxyPartnerPoweredWorkspaceRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.GetNetworkConnectivityConfigurationRequest": {}, + "settings.GetNetworkPolicyRequest": {}, + "settings.GetNotificationDestinationRequest": {}, + "settings.GetPersonalComputeSettingRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.GetPrivateEndpointRuleRequest": {}, + "settings.GetRestrictWorkspaceAdminsSettingRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.GetSqlResultsDownloadRequest": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.GetStatusRequest": { + "fields": { + "keys": { + "launch_stage": "GA" + } + } + }, + "settings.GetTokenManagementRequest": {}, + "settings.GetTokenPermissionLevelsRequest": {}, + "settings.GetTokenPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "GA" + } + } + }, + "settings.GetTokenPermissionsRequest": {}, + "settings.GetTokenResponse": { + "description": "Token with specified Token ID was successfully returned.", + "fields": { + "token_info": { + "ref": "settings.TokenInfo", + "launch_stage": "GA" + } + } + }, + "settings.GetWorkspaceNetworkOptionRequest": {}, + "settings.GoogleApiEndpoints": { + "description": "Wrapper for a list of Google API hostnames. Wrapped in a message because\nproto3 oneof does not support repeated fields directly.", + "fields": { + "endpoints": { + "description": "Google API hostnames, e.g. \"storage.googleapis.com\",\n\"bigquery.googleapis.com\". Use \"googleapis.com\" to cover all Google APIs.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settings.IpAccessListInfo": { + "description": "Definition of an IP Access list", + "fields": { + "address_count": { + "description": "Total number of IP or CIDR values.", + "launch_stage": "GA" + }, + "created_at": { + "description": "Creation timestamp in milliseconds.", + "launch_stage": "GA" + }, + "created_by": { + "description": "User ID of the user who created this list.", + "launch_stage": "GA" + }, + "enabled": { + "description": "Specifies whether this IP access list is enabled.", + "launch_stage": "GA" + }, + "ip_addresses": { + "launch_stage": "GA" + }, + "label": { + "description": "Label for the IP access list. This **cannot** be empty.", + "launch_stage": "GA" + }, + "list_id": { + "description": "Universally unique identifier (UUID) of the IP access list.", + "launch_stage": "GA" + }, + "list_type": { + "ref": "settings.ListType", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Update timestamp in milliseconds.", + "launch_stage": "GA" + }, + "updated_by": { + "description": "User ID of the user who updated this list.", + "launch_stage": "GA" + } + } + }, + "settings.ListIpAccessListResponse": { + "description": "IP access lists were successfully returned.", + "fields": { + "ip_access_lists": { + "launch_stage": "GA" + } + } + }, + "settings.ListIpAccessLists": {}, + "settings.ListNetworkConnectivityConfigurationsRequest": { + "fields": { + "page_token": { + "description": "Pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "settings.ListNetworkConnectivityConfigurationsResponse": { + "description": "The network connectivity configuration list was successfully retrieved.", + "fields": { + "items": { + "launch_stage": "GA" + }, + "next_page_token": { + "description": "A token that can be used to get the next page of results. If null, there are no more results to show.", + "launch_stage": "GA" + } + } + }, + "settings.ListNetworkPoliciesRequest": { + "fields": { + "page_token": { + "description": "Pagination token to go to next page based on previous query.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settings.ListNetworkPoliciesResponse": { + "fields": { + "items": { + "description": "List of network policies.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "A token that can be used to get the next page of results. If null, there are no more results to show.", + "launch_stage": "GA" + } + } + }, + "settings.ListNotificationDestinationsRequest": { + "fields": { + "page_size": { + "launch_stage": "GA" + }, + "page_token": { + "launch_stage": "GA" + } + } + }, + "settings.ListNotificationDestinationsResponse": { + "fields": { + "next_page_token": { + "description": "Page token for next of results.", + "launch_stage": "GA" + }, + "results": { + "launch_stage": "GA" + } + } + }, + "settings.ListNotificationDestinationsResult": { + "fields": { + "destination_type": { + "description": "[Output-only] The type of the notification destination. The type can not be changed once set.", + "ref": "settings.DestinationType", + "launch_stage": "GA" + }, + "display_name": { + "description": "The display name for the notification destination.", + "launch_stage": "GA" + }, + "id": { + "description": "UUID identifying notification destination.", + "launch_stage": "GA" + } + } + }, + "settings.ListPrivateEndpointRulesRequest": { + "fields": { + "page_token": { + "description": "Pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "settings.ListPrivateEndpointRulesResponse": { + "description": "The private endpoint rule list was successfully retrieved.", + "fields": { + "items": { + "launch_stage": "GA" + }, + "next_page_token": { + "description": "A token that can be used to get the next page of results. If null, there are no more results to show.", + "launch_stage": "GA" + } + } + }, + "settings.ListPublicTokensResponse": { + "fields": { + "token_infos": { + "description": "The information for each token.", + "launch_stage": "GA" + } + } + }, + "settings.ListTokenManagementRequest": { + "fields": { + "created_by_id": { + "description": "User ID of the user that created the token.", + "launch_stage": "GA" + }, + "created_by_username": { + "description": "Username of the user that created the token.", + "launch_stage": "GA" + } + } + }, + "settings.ListTokens": {}, + "settings.ListTokensResponse": { + "description": "Tokens were successfully returned.", + "fields": { + "token_infos": { + "description": "Token metadata of each user-created token in the workspace", + "launch_stage": "GA" + } + } + }, + "settings.ListType": { + "description": "Type of IP access list. Valid values are as follows and are case-sensitive:\n\n* `ALLOW`: An allow list. Include this IP or range.\n* `BLOCK`: A block list. Exclude this IP or range. IP addresses in the block list are excluded even if they are included in an allow list.", + "enum": [ + "ALLOW", + "BLOCK" + ], + "enum_launch_stages": { + "ALLOW": "GA", + "BLOCK": "GA" + }, + "enum_descriptions": { + "ALLOW": "An allow list. Include this IP or range.", + "BLOCK": "A block list. Exclude this IP or range. IP addresses in the block list are excluded even if they are included in an allow list." + } + }, + "settings.LlmProxyPartnerPoweredAccount": { + "fields": { + "boolean_val": { + "ref": "settings.BooleanMessage", + "launch_stage": "PRIVATE_PREVIEW" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.LlmProxyPartnerPoweredEnforce": { + "fields": { + "boolean_val": { + "ref": "settings.BooleanMessage", + "launch_stage": "PRIVATE_PREVIEW" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.LlmProxyPartnerPoweredWorkspace": { + "fields": { + "boolean_val": { + "ref": "settings.BooleanMessage", + "launch_stage": "PRIVATE_PREVIEW" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.MicrosoftTeamsConfig": { + "fields": { + "app_id": { + "description": "[Input-Only] App ID for Microsoft Teams App.", + "launch_stage": "GA" + }, + "app_id_set": { + "description": "[Output-Only] Whether App ID is set.", + "launch_stage": "GA" + }, + "auth_secret": { + "description": "[Input-Only] Secret for Microsoft Teams App authentication.", + "launch_stage": "GA" + }, + "auth_secret_set": { + "description": "[Output-Only] Whether secret is set.", + "launch_stage": "GA" + }, + "channel_url": { + "description": "[Input-Only] Channel URL for Microsoft Teams App.", + "launch_stage": "GA" + }, + "channel_url_set": { + "description": "[Output-Only] Whether Channel URL is set.", + "launch_stage": "GA" + }, + "tenant_id": { + "description": "[Input-Only] Tenant ID for Microsoft Teams App.", + "launch_stage": "GA" + }, + "tenant_id_set": { + "description": "[Output-Only] Whether Tenant ID is set.", + "launch_stage": "GA" + }, + "url": { + "description": "[Input-Only] URL for Microsoft Teams webhook.", + "launch_stage": "GA" + }, + "url_set": { + "description": "[Output-Only] Whether URL is set.", + "launch_stage": "GA" + } + } + }, + "settings.NccAwsStableIpRule": { + "description": "The stable AWS IP CIDR blocks. You can use these to configure the firewall of your resources to allow traffic from your Databricks workspace.", + "fields": { + "cidr_blocks": { + "description": "The list of stable IP CIDR blocks from which Databricks network traffic originates when accessing your resources.", + "deprecated": true, + "launch_stage": "GA" + } + } + }, + "settings.NccAzurePrivateEndpointRule": { + "description": "Properties of the new private endpoint rule.\nNote that you must approve the endpoint in Azure portal after initialization.", + "fields": { + "connection_state": { + "description": "The current status of this private endpoint. The private endpoint rules are effective only if the connection state\nis ESTABLISHED. Remember that you must approve new endpoints on your resources in the Azure portal\nbefore they take effect.\nThe possible values are:\n- INIT: (deprecated) The endpoint has been created and pending approval.\n- PENDING: The endpoint has been created and pending approval.\n- ESTABLISHED: The endpoint has been approved and is ready to use in your serverless compute resources.\n- REJECTED: Connection was rejected by the private link resource owner.\n- DISCONNECTED: Connection was removed by the private link resource owner, the private endpoint becomes informative and should be deleted for clean-up.\n- EXPIRED: If the endpoint was created but not approved in 14 days, it will be EXPIRED.", + "ref": "settings.NccAzurePrivateEndpointRuleConnectionState", + "launch_stage": "GA" + }, + "creation_time": { + "description": "Time in epoch milliseconds when this object was created.", + "launch_stage": "GA" + }, + "deactivated": { + "description": "Whether this private endpoint is deactivated.", + "launch_stage": "GA" + }, + "deactivated_at": { + "description": "Time in epoch milliseconds when this object was deactivated.", + "launch_stage": "GA" + }, + "domain_names": { + "description": "Not used by customer-managed private endpoint services.\n\nDomain names of target private link service.\nWhen updating this field, the full list of target domain_names must be specified.", + "launch_stage": "GA" + }, + "endpoint_name": { + "description": "The name of the Azure private endpoint resource.", + "launch_stage": "GA" + }, + "error_message": { + "launch_stage": "GA" + }, + "group_id": { + "description": "Only used by private endpoints to Azure first-party services.\n\nThe sub-resource type (group ID) of the target resource.\nNote that to connect to workspace root storage (root DBFS), you need two endpoints, one for blob and one for dfs.", + "launch_stage": "GA" + }, + "network_connectivity_config_id": { + "description": "The ID of a network connectivity configuration, which is the parent resource of this private endpoint rule object.", + "launch_stage": "GA" + }, + "resource_id": { + "description": "The Azure resource ID of the target resource.", + "launch_stage": "GA" + }, + "rule_id": { + "description": "The ID of a private endpoint rule.", + "launch_stage": "GA" + }, + "updated_time": { + "description": "Time in epoch milliseconds when this object was updated.", + "launch_stage": "GA" + } + } + }, + "settings.NccAzurePrivateEndpointRuleConnectionState": { + "enum": [ + "INIT", + "ESTABLISHED", + "REJECTED", + "DISCONNECTED", + "EXPIRED", + "PENDING", + "CREATING", + "CREATE_FAILED" + ], + "enum_launch_stages": { + "CREATE_FAILED": "GA", + "CREATING": "GA", + "DISCONNECTED": "GA", + "ESTABLISHED": "GA", + "EXPIRED": "GA", + "INIT": "GA", + "PENDING": "GA", + "REJECTED": "GA" + } + }, + "settings.NccAzureServiceEndpointRule": { + "description": "The stable Azure service endpoints. You can configure the firewall of your Azure resources\nto allow traffic from your Databricks serverless compute resources.", + "fields": { + "subnets": { + "description": "The list of subnets from which Databricks network traffic originates when accessing your Azure resources.", + "deprecated": true, + "launch_stage": "GA" + }, + "target_region": { + "description": "The Azure region in which this service endpoint rule applies..", + "deprecated": true, + "launch_stage": "GA" + }, + "target_services": { + "description": "The Azure services to which this service endpoint rule applies to.", + "deprecated": true, + "launch_stage": "GA" + } + } + }, + "settings.NccEgressConfig": { + "fields": { + "default_rules": { + "description": "The network connectivity rules that are applied by default without resource specific configurations.\nYou can find the stable network information of your serverless compute resources here.", + "ref": "settings.NccEgressDefaultRules", + "launch_stage": "GA" + }, + "target_rules": { + "description": "The network connectivity rules that configured for each destinations. These rules override default rules.", + "ref": "settings.NccEgressTargetRules", + "launch_stage": "GA" + } + } + }, + "settings.NccEgressDefaultRules": { + "description": "Default rules don't have specific targets.", + "fields": { + "aws_stable_ip_rule": { + "ref": "settings.NccAwsStableIpRule", + "deprecated": true, + "launch_stage": "GA" + }, + "azure_service_endpoint_rule": { + "ref": "settings.NccAzureServiceEndpointRule", + "deprecated": true, + "launch_stage": "GA" + } + } + }, + "settings.NccEgressTargetRules": { + "description": "Target rule controls the egress rules that are dedicated to specific resources.", + "fields": { + "aws_private_endpoint_rules": { + "description": "AWS private endpoint rule controls the AWS private endpoint based egress rules.", + "launch_stage": "GA" + }, + "azure_private_endpoint_rules": { + "launch_stage": "GA" + } + } + }, + "settings.NccPrivateEndpointRule": { + "description": "Properties of the new private endpoint rule.\nNote that you must approve the endpoint in Azure portal after initialization.", + "fields": { + "account_id": { + "description": "Databricks account ID. You can find your account ID from the Accounts Console.", + "launch_stage": "GA" + }, + "connection_state": { + "description": "The current status of this private endpoint. The private endpoint rules are effective only if the connection state\nis ESTABLISHED. Remember that you must approve new endpoints on your resources in the Cloud console\nbefore they take effect.\nThe possible values are:\n- PENDING: The endpoint has been created and pending approval.\n- ESTABLISHED: The endpoint has been approved and is ready to use in your serverless compute resources.\n- REJECTED: Connection was rejected by the private link resource owner.\n- DISCONNECTED: Connection was removed by the private link resource owner, the private endpoint becomes informative and should be deleted for clean-up.\n- EXPIRED: If the endpoint was created but not approved in 14 days, it will be EXPIRED.\n- CREATING: The endpoint creation is in progress. Once successfully created, the state will transition to PENDING.\n- CREATE_FAILED: The endpoint creation failed. You can check the error_message field for more details.", + "ref": "settings.NccPrivateEndpointRulePrivateLinkConnectionState", + "launch_stage": "GA" + }, + "creation_time": { + "description": "Time in epoch milliseconds when this object was created.", + "launch_stage": "GA" + }, + "deactivated": { + "description": "Whether this private endpoint is deactivated.", + "launch_stage": "GA" + }, + "deactivated_at": { + "description": "Time in epoch milliseconds when this object was deactivated.", + "launch_stage": "GA" + }, + "domain_names": { + "description": "Only used by private endpoints to customer-managed private endpoint services.\n\nDomain names of target private link service.\nWhen updating this field, the full list of target domain_names must be specified.", + "launch_stage": "GA" + }, + "enabled": { + "description": "Update this field to activate/deactivate this private endpoint to allow egress access from\nserverless compute resources. Only honored for first-party services on each cloud (e.g. AWS S3).", + "launch_stage": "GA" + }, + "endpoint_name": { + "description": "The name of the Azure private endpoint resource.", + "launch_stage": "GA" + }, + "endpoint_service": { + "description": "The full target AWS endpoint service name that connects to the destination resources of the private endpoint.", + "launch_stage": "GA" + }, + "error_message": { + "launch_stage": "GA" + }, + "gcp_endpoint": { + "ref": "settings.GcpEndpoint", + "launch_stage": "GA" + }, + "group_id": { + "description": "Not used by customer-managed private endpoint services.\n\nThe sub-resource type (group ID) of the target resource.\nNote that to connect to workspace root storage (root DBFS), you need two endpoints, one for blob and one for dfs.", + "launch_stage": "GA" + }, + "network_connectivity_config_id": { + "description": "The ID of a network connectivity configuration, which is the parent resource of this private endpoint rule object.", + "launch_stage": "GA" + }, + "resource_id": { + "description": "The Azure resource ID of the target resource.", + "launch_stage": "GA" + }, + "resource_names": { + "description": "Only used by private endpoints towards AWS S3 service.\n\nThe globally unique S3 bucket names that will be accessed via the VPC endpoint.\nThe bucket names must be in the same region as the NCC/endpoint service.\nWhen updating this field, we perform full update on this field. Please ensure a full list of desired\nresource_names is provided.", + "launch_stage": "GA" + }, + "rule_id": { + "description": "The ID of a private endpoint rule.", + "launch_stage": "GA" + }, + "updated_time": { + "description": "Time in epoch milliseconds when this object was updated.", + "launch_stage": "GA" + }, + "vpc_endpoint_id": { + "description": "The AWS VPC endpoint ID. You can use this ID to identify the VPC endpoint created by Databricks.", + "launch_stage": "GA" + } + } + }, + "settings.NccPrivateEndpointRulePrivateLinkConnectionState": { + "enum": [ + "ESTABLISHED", + "REJECTED", + "DISCONNECTED", + "EXPIRED", + "PENDING", + "CREATING", + "CREATE_FAILED" + ], + "enum_launch_stages": { + "CREATE_FAILED": "GA", + "CREATING": "GA", + "DISCONNECTED": "GA", + "ESTABLISHED": "GA", + "EXPIRED": "GA", + "PENDING": "GA", + "REJECTED": "GA" + } + }, + "settings.NetworkConnectivityConfiguration": { + "description": "Properties of the new network connectivity configuration.", + "fields": { + "account_id": { + "description": "Your Databricks account ID. You can find your account ID in your Databricks accounts console.", + "launch_stage": "GA" + }, + "creation_time": { + "description": "Time in epoch milliseconds when this object was created.", + "launch_stage": "GA" + }, + "egress_config": { + "description": "The network connectivity rules that apply to network traffic from your serverless compute resources.", + "ref": "settings.NccEgressConfig", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the network connectivity configuration. The name can contain alphanumeric characters, hyphens,\nand underscores. The length must be between 3 and 30 characters. The name must match the regular\nexpression ^[0-9a-zA-Z-_]{3,30}$", + "launch_stage": "GA" + }, + "network_connectivity_config_id": { + "description": "Databricks network connectivity configuration ID.", + "launch_stage": "GA" + }, + "region": { + "description": "The region for the network connectivity configuration.\nOnly workspaces in the same region can be attached to the network connectivity configuration.", + "launch_stage": "GA" + }, + "updated_time": { + "description": "Time in epoch milliseconds when this object was updated.", + "launch_stage": "GA" + } + } + }, + "settings.NetworkPolicyEgress": { + "description": "The network policies applying for egress traffic.", + "fields": { + "network_access": { + "description": "The access policy enforced for egress traffic to the internet.", + "ref": "settings.EgressNetworkPolicyNetworkAccessPolicy", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settings.NotificationDestination": { + "fields": { + "config": { + "description": "The configuration for the notification destination. Will be exactly one of the nested configs. Only returns for users with workspace admin permissions.", + "ref": "settings.Config", + "launch_stage": "GA" + }, + "destination_type": { + "description": "[Output-only] The type of the notification destination. The type can not be changed once set.", + "ref": "settings.DestinationType", + "launch_stage": "GA" + }, + "display_name": { + "description": "The display name for the notification destination.", + "launch_stage": "GA" + }, + "id": { + "description": "UUID identifying notification destination.", + "launch_stage": "GA" + } + } + }, + "settings.PagerdutyConfig": { + "fields": { + "integration_key": { + "description": "[Input-Only] Integration key for PagerDuty.", + "launch_stage": "GA" + }, + "integration_key_set": { + "description": "[Output-Only] Whether integration key is set.", + "launch_stage": "GA" + } + } + }, + "settings.PartitionId": { + "description": "Partition by workspace or account", + "fields": { + "workspaceId": { + "description": "The ID of the workspace.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.PersonalComputeMessage": { + "fields": { + "value": { + "ref": "settings.PersonalComputeMessageEnum", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.PersonalComputeMessageEnum": { + "description": "ON: Grants all users in all workspaces access to the Personal Compute default policy, allowing all users to create single-machine compute resources.\nDELEGATE: Moves access control for the Personal Compute default policy to individual workspaces and requires a workspace’s users or groups to be added to the ACLs of that workspace’s Personal Compute default policy before they will be able to create compute resources through that policy.", + "enum": [ + "ON", + "DELEGATE" + ], + "enum_launch_stages": { + "DELEGATE": "PRIVATE_PREVIEW", + "ON": "PRIVATE_PREVIEW" + } + }, + "settings.PersonalComputeSetting": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "personal_compute": { + "ref": "settings.PersonalComputeMessage", + "launch_stage": "PRIVATE_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.PublicTokenInfo": { + "fields": { + "autoscope_state": { + "description": "Output only. The autoscope state of this token.", + "ref": "iam.AutoscopeState", + "launch_stage": "PRIVATE_PREVIEW" + }, + "backfill_scopes": { + "description": "Output only. Scopes inferred from offline backfill processing.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "comment": { + "description": "Comment the token was created with, if applicable.", + "launch_stage": "GA" + }, + "creation_time": { + "description": "Server time (in epoch milliseconds) when the token was created.", + "launch_stage": "GA" + }, + "expiry_time": { + "description": "Server time (in epoch milliseconds) when the token will expire, or -1 if not applicable.", + "launch_stage": "GA" + }, + "inferred_scopes": { + "description": "Output only. Inferred API path scopes collected for this token when autoscope is enabled.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "scopes": { + "description": "Scope of the token was created with, if applicable.", + "launch_stage": "GA" + }, + "token_id": { + "description": "The ID of this token.", + "launch_stage": "GA" + } + } + }, + "settings.ReplaceIpAccessList": { + "description": "Details required to replace an IP access list.", + "fields": { + "enabled": { + "description": "Specifies whether this IP access list is enabled.", + "launch_stage": "GA" + }, + "ip_addresses": { + "launch_stage": "GA" + }, + "label": { + "description": "Label for the IP access list. This **cannot** be empty.", + "launch_stage": "GA" + }, + "list_type": { + "ref": "settings.ListType", + "launch_stage": "GA" + } + } + }, + "settings.RestrictWorkspaceAdminsMessage": { + "fields": { + "disable_gov_tag_creation": { + "description": "When true, workspace admins cannot create governance tags.\nALLOW_ALL status does not override this; they are independent.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "status": { + "ref": "settings.RestrictWorkspaceAdminsMessageStatus", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settings.RestrictWorkspaceAdminsMessageStatus": { + "enum": [ + "ALLOW_ALL", + "RESTRICT_TOKENS_AND_JOB_RUN_AS" + ], + "enum_launch_stages": { + "ALLOW_ALL": "PUBLIC_PREVIEW", + "RESTRICT_TOKENS_AND_JOB_RUN_AS": "PUBLIC_PREVIEW" + } + }, + "settings.RestrictWorkspaceAdminsSetting": { + "fields": { + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "restrict_workspace_admins": { + "ref": "settings.RestrictWorkspaceAdminsMessage", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.RevokeTokenRequest": { + "fields": { + "token_id": { + "description": "The ID of the token to be revoked.", + "launch_stage": "GA" + } + } + }, + "settings.RevokeTokenResponse": {}, + "settings.SlackConfig": { + "fields": { + "channel_id": { + "description": "[Input-Only] Slack channel ID for notifications.", + "launch_stage": "GA" + }, + "channel_id_set": { + "description": "[Output-Only] Whether channel ID is set.", + "launch_stage": "GA" + }, + "oauth_token": { + "description": "[Input-Only] OAuth token for Slack authentication.", + "launch_stage": "GA" + }, + "oauth_token_set": { + "description": "[Output-Only] Whether OAuth token is set.", + "launch_stage": "GA" + }, + "url": { + "description": "[Input-Only] URL for Slack destination.", + "launch_stage": "GA" + }, + "url_set": { + "description": "[Output-Only] Whether URL is set.", + "launch_stage": "GA" + } + } + }, + "settings.SqlResultsDownload": { + "fields": { + "boolean_val": { + "ref": "settings.BooleanMessage", + "launch_stage": "PUBLIC_PREVIEW" + }, + "etag": { + "description": "etag used for versioning. The response is at least as fresh as the eTag provided.\nThis is used for optimistic concurrency control as a way to help prevent simultaneous\nwrites of a setting overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e update pattern to perform setting updates in\norder to avoid race conditions. That is, get an etag from a GET request, and pass it\nwith the PATCH request to identify the setting version you are updating.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting_name": { + "description": "Name of the corresponding setting. This field is populated in the response, but it will not be respected\neven if it's set in the request body. The setting name in the path parameter will be\nrespected instead. Setting name is required to be 'default' if the setting only has one instance per workspace.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.StringMessage": { + "fields": { + "value": { + "description": "Represents a generic string value.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settings.TokenAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "settings.TokenPermissionLevel", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "settings.TokenAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "settings.TokenInfo": { + "fields": { + "autoscope_state": { + "description": "Output only. The autoscope state of this token.", + "ref": "iam.AutoscopeState", + "launch_stage": "PRIVATE_PREVIEW" + }, + "backfill_scopes": { + "description": "Output only. Scopes inferred from offline backfill processing.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "comment": { + "description": "Comment that describes the purpose of the token, specified by the token creator.", + "launch_stage": "GA" + }, + "created_by_id": { + "description": "User ID of the user that created the token.", + "launch_stage": "GA" + }, + "created_by_username": { + "description": "Username of the user that created the token.", + "launch_stage": "GA" + }, + "creation_time": { + "description": "Timestamp when the token was created.", + "launch_stage": "GA" + }, + "expiry_time": { + "description": "Timestamp when the token expires.", + "launch_stage": "GA" + }, + "inferred_scopes": { + "description": "Output only. Inferred API path scopes collected for this token when autoscope is enabled.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "last_used_day": { + "description": "Approximate timestamp for the day the token was last used. Accurate up to 1 day.", + "launch_stage": "GA" + }, + "owner_id": { + "description": "User ID of the user that owns the token.", + "launch_stage": "GA" + }, + "scopes": { + "description": "Scope of the token was created with, if applicable.", + "launch_stage": "GA" + }, + "token_id": { + "description": "ID of the token.", + "launch_stage": "GA" + }, + "workspace_id": { + "description": "If applicable, the ID of the workspace that the token was created in.", + "launch_stage": "GA" + } + } + }, + "settings.TokenPermission": { + "fields": { + "inherited": { + "launch_stage": "GA" + }, + "inherited_from_object": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "settings.TokenPermissionLevel", + "launch_stage": "GA" + } + } + }, + "settings.TokenPermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_USE" + ] + }, + "settings.TokenPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "launch_stage": "GA" + }, + "object_type": { + "launch_stage": "GA" + } + } + }, + "settings.TokenPermissionsDescription": { + "fields": { + "description": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "settings.TokenPermissionLevel", + "launch_stage": "GA" + } + } + }, + "settings.TokenPermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "settings.TokenType": { + "description": "The type of token request. As of now, only `AZURE_ACTIVE_DIRECTORY_TOKEN` is supported.", + "enum": [ + "AZURE_ACTIVE_DIRECTORY_TOKEN", + "ARCLIGHT_AZURE_EXCHANGE_TOKEN", + "ARCLIGHT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY", + "ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN", + "ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY" + ], + "enum_launch_stages": { + "ARCLIGHT_AZURE_EXCHANGE_TOKEN": "PRIVATE_PREVIEW", + "ARCLIGHT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY": "PRIVATE_PREVIEW", + "ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN": "PRIVATE_PREVIEW", + "ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY": "PRIVATE_PREVIEW", + "AZURE_ACTIVE_DIRECTORY_TOKEN": "PRIVATE_PREVIEW" + } + }, + "settings.UpdateAccountIpAccessEnableRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "setting": { + "ref": "settings.AccountIpAccessEnable", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.UpdateAibiDashboardEmbeddingAccessPolicySettingRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting": { + "ref": "settings.AibiDashboardEmbeddingAccessPolicySetting", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.UpdateAibiDashboardEmbeddingApprovedDomainsSettingRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting": { + "ref": "settings.AibiDashboardEmbeddingApprovedDomainsSetting", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.UpdateAutomaticClusterUpdateSettingRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting": { + "ref": "settings.AutomaticClusterUpdateSetting", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.UpdateComplianceSecurityProfileSettingRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting": { + "ref": "settings.ComplianceSecurityProfileSetting", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.UpdateCspEnablementAccountSettingRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting": { + "ref": "settings.CspEnablementAccountSetting", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.UpdateDashboardEmailSubscriptionsRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting": { + "ref": "settings.DashboardEmailSubscriptions", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.UpdateDefaultNamespaceSettingRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting": { + "ref": "settings.DefaultNamespaceSetting", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.UpdateDefaultWarehouseIdRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "setting": { + "ref": "settings.DefaultWarehouseId", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.UpdateDisableLegacyAccessRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "GA" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "GA" + }, + "setting": { + "ref": "settings.DisableLegacyAccess", + "launch_stage": "GA" + } + } + }, + "settings.UpdateDisableLegacyDbfsRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "GA" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "GA" + }, + "setting": { + "ref": "settings.DisableLegacyDbfs", + "launch_stage": "GA" + } + } + }, + "settings.UpdateDisableLegacyFeaturesRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "GA" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "GA" + }, + "setting": { + "ref": "settings.DisableLegacyFeatures", + "launch_stage": "GA" + } + } + }, + "settings.UpdateEnableExportNotebookRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting": { + "ref": "settings.EnableExportNotebook", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.UpdateEnableNotebookTableClipboardRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting": { + "ref": "settings.EnableNotebookTableClipboard", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.UpdateEnableResultsDownloadingRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting": { + "ref": "settings.EnableResultsDownloading", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.UpdateEnhancedSecurityMonitoringSettingRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting": { + "ref": "settings.EnhancedSecurityMonitoringSetting", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.UpdateEsmEnablementAccountSettingRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting": { + "ref": "settings.EsmEnablementAccountSetting", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.UpdateIpAccessList": { + "description": "Details required to update an IP access list.", + "fields": { + "enabled": { + "description": "Specifies whether this IP access list is enabled.", + "launch_stage": "GA" + }, + "ip_addresses": { + "launch_stage": "GA" + }, + "label": { + "description": "Label for the IP access list. This **cannot** be empty.", + "launch_stage": "GA" + }, + "list_type": { + "ref": "settings.ListType", + "launch_stage": "GA" + } + } + }, + "settings.UpdateLlmProxyPartnerPoweredAccountRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "setting": { + "ref": "settings.LlmProxyPartnerPoweredAccount", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.UpdateLlmProxyPartnerPoweredEnforceRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "setting": { + "ref": "settings.LlmProxyPartnerPoweredEnforce", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.UpdateLlmProxyPartnerPoweredWorkspaceRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "setting": { + "ref": "settings.LlmProxyPartnerPoweredWorkspace", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.UpdateNccPrivateEndpointRuleRequest": { + "fields": { + "private_endpoint_rule": { + "ref": "settings.UpdatePrivateEndpointRule", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.", + "launch_stage": "GA" + } + } + }, + "settings.UpdateNetworkPolicyRequest": { + "fields": { + "network_policy": { + "description": "Updated network policy configuration details.", + "ref": "settings.AccountNetworkPolicy", + "launch_stage": "GA" + } + } + }, + "settings.UpdateNotificationDestinationRequest": { + "fields": { + "config": { + "description": "The configuration for the notification destination. Must wrap EXACTLY one of the nested configs.", + "ref": "settings.Config", + "launch_stage": "GA" + }, + "display_name": { + "description": "The display name for the notification destination.", + "launch_stage": "GA" + } + } + }, + "settings.UpdatePersonalComputeSettingRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "setting": { + "ref": "settings.PersonalComputeSetting", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "settings.UpdatePrivateEndpointRule": { + "description": "Properties of the new private endpoint rule.\nNote that you must approve the endpoint in Azure portal after initialization.", + "fields": { + "domain_names": { + "description": "Only used by private endpoints to customer-managed private endpoint services.\n\nDomain names of target private link service.\nWhen updating this field, the full list of target domain_names must be specified.", + "launch_stage": "GA" + }, + "enabled": { + "description": "Update this field to activate/deactivate this private endpoint to allow egress access from\nserverless compute resources. Only honored for first-party services on each cloud (e.g. AWS S3).", + "launch_stage": "GA" + }, + "error_message": { + "launch_stage": "GA" + }, + "gcp_endpoint": { + "ref": "settings.GcpEndpoint", + "launch_stage": "GA" + }, + "resource_names": { + "description": "Only used by private endpoints towards AWS S3 service.\n\nThe globally unique S3 bucket names that will be accessed via the VPC endpoint.\nThe bucket names must be in the same region as the NCC/endpoint service.\nWhen updating this field, we perform full update on this field. Please ensure a full list of desired\nresource_names is provided.", + "launch_stage": "GA" + } + } + }, + "settings.UpdateRestrictWorkspaceAdminsSettingRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting": { + "ref": "settings.RestrictWorkspaceAdminsSetting", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.UpdateSqlResultsDownloadRequest": { + "description": "Details required to update a setting.", + "fields": { + "allow_missing": { + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "field_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "setting": { + "ref": "settings.SqlResultsDownload", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "settings.UpdateTokenManagementRequest": { + "description": "For the list of supported token scopes, see\nhttps://docs.databricks.com/api/workspace/api/scopes.", + "fields": { + "token": { + "ref": "settings.TokenInfo", + "launch_stage": "GA" + }, + "update_mask": { + "description": "A list of field name under token, For example, {\"update_mask\": \"comment,scopes\"}\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "GA" + } + } + }, + "settings.UpdateTokenRequest": { + "description": "For the list of supported token scopes, see\nhttps://docs.databricks.com/api/workspace/api/scopes.", + "fields": { + "token": { + "ref": "settings.PublicTokenInfo", + "launch_stage": "GA" + }, + "update_mask": { + "description": "A list of field name under token, For example, {\"update_mask\": \"comment,scopes\"}\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "GA" + } + } + }, + "settings.UpdateTokenResponse": {}, + "settings.UpdateWorkspaceNetworkOptionRequest": { + "fields": { + "workspace_network_option": { + "description": "The network option details for the workspace.", + "ref": "settings.WorkspaceNetworkOption", + "launch_stage": "GA" + } + } + }, + "settings.WorkspaceConf": {}, + "settings.WorkspaceNetworkOption": { + "fields": { + "network_policy_id": { + "description": "The network policy ID to apply to the workspace. This controls the network access rules\nfor all serverless compute resources in the workspace. Each workspace can only be\nlinked to one policy at a time. If no policy is explicitly assigned,\nthe workspace will use 'default-policy'.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "workspace_id": { + "description": "The workspace ID.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.AibiDashboardEmbeddingAccessPolicy": { + "fields": { + "access_policy_type": { + "ref": "settingsv2.AibiDashboardEmbeddingAccessPolicyAccessPolicyType", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.AibiDashboardEmbeddingAccessPolicyAccessPolicyType": { + "enum": [ + "ALLOW_ALL_DOMAINS", + "ALLOW_APPROVED_DOMAINS", + "DENY_ALL_DOMAINS" + ], + "enum_launch_stages": { + "ALLOW_ALL_DOMAINS": "GA", + "ALLOW_APPROVED_DOMAINS": "GA", + "DENY_ALL_DOMAINS": "GA" + } + }, + "settingsv2.AibiDashboardEmbeddingApprovedDomains": { + "fields": { + "approved_domains": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.AllowedAppsUserApiScopesMessage": { + "fields": { + "allowed_scopes": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.BooleanMessage": { + "fields": { + "value": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.ClusterAutoRestartMessage": { + "fields": { + "can_toggle": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "enabled": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "enablement_details": { + "ref": "settingsv2.ClusterAutoRestartMessageEnablementDetails", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "maintenance_window": { + "ref": "settingsv2.ClusterAutoRestartMessageMaintenanceWindow", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "restart_even_if_no_updates_available": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.ClusterAutoRestartMessageEnablementDetails": { + "description": "Contains an information about the enablement status judging (e.g. whether the enterprise tier\nis enabled)\nThis is only additional information that MUST NOT be used to decide whether the setting is\nenabled or not. This is intended to use only for purposes like showing an error message to\nthe customer with the additional details. For example, using these details we can check\nwhy exactly the feature is disabled for this customer.", + "fields": { + "forced_for_compliance_mode": { + "description": "The feature is force enabled if compliance mode is active", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "unavailable_for_disabled_entitlement": { + "description": "The feature is unavailable if the corresponding entitlement disabled (see getShieldEntitlementEnable)", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "unavailable_for_non_enterprise_tier": { + "description": "The feature is unavailable if the customer doesn't have enterprise tier", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.ClusterAutoRestartMessageMaintenanceWindow": { + "fields": { + "week_day_based_schedule": { + "ref": "settingsv2.ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.ClusterAutoRestartMessageMaintenanceWindowDayOfWeek": { + "enum": [ + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enum_launch_stages": { + "FRIDAY": "GA", + "MONDAY": "GA", + "SATURDAY": "GA", + "SUNDAY": "GA", + "THURSDAY": "GA", + "TUESDAY": "GA", + "WEDNESDAY": "GA" + } + }, + "settingsv2.ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule": { + "fields": { + "day_of_week": { + "ref": "settingsv2.ClusterAutoRestartMessageMaintenanceWindowDayOfWeek", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "frequency": { + "ref": "settingsv2.ClusterAutoRestartMessageMaintenanceWindowWeekDayFrequency", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "window_start_time": { + "ref": "settingsv2.ClusterAutoRestartMessageMaintenanceWindowWindowStartTime", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.ClusterAutoRestartMessageMaintenanceWindowWeekDayFrequency": { + "enum": [ + "FIRST_OF_MONTH", + "SECOND_OF_MONTH", + "THIRD_OF_MONTH", + "FOURTH_OF_MONTH", + "FIRST_AND_THIRD_OF_MONTH", + "SECOND_AND_FOURTH_OF_MONTH", + "EVERY_WEEK" + ], + "enum_launch_stages": { + "EVERY_WEEK": "GA", + "FIRST_AND_THIRD_OF_MONTH": "GA", + "FIRST_OF_MONTH": "GA", + "FOURTH_OF_MONTH": "GA", + "SECOND_AND_FOURTH_OF_MONTH": "GA", + "SECOND_OF_MONTH": "GA", + "THIRD_OF_MONTH": "GA" + } + }, + "settingsv2.ClusterAutoRestartMessageMaintenanceWindowWindowStartTime": { + "fields": { + "hours": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "minutes": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.CollaborationPlatformConnectivityMessage": { + "description": "Controls which external collaboration platforms (Slack, Microsoft Teams) can connect\nto a workspace. Defaults to ALLOW_ALL.", + "fields": { + "connectivity": { + "ref": "settingsv2.CollaborationPlatformConnectivityMessageConnectivity", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.CollaborationPlatformConnectivityMessageConnectivity": { + "enum": [ + "ALLOW_ALL", + "ALLOW_TEAMS", + "ALLOW_SLACK", + "DENY_ALL" + ], + "enum_launch_stages": { + "ALLOW_ALL": "PRIVATE_PREVIEW", + "ALLOW_SLACK": "PRIVATE_PREVIEW", + "ALLOW_TEAMS": "PRIVATE_PREVIEW", + "DENY_ALL": "PRIVATE_PREVIEW" + } + }, + "settingsv2.GetPublicAccountSettingRequest": {}, + "settingsv2.GetPublicAccountUserPreferenceRequest": {}, + "settingsv2.GetPublicWorkspaceSettingRequest": {}, + "settingsv2.IntegerMessage": { + "fields": { + "value": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.ListAccountSettingsMetadataRequest": { + "fields": { + "page_size": { + "description": "The maximum number of settings to return. The service may return fewer than this value.\nIf unspecified, at most 200 settings will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "launch_stage": "GA" + }, + "page_token": { + "description": "A page token, received from a previous `ListAccountSettingsMetadataRequest` call.\nProvide this to retrieve the subsequent page.\n\nWhen paginating, all other parameters provided to `ListAccountSettingsMetadataRequest` must match\nthe call that provided the page token.", + "launch_stage": "GA" + } + } + }, + "settingsv2.ListAccountSettingsMetadataResponse": { + "fields": { + "next_page_token": { + "description": "A token that can be sent as `page_token` to retrieve the next page.\nIf this field is omitted, there are no subsequent pages.", + "launch_stage": "GA" + }, + "settings_metadata": { + "description": "List of all settings available via public APIs and their metadata", + "launch_stage": "GA" + } + } + }, + "settingsv2.ListAccountUserPreferencesMetadataRequest": { + "fields": { + "page_size": { + "description": "The maximum number of settings to return. The service may return fewer than this value.\nIf unspecified, at most 200 settings will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous `ListAccountUserPreferencesMetadataRequest` call.\nProvide this to retrieve the subsequent page.\n\nWhen paginating, all other parameters provided to `ListAccountUserPreferencesMetadataRequest` must match\nthe call that provided the page token.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.ListAccountUserPreferencesMetadataResponse": { + "fields": { + "next_page_token": { + "description": "A token that can be sent as `page_token` to retrieve the next page.\nIf this field is omitted, there are no subsequent pages.", + "launch_stage": "PUBLIC_BETA" + }, + "settings_metadata": { + "description": "List of all settings available via public APIs and their metadata", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settingsv2.ListWorkspaceSettingsMetadataRequest": { + "fields": { + "page_size": { + "description": "The maximum number of settings to return. The service may return fewer than this value.\nIf unspecified, at most 200 settings will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "launch_stage": "GA" + }, + "page_token": { + "description": "A page token, received from a previous `ListWorkspaceSettingsMetadataRequest` call.\nProvide this to retrieve the subsequent page.\n\nWhen paginating, all other parameters provided to `ListWorkspaceSettingsMetadataRequest` must match\nthe call that provided the page token.", + "launch_stage": "GA" + } + } + }, + "settingsv2.ListWorkspaceSettingsMetadataResponse": { + "fields": { + "next_page_token": { + "description": "A token that can be sent as `page_token` to retrieve the next page.\nIf this field is omitted, there are no subsequent pages.", + "launch_stage": "GA" + }, + "settings_metadata": { + "description": "List of all settings available via public APIs and their metadata", + "launch_stage": "GA" + } + } + }, + "settingsv2.OperationalEmailCustomRecipientMessage": { + "fields": { + "email": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.PatchPublicAccountSettingRequest": { + "fields": { + "setting": { + "ref": "settingsv2.Setting", + "launch_stage": "GA" + } + } + }, + "settingsv2.PatchPublicAccountUserPreferenceRequest": { + "fields": { + "setting": { + "ref": "settingsv2.UserPreference", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settingsv2.PatchPublicWorkspaceSettingRequest": { + "fields": { + "setting": { + "ref": "settingsv2.Setting", + "launch_stage": "GA" + } + } + }, + "settingsv2.PersonalComputeMessage": { + "fields": { + "value": { + "ref": "settingsv2.PersonalComputeMessagePersonalComputeMessageEnum", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.PersonalComputeMessagePersonalComputeMessageEnum": { + "description": "ON: Grants all users in all workspaces access to the Personal Compute default policy, allowing all users to create single-machine compute resources.\nDELEGATE: Moves access control for the Personal Compute default policy to individual workspaces and requires a workspace’s users or groups to be added to the ACLs of that workspace’s Personal Compute default policy before they will be able to create compute resources through that policy.", + "enum": [ + "ON", + "DELEGATE" + ], + "enum_launch_stages": { + "DELEGATE": "GA", + "ON": "GA" + } + }, + "settingsv2.PreviewPhase": { + "description": "Preview phase for settings that are feature previews.\nFor settings that are not feature previews, the preview_phase field is left unset.\nMirrors only the customer-facing phases surfaced in the UI; internal-only phases\n(DISABLED, DEV, UNDER_MIGRATION, LAUNCHED, etc.) are not exposed here.", + "enum": [ + "PRIVATE_PREVIEW", + "PUBLIC_PREVIEW", + "BETA", + "GA_SOON", + "GA" + ], + "enum_launch_stages": { + "BETA": "PUBLIC_BETA", + "GA": "PUBLIC_BETA", + "GA_SOON": "PUBLIC_BETA", + "PRIVATE_PREVIEW": "PUBLIC_BETA", + "PUBLIC_PREVIEW": "PUBLIC_BETA" + } + }, + "settingsv2.RestrictWorkspaceAdminsMessage": { + "fields": { + "disable_gov_tag_creation": { + "description": "When true, workspace admins cannot create governance tags.\nALLOW_ALL status does not override this; they are independent.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "status": { + "ref": "settingsv2.RestrictWorkspaceAdminsMessageStatus", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.RestrictWorkspaceAdminsMessageStatus": { + "enum": [ + "ALLOW_ALL", + "RESTRICT_TOKENS_AND_JOB_RUN_AS" + ], + "enum_launch_stages": { + "ALLOW_ALL": "GA", + "RESTRICT_TOKENS_AND_JOB_RUN_AS": "GA" + } + }, + "settingsv2.Setting": { + "fields": { + "aibi_dashboard_embedding_access_policy": { + "description": "Setting value for aibi_dashboard_embedding_access_policy setting. This is the setting value set by consumers, check effective_aibi_dashboard_embedding_access_policy for final setting value.", + "ref": "settingsv2.AibiDashboardEmbeddingAccessPolicy", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "aibi_dashboard_embedding_approved_domains": { + "description": "Setting value for aibi_dashboard_embedding_approved_domains setting. This is the setting value set by consumers, check effective_aibi_dashboard_embedding_approved_domains for final setting value.", + "ref": "settingsv2.AibiDashboardEmbeddingApprovedDomains", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "allowed_apps_user_api_scopes": { + "description": "Setting value for allowed_apps_user_api_scopes setting. This is the setting value set by consumers, check effective_allowed_apps_user_api_scopes for final setting value.", + "ref": "settingsv2.AllowedAppsUserApiScopesMessage", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "automatic_cluster_update_workspace": { + "description": "Setting value for automatic_cluster_update_workspace setting. This is the setting value set by consumers, check effective_automatic_cluster_update_workspace for final setting value.", + "ref": "settingsv2.ClusterAutoRestartMessage", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "boolean_val": { + "description": "Setting value for boolean type setting. This is the setting value set by consumers, check effective_boolean_val for final setting value.", + "ref": "settingsv2.BooleanMessage", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "collaboration_platform_connectivity": { + "description": "Setting value for collaboration_platform_connectivity setting. This is the setting value set by consumers, check effective_collaboration_platform_connectivity for final setting value.", + "ref": "settingsv2.CollaborationPlatformConnectivityMessage", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "effective_aibi_dashboard_embedding_access_policy": { + "description": "Effective setting value for aibi_dashboard_embedding_access_policy setting. This is the final effective value of setting. To set a value use aibi_dashboard_embedding_access_policy.", + "ref": "settingsv2.AibiDashboardEmbeddingAccessPolicy", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "effective_aibi_dashboard_embedding_approved_domains": { + "description": "Effective setting value for aibi_dashboard_embedding_approved_domains setting. This is the final effective value of setting. To set a value use aibi_dashboard_embedding_approved_domains.", + "ref": "settingsv2.AibiDashboardEmbeddingApprovedDomains", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "effective_allowed_apps_user_api_scopes": { + "description": "Effective setting value for allowed_apps_user_api_scopes setting. This is the final effective value of setting. To set a value use allowed_apps_user_api_scopes.", + "ref": "settingsv2.AllowedAppsUserApiScopesMessage", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_automatic_cluster_update_workspace": { + "description": "Effective setting value for automatic_cluster_update_workspace setting. This is the final effective value of setting. To set a value use automatic_cluster_update_workspace.", + "ref": "settingsv2.ClusterAutoRestartMessage", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "effective_boolean_val": { + "description": "Effective setting value for boolean type setting. This is the final effective value of setting. To set a value use boolean_val.", + "ref": "settingsv2.BooleanMessage", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_collaboration_platform_connectivity": { + "description": "Effective setting value for collaboration_platform_connectivity setting. This is the final effective value of setting. To set a value use collaboration_platform_connectivity.", + "ref": "settingsv2.CollaborationPlatformConnectivityMessage", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_integer_val": { + "description": "Effective setting value for integer type setting. This is the final effective value of setting. To set a value use integer_val.", + "ref": "settingsv2.IntegerMessage", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_operational_email_custom_recipient": { + "description": "Effective setting value for operational_email_custom_recipient setting. This is the final effective value of setting. To set a value use operational_email_custom_recipient.", + "ref": "settingsv2.OperationalEmailCustomRecipientMessage", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_personal_compute": { + "description": "Effective setting value for personal_compute setting. This is the final effective value of setting. To set a value use personal_compute.", + "ref": "settingsv2.PersonalComputeMessage", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "effective_restrict_workspace_admins": { + "description": "Effective setting value for restrict_workspace_admins setting. This is the final effective value of setting. To set a value use restrict_workspace_admins.", + "ref": "settingsv2.RestrictWorkspaceAdminsMessage", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "effective_string_val": { + "description": "Effective setting value for string type setting. This is the final effective value of setting. To set a value use string_val.", + "ref": "settingsv2.StringMessage", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_workspace_label": { + "description": "Effective setting value for workspace_label setting. This is the final effective value of setting. To set a value use workspace_label.", + "ref": "settingsv2.WorkspaceLabelMessage", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "integer_val": { + "description": "Setting value for integer type setting. This is the setting value set by consumers, check effective_integer_val for final setting value.", + "ref": "settingsv2.IntegerMessage", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Name of the setting.", + "launch_stage": "GA" + }, + "operational_email_custom_recipient": { + "description": "Setting value for operational_email_custom_recipient setting. This is the setting value set by consumers, check effective_operational_email_custom_recipient for final setting value.", + "ref": "settingsv2.OperationalEmailCustomRecipientMessage", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "personal_compute": { + "description": "Setting value for personal_compute setting. This is the setting value set by consumers, check effective_personal_compute for final setting value.", + "ref": "settingsv2.PersonalComputeMessage", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "restrict_workspace_admins": { + "description": "Setting value for restrict_workspace_admins setting. This is the setting value set by consumers, check effective_restrict_workspace_admins for final setting value.", + "ref": "settingsv2.RestrictWorkspaceAdminsMessage", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "string_val": { + "description": "Setting value for string type setting. This is the setting value set by consumers, check effective_string_val for final setting value.", + "ref": "settingsv2.StringMessage", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "workspace_label": { + "description": "Setting value for workspace_label setting. This is the setting value set by consumers, check effective_workspace_label for final setting value.", + "ref": "settingsv2.WorkspaceLabelMessage", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.SettingsMetadata": { + "fields": { + "description": { + "description": "Setting description for what this setting controls", + "launch_stage": "GA" + }, + "display_name": { + "description": "Human-readable display name for the setting or feature preview.\nThis field may be unset if no display name is available.", + "launch_stage": "PUBLIC_BETA" + }, + "docs_link": { + "description": "Link to databricks documentation for the setting", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the setting.", + "launch_stage": "GA" + }, + "preview_phase": { + "description": "Preview phase for feature preview settings. This field is not set for non-preview settings.", + "ref": "settingsv2.PreviewPhase", + "launch_stage": "PUBLIC_BETA" + }, + "type": { + "description": "Sample message depicting the type of the setting. To set this setting, the value sent must match this type.", + "launch_stage": "GA" + } + } + }, + "settingsv2.StringMessage": { + "fields": { + "value": { + "description": "Represents a generic string value.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "settingsv2.UserPreference": { + "description": "User Preference represents a user-specific setting scoped to an individual user within an account.\nUnlike workspace or account settings that apply to all users, user preferences allow personal\ncustomization (e.g., UI theme, editor preferences) without affecting other users.", + "fields": { + "boolean_val": { + "ref": "settingsv2.BooleanMessage", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "effective_boolean_val": { + "ref": "settingsv2.BooleanMessage", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "effective_string_val": { + "ref": "settingsv2.StringMessage", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Name of the setting.", + "launch_stage": "PUBLIC_BETA" + }, + "string_val": { + "ref": "settingsv2.StringMessage", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "user_id": { + "description": "User ID of the user.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "settingsv2.WorkspaceLabelMessage": { + "description": "Workspace label and color for display (e.g. in account console).", + "fields": { + "color": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "label": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sharing.AuthenticationType": { + "description": "The delta sharing authentication type.", + "enum": [ + "TOKEN", + "DATABRICKS", + "OIDC_FEDERATION", + "OAUTH_CLIENT_CREDENTIALS" + ], + "enum_launch_stages": { + "DATABRICKS": "GA", + "OAUTH_CLIENT_CREDENTIALS": "GA", + "OIDC_FEDERATION": "GA", + "TOKEN": "GA" + } + }, + "sharing.ColumnTypeName": { + "description": "UC supported column types\nCopied from https://src.dev.databricks.com/databricks/universe@23a85902bb58695ab9293adc9f327b0714b55e72/-/blob/managed-catalog/api/messages/table.proto?L68", + "enum": [ + "BOOLEAN", + "BYTE", + "SHORT", + "INT", + "LONG", + "FLOAT", + "DOUBLE", + "DATE", + "TIMESTAMP", + "STRING", + "BINARY", + "DECIMAL", + "INTERVAL", + "ARRAY", + "STRUCT", + "MAP", + "CHAR", + "NULL", + "USER_DEFINED_TYPE", + "TIMESTAMP_NTZ", + "VARIANT", + "TABLE_TYPE" + ], + "enum_launch_stages": { + "ARRAY": "GA", + "BINARY": "GA", + "BOOLEAN": "GA", + "BYTE": "GA", + "CHAR": "GA", + "DATE": "GA", + "DECIMAL": "GA", + "DOUBLE": "GA", + "FLOAT": "GA", + "INT": "GA", + "INTERVAL": "GA", + "LONG": "GA", + "MAP": "GA", + "NULL": "GA", + "SHORT": "GA", + "STRING": "GA", + "STRUCT": "GA", + "TABLE_TYPE": "GA", + "TIMESTAMP": "GA", + "TIMESTAMP_NTZ": "GA", + "USER_DEFINED_TYPE": "GA", + "VARIANT": "GA" + } + }, + "sharing.CreateFederationPolicyRequest": { + "fields": { + "policy": { + "description": "Name of the policy. This is the name of the policy to be created.", + "ref": "sharing.FederationPolicy", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "sharing.CreateProvider": { + "fields": { + "authentication_type": { + "ref": "sharing.AuthenticationType", + "launch_stage": "GA" + }, + "comment": { + "description": "Description about the provider.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the Provider.", + "launch_stage": "GA" + }, + "recipient_profile_str": { + "description": "This field is required when the __authentication_type__ is **TOKEN**, **OAUTH_CLIENT_CREDENTIALS** or not provided.", + "launch_stage": "GA" + } + } + }, + "sharing.CreateRecipient": { + "fields": { + "authentication_type": { + "ref": "sharing.AuthenticationType", + "launch_stage": "GA" + }, + "comment": { + "description": "Description about the recipient.", + "launch_stage": "GA" + }, + "data_recipient_global_metastore_id": { + "description": "The global Unity Catalog metastore id provided by the data recipient.\nThis field is only present when the __authentication_type__ is **DATABRICKS**.\nThe identifier is of format __cloud__:__region__:__metastore-uuid__.", + "launch_stage": "GA" + }, + "expiration_time": { + "description": "Expiration timestamp of the token, in epoch milliseconds.", + "launch_stage": "GA" + }, + "id": { + "description": "[Create,Update:IGN] common - id of the recipient", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "ip_access_list": { + "description": "IP Access List", + "ref": "sharing.IpAccessList", + "launch_stage": "GA" + }, + "name": { + "description": "Name of Recipient.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of the recipient owner.", + "launch_stage": "GA" + }, + "properties_kvpairs": { + "description": "Recipient properties as map of string key-value pairs.\nWhen provided in update request, the specified properties will override the existing\nproperties. To add and remove properties, one would need to perform a read-modify-write.", + "ref": "sharing.SecurablePropertiesKvPairs", + "launch_stage": "GA" + }, + "sharing_code": { + "description": "The one-time sharing code provided by the data recipient. This field is only present when the __authentication_type__ is **DATABRICKS**.", + "launch_stage": "GA" + } + } + }, + "sharing.CreateShare": { + "fields": { + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the share.", + "launch_stage": "GA" + }, + "replication_config": { + "description": "Configuration for share replication.", + "ref": "sharing.ReplicationConfig", + "launch_stage": "PRIVATE_PREVIEW" + }, + "storage_root": { + "description": "Storage root URL for the share.", + "launch_stage": "GA" + } + } + }, + "sharing.DeleteFederationPolicyRequest": {}, + "sharing.DeleteProviderRequest": {}, + "sharing.DeleteRecipientRequest": {}, + "sharing.DeleteShareRequest": {}, + "sharing.DeltaSharingDependency": { + "description": "Represents a UC dependency.", + "fields": { + "function": { + "ref": "sharing.DeltaSharingFunctionDependency", + "launch_stage": "GA" + }, + "table": { + "ref": "sharing.DeltaSharingTableDependency", + "launch_stage": "GA" + } + } + }, + "sharing.DeltaSharingDependencyList": { + "description": "Represents a list of dependencies.", + "fields": { + "dependencies": { + "description": "An array of Dependency.", + "launch_stage": "GA" + } + } + }, + "sharing.DeltaSharingFunction": { + "fields": { + "aliases": { + "description": "The aliass of registered model.", + "launch_stage": "GA" + }, + "comment": { + "description": "The comment of the function.", + "launch_stage": "GA" + }, + "data_type": { + "description": "The data type of the function.", + "ref": "sharing.ColumnTypeName", + "launch_stage": "GA" + }, + "dependency_list": { + "description": "The dependency list of the function.", + "ref": "sharing.DeltaSharingDependencyList", + "launch_stage": "GA" + }, + "full_data_type": { + "description": "The full data type of the function.", + "launch_stage": "GA" + }, + "id": { + "description": "The id of the function.", + "launch_stage": "GA" + }, + "input_params": { + "description": "The function parameter information.", + "ref": "sharing.FunctionParameterInfos", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the function.", + "launch_stage": "GA" + }, + "properties": { + "description": "The properties of the function.", + "launch_stage": "GA" + }, + "routine_definition": { + "description": "The routine definition of the function.", + "launch_stage": "GA" + }, + "schema": { + "description": "The name of the schema that the function belongs to.", + "launch_stage": "GA" + }, + "securable_kind": { + "description": "The securable kind of the function.", + "ref": "sharing.SharedSecurableKind", + "launch_stage": "GA" + }, + "share": { + "description": "The name of the share that the function belongs to.", + "launch_stage": "GA" + }, + "share_id": { + "description": "The id of the share that the function belongs to.", + "launch_stage": "GA" + }, + "storage_location": { + "description": "The storage location of the function.", + "launch_stage": "GA" + }, + "tags": { + "description": "The tags of the function.", + "launch_stage": "GA" + } + } + }, + "sharing.DeltaSharingFunctionDependency": { + "description": "A Function in UC as a dependency.", + "fields": { + "function_name": { + "launch_stage": "GA" + }, + "schema_name": { + "launch_stage": "GA" + } + } + }, + "sharing.DeltaSharingTableDependency": { + "description": "A Table in UC as a dependency.", + "fields": { + "schema_name": { + "launch_stage": "GA" + }, + "table_name": { + "launch_stage": "GA" + } + } + }, + "sharing.FederationPolicy": { + "fields": { + "comment": { + "description": "Description of the policy. This is a user-provided description.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "create_time": { + "description": "System-generated timestamp indicating when the policy was created.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + }, + "id": { + "description": "Unique, immutable system-generated identifier for the federation policy.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "IMMUTABLE", + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Name of the federation policy. A recipient can have multiple policies with different names.\nThe name must contain only lowercase alphanumeric characters, numbers, and hyphens.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "oidc_policy": { + "description": "Specifies the policy to use for validating OIDC claims in the federated tokens.", + "ref": "sharing.OidcFederationPolicy", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "update_time": { + "description": "System-generated timestamp indicating when the policy was last updated.", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "sharing.FunctionParameterInfo": { + "description": "Represents a parameter of a function. The same message is used for both input and output columns.", + "fields": { + "comment": { + "description": "The comment of the parameter.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the parameter.", + "launch_stage": "GA" + }, + "parameter_default": { + "description": "The default value of the parameter.", + "launch_stage": "GA" + }, + "parameter_mode": { + "description": "The mode of the function parameter.", + "ref": "sharing.FunctionParameterMode", + "launch_stage": "GA" + }, + "parameter_type": { + "description": "The type of the function parameter.", + "ref": "sharing.FunctionParameterType", + "launch_stage": "GA" + }, + "position": { + "description": "The position of the parameter.", + "launch_stage": "GA" + }, + "type_interval_type": { + "description": "The interval type of the parameter type.", + "launch_stage": "GA" + }, + "type_json": { + "description": "The type of the parameter in JSON format.", + "launch_stage": "GA" + }, + "type_name": { + "description": "The type of the parameter in Enum format.", + "ref": "sharing.ColumnTypeName", + "launch_stage": "GA" + }, + "type_precision": { + "description": "The precision of the parameter type.", + "launch_stage": "GA" + }, + "type_scale": { + "description": "The scale of the parameter type.", + "launch_stage": "GA" + }, + "type_text": { + "description": "The type of the parameter in text format.", + "launch_stage": "GA" + } + } + }, + "sharing.FunctionParameterInfos": { + "fields": { + "parameters": { + "description": "The list of parameters of the function.", + "launch_stage": "GA" + } + } + }, + "sharing.FunctionParameterMode": { + "enum": [ + "IN", + "OUT", + "INOUT" + ], + "enum_launch_stages": { + "IN": "GA", + "INOUT": "GA", + "OUT": "GA" + } + }, + "sharing.FunctionParameterType": { + "enum": [ + "PARAM", + "COLUMN" + ], + "enum_launch_stages": { + "COLUMN": "GA", + "PARAM": "GA" + } + }, + "sharing.GetActivationUrlInfoRequest": {}, + "sharing.GetActivationUrlInfoResponse": {}, + "sharing.GetFederationPolicyRequest": {}, + "sharing.GetProviderRequest": {}, + "sharing.GetRecipientRequest": {}, + "sharing.GetRecipientSharePermissionsResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + }, + "permissions_out": { + "description": "An array of data share permissions for a recipient.", + "launch_stage": "GA" + } + } + }, + "sharing.GetSharePermissionsResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + }, + "privilege_assignments": { + "description": "The privileges assigned to each principal", + "launch_stage": "GA" + } + } + }, + "sharing.GetShareRequest": { + "fields": { + "include_shared_data": { + "description": "Query for data to include in the share.", + "launch_stage": "GA" + } + } + }, + "sharing.IpAccessList": { + "fields": { + "allowed_ip_addresses": { + "description": "Allowed IP Addresses in CIDR notation. Limit of 100.", + "launch_stage": "GA" + } + } + }, + "sharing.ListFederationPoliciesRequest": { + "fields": { + "max_results": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sharing.ListFederationPoliciesResponse": { + "fields": { + "next_page_token": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "policies": { + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "sharing.ListProviderShareAssetsRequest": { + "fields": { + "function_max_results": { + "description": "Maximum number of functions to return.", + "launch_stage": "GA" + }, + "notebook_max_results": { + "description": "Maximum number of notebooks to return.", + "launch_stage": "GA" + }, + "table_max_results": { + "description": "Maximum number of tables to return.", + "launch_stage": "GA" + }, + "volume_max_results": { + "description": "Maximum number of volumes to return.", + "launch_stage": "GA" + } + } + }, + "sharing.ListProviderShareAssetsResponse": { + "description": "Response to ListProviderShareAssets, which contains the list of assets of a share.", + "fields": { + "functions": { + "description": "The list of functions in the share.", + "launch_stage": "GA" + }, + "notebooks": { + "description": "The list of notebooks in the share.", + "launch_stage": "GA" + }, + "share": { + "description": "The metadata of the share.", + "ref": "sharing.Share", + "launch_stage": "GA" + }, + "tables": { + "description": "The list of tables in the share.", + "launch_stage": "GA" + }, + "volumes": { + "description": "The list of volumes in the share.", + "launch_stage": "GA" + } + } + }, + "sharing.ListProviderSharesResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + }, + "shares": { + "description": "An array of provider shares.", + "launch_stage": "GA" + } + } + }, + "sharing.ListProvidersRequest": { + "fields": { + "data_provider_global_metastore_id": { + "description": "If not provided, all providers will be returned.\nIf no providers exist with this ID, no results will be returned.", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of providers to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid providers are returned (not recommended).\n- Note: The number of returned providers might be less than the specified max_results size, even zero.\nThe only definitive indication that no further providers can be fetched is when the next_page_token is unset from the response.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "sharing.ListProvidersResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + }, + "providers": { + "description": "An array of provider information objects.", + "launch_stage": "GA" + } + } + }, + "sharing.ListRecipientsRequest": { + "fields": { + "data_recipient_global_metastore_id": { + "description": "If not provided, all recipients will be returned.\nIf no recipients exist with this ID, no results will be returned.", + "launch_stage": "GA" + }, + "max_results": { + "description": "Maximum number of recipients to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid recipients are returned (not recommended).\n- Note: The number of returned recipients might be less than the specified max_results size, even zero.\nThe only definitive indication that no further recipients can be fetched is when the next_page_token is unset from the response.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "sharing.ListRecipientsResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + }, + "recipients": { + "description": "An array of recipient information objects.", + "launch_stage": "GA" + } + } + }, + "sharing.ListSharesRequest": { + "fields": { + "max_results": { + "description": "Maximum number of shares to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid shares are returned (not recommended).\n- Note: The number of returned shares might be less than the specified max_results size, even zero.\nThe only definitive indication that no further shares can be fetched is when the next_page_token is unset from the response.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "sharing.ListSharesResponse": { + "fields": { + "next_page_token": { + "description": "Opaque token to retrieve the next page of results. Absent if there are no more pages.\n__page_token__ should be set to this value for the next request (for the next page of results).", + "launch_stage": "GA" + }, + "shares": { + "description": "An array of data share information objects.", + "launch_stage": "GA" + } + } + }, + "sharing.NotebookFile": { + "fields": { + "comment": { + "description": "The comment of the notebook file.", + "launch_stage": "GA" + }, + "id": { + "description": "The id of the notebook file.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the notebook file.", + "launch_stage": "GA" + }, + "share": { + "description": "The name of the share that the notebook file belongs to.", + "launch_stage": "GA" + }, + "share_id": { + "description": "The id of the share that the notebook file belongs to.", + "launch_stage": "GA" + }, + "tags": { + "description": "The tags of the notebook file.", + "launch_stage": "GA" + } + } + }, + "sharing.OidcFederationPolicy": { + "description": "Specifies the policy to use for validating OIDC claims in your federated tokens from Delta Sharing Clients.\nRefer to https://docs.databricks.com/en/delta-sharing/create-recipient-oidc-fed for more details.", + "fields": { + "audiences": { + "description": "The allowed token audiences, as specified in the 'aud' claim of federated tokens.\nThe audience identifier is intended to represent the recipient of the token.\nCan be any non-empty string value. As long as the audience in the token matches at least one audience in the policy,", + "launch_stage": "PUBLIC_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "issuer": { + "description": "The required token issuer, as specified in the 'iss' claim of federated tokens.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "subject": { + "description": "The required token subject, as specified in the subject claim of federated tokens.\nThe subject claim identifies the identity of the user or machine accessing the resource.\nExamples for Entra ID (AAD):\n- U2M flow (group access): If the subject claim is `groups`, this must be the Object ID of the group in Entra ID.\n- U2M flow (user access): If the subject claim is `oid`, this must be the Object ID of the user in Entra ID.\n- M2M flow (OAuth App access): If the subject claim is `azp`, this must be the client ID of the OAuth app registered in Entra ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "subject_claim": { + "description": "The claim that contains the subject of the token.\nDepending on the identity provider and the use case (U2M or M2M), this can vary:\n- For Entra ID (AAD):\n* U2M flow (group access): Use `groups`.\n* U2M flow (user access): Use `oid`.\n* M2M flow (OAuth App access): Use `azp`.\n- For other IdPs, refer to the specific IdP documentation.\n\nSupported `subject_claim` values are:\n- `oid`: Object ID of the user.\n- `azp`: Client ID of the OAuth app.\n- `groups`: Object ID of the group.\n- `sub`: Subject identifier for other use cases.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "sharing.Partition": { + "fields": { + "values": { + "description": "An array of partition values.", + "launch_stage": "GA" + } + } + }, + "sharing.PartitionValue": { + "fields": { + "name": { + "description": "The name of the partition column.", + "launch_stage": "GA" + }, + "op": { + "description": "The operator to apply for the value.", + "ref": "sharing.PartitionValueOp", + "launch_stage": "GA" + }, + "recipient_property_key": { + "description": "The key of a Delta Sharing recipient's property. For example \"databricks-account-id\".\nWhen this field is set, field `value` can not be set.", + "launch_stage": "GA" + }, + "value": { + "description": "The value of the partition column. When this value is not set, it means `null` value.\nWhen this field is set, field `recipient_property_key` can not be set.", + "launch_stage": "GA" + } + } + }, + "sharing.PartitionValueOp": { + "enum": [ + "EQUAL", + "LIKE" + ], + "enum_launch_stages": { + "EQUAL": "GA", + "LIKE": "GA" + } + }, + "sharing.PermissionsChange": { + "fields": { + "add": { + "description": "The set of privileges to add.", + "launch_stage": "GA" + }, + "principal": { + "description": "The principal whose privileges we are changing.\nOnly one of principal or principal_id should be specified, never both at the same time.", + "launch_stage": "GA" + }, + "remove": { + "description": "The set of privileges to remove.", + "launch_stage": "GA" + } + } + }, + "sharing.Privilege": { + "enum": [ + "SELECT", + "READ_PRIVATE_FILES", + "WRITE_PRIVATE_FILES", + "CREATE", + "USAGE", + "USE_CATALOG", + "USE_SCHEMA", + "CREATE_SCHEMA", + "CREATE_VIEW", + "CREATE_EXTERNAL_TABLE", + "CREATE_MATERIALIZED_VIEW", + "CREATE_FUNCTION", + "CREATE_MODEL", + "CREATE_CATALOG", + "CREATE_MANAGED_STORAGE", + "CREATE_EXTERNAL_LOCATION", + "CREATE_STORAGE_CREDENTIAL", + "CREATE_SERVICE_CREDENTIAL", + "ACCESS", + "CREATE_SHARE", + "CREATE_RECIPIENT", + "CREATE_PROVIDER", + "USE_SHARE", + "USE_RECIPIENT", + "USE_PROVIDER", + "USE_MARKETPLACE_ASSETS", + "SET_SHARE_PERMISSION", + "MODIFY", + "REFRESH", + "EXECUTE", + "READ_FILES", + "WRITE_FILES", + "CREATE_TABLE", + "ALL_PRIVILEGES", + "CREATE_CONNECTION", + "USE_CONNECTION", + "APPLY_TAG", + "CREATE_FOREIGN_CATALOG", + "CREATE_FOREIGN_SECURABLE", + "MANAGE_ALLOWLIST", + "CREATE_VOLUME", + "CREATE_EXTERNAL_VOLUME", + "READ_VOLUME", + "WRITE_VOLUME", + "MANAGE" + ], + "enum_launch_stages": { + "ACCESS": "GA", + "ALL_PRIVILEGES": "GA", + "APPLY_TAG": "GA", + "CREATE": "GA", + "CREATE_CATALOG": "GA", + "CREATE_CONNECTION": "GA", + "CREATE_EXTERNAL_LOCATION": "GA", + "CREATE_EXTERNAL_TABLE": "GA", + "CREATE_EXTERNAL_VOLUME": "GA", + "CREATE_FOREIGN_CATALOG": "GA", + "CREATE_FOREIGN_SECURABLE": "GA", + "CREATE_FUNCTION": "GA", + "CREATE_MANAGED_STORAGE": "GA", + "CREATE_MATERIALIZED_VIEW": "GA", + "CREATE_MODEL": "GA", + "CREATE_PROVIDER": "GA", + "CREATE_RECIPIENT": "GA", + "CREATE_SCHEMA": "GA", + "CREATE_SERVICE_CREDENTIAL": "GA", + "CREATE_SHARE": "GA", + "CREATE_STORAGE_CREDENTIAL": "GA", + "CREATE_TABLE": "GA", + "CREATE_VIEW": "GA", + "CREATE_VOLUME": "GA", + "EXECUTE": "GA", + "MANAGE": "GA", + "MANAGE_ALLOWLIST": "GA", + "MODIFY": "GA", + "READ_FILES": "GA", + "READ_PRIVATE_FILES": "GA", + "READ_VOLUME": "GA", + "REFRESH": "GA", + "SELECT": "GA", + "SET_SHARE_PERMISSION": "GA", + "USAGE": "GA", + "USE_CATALOG": "GA", + "USE_CONNECTION": "GA", + "USE_MARKETPLACE_ASSETS": "GA", + "USE_PROVIDER": "GA", + "USE_RECIPIENT": "GA", + "USE_SCHEMA": "GA", + "USE_SHARE": "GA", + "WRITE_FILES": "GA", + "WRITE_PRIVATE_FILES": "GA", + "WRITE_VOLUME": "GA" + } + }, + "sharing.PrivilegeAssignment": { + "fields": { + "principal": { + "description": "The principal (user email address or group name).\nFor deleted principals, `principal` is empty while `principal_id` is populated.", + "launch_stage": "GA" + }, + "privileges": { + "description": "The privileges assigned to the principal.", + "launch_stage": "GA" + } + } + }, + "sharing.ProviderInfo": { + "fields": { + "authentication_type": { + "ref": "sharing.AuthenticationType", + "launch_stage": "GA" + }, + "cloud": { + "description": "Cloud vendor of the provider's UC metastore. This field is only present when the __authentication_type__ is **DATABRICKS**.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "comment": { + "description": "Description about the provider.", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this Provider was created, in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "Username of Provider creator.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "data_provider_global_metastore_id": { + "description": "The global UC metastore id of the data provider. This field is only present when the __authentication_type__ is **DATABRICKS**. The identifier is of format __cloud__:__region__:__metastore-uuid__.", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "UUID of the provider's UC metastore. This field is only present when the __authentication_type__ is **DATABRICKS**.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "The name of the Provider.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of Provider owner.", + "launch_stage": "GA" + }, + "recipient_profile": { + "description": "The recipient profile. This field is only present when the authentication_type is `TOKEN` or `OAUTH_CLIENT_CREDENTIALS`.", + "ref": "sharing.RecipientProfile", + "launch_stage": "GA" + }, + "recipient_profile_str": { + "description": "This field is required when the __authentication_type__ is **TOKEN**, **OAUTH_CLIENT_CREDENTIALS** or not provided.", + "launch_stage": "GA" + }, + "region": { + "description": "Cloud region of the provider's UC metastore. This field is only present when the __authentication_type__ is **DATABRICKS**.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_at": { + "description": "Time at which this Provider was created, in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_by": { + "description": "Username of user who last modified Provider.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "sharing.ProviderShare": { + "fields": { + "name": { + "description": "The name of the Provider Share.", + "launch_stage": "GA" + } + } + }, + "sharing.RecipientInfo": { + "fields": { + "activated": { + "description": "A boolean status field showing whether the Recipient's activation URL has been exercised or not.", + "deprecated": true, + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "activation_url": { + "description": "Full activation url to retrieve the access token.\nIt will be empty if the token is already retrieved.", + "deprecated": true, + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "authentication_type": { + "ref": "sharing.AuthenticationType", + "launch_stage": "GA" + }, + "cloud": { + "description": "Cloud vendor of the recipient's Unity Catalog Metastore.\nThis field is only present when the __authentication_type__ is **DATABRICKS**.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "comment": { + "description": "Description about the recipient.", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this recipient was created, in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "Username of recipient creator.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "data_recipient_global_metastore_id": { + "description": "The global Unity Catalog metastore id provided by the data recipient.\nThis field is only present when the __authentication_type__ is **DATABRICKS**.\nThe identifier is of format __cloud__:__region__:__metastore-uuid__.", + "launch_stage": "GA" + }, + "expiration_time": { + "description": "Expiration timestamp of the token, in epoch milliseconds.", + "launch_stage": "GA" + }, + "id": { + "description": "[Create,Update:IGN] common - id of the recipient", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "ip_access_list": { + "description": "IP Access List", + "ref": "sharing.IpAccessList", + "launch_stage": "GA" + }, + "metastore_id": { + "description": "Unique identifier of recipient's Unity Catalog Metastore.\nThis field is only present when the __authentication_type__ is **DATABRICKS**.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Name of Recipient.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of the recipient owner.", + "launch_stage": "GA" + }, + "properties_kvpairs": { + "description": "Recipient properties as map of string key-value pairs.\nWhen provided in update request, the specified properties will override the existing\nproperties. To add and remove properties, one would need to perform a read-modify-write.", + "ref": "sharing.SecurablePropertiesKvPairs", + "launch_stage": "GA" + }, + "region": { + "description": "Cloud region of the recipient's Unity Catalog Metastore.\nThis field is only present when the __authentication_type__ is **DATABRICKS**.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "sharing_code": { + "description": "The one-time sharing code provided by the data recipient. This field is only present when the __authentication_type__ is **DATABRICKS**.", + "launch_stage": "GA" + }, + "tokens": { + "description": "This field is only present when the __authentication_type__ is **TOKEN**.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_at": { + "description": "Time at which the recipient was updated, in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_by": { + "description": "Username of recipient updater.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "sharing.RecipientProfile": { + "fields": { + "bearer_token": { + "description": "The token used to authorize the recipient.", + "launch_stage": "GA" + }, + "endpoint": { + "description": "The endpoint for the share to be used by the recipient.", + "launch_stage": "GA" + }, + "share_credentials_version": { + "description": "The version number of the recipient's credentials on a share.", + "launch_stage": "GA" + } + } + }, + "sharing.RecipientTokenInfo": { + "fields": { + "activation_url": { + "description": "Full activation URL to retrieve the access token. It will be empty if the token is already retrieved.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_at": { + "description": "Time at which this recipient token was created, in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "Username of recipient token creator.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "expiration_time": { + "description": "Expiration timestamp of the token in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "id": { + "description": "Unique ID of the recipient token.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_at": { + "description": "Time at which this recipient token was updated, in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_by": { + "description": "Username of recipient token updater.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "sharing.RegisteredModelAlias": { + "fields": { + "alias_name": { + "description": "Name of the alias.", + "launch_stage": "GA" + }, + "version_num": { + "description": "Numeric model version that alias will reference.", + "launch_stage": "GA" + } + } + }, + "sharing.ReplicationConfig": { + "description": "Configuration for Delta Sharing replication on a share. When enabled, the share's data is\ncopied into each recipient's region so recipients can query the share locally.", + "fields": { + "enabled": { + "description": "Whether replication is enabled for the share.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sharing.RetrieveTokenRequest": {}, + "sharing.RetrieveTokenResponse": { + "fields": { + "bearerToken": { + "description": "The token used to authorize the recipient.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "endpoint": { + "description": "The endpoint for the share to be used by the recipient.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "expirationTime": { + "description": "Expiration timestamp of the token in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "shareCredentialsVersion": { + "description": "These field names must follow the delta sharing protocol.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "sharing.RotateRecipientToken": { + "fields": { + "existing_token_expire_in_seconds": { + "description": "The expiration time of the bearer token in ISO 8601 format. This will set the expiration_time\nof existing token only to a smaller timestamp, it cannot extend the expiration_time. Use 0 to\nexpire the existing token immediately, negative number will return an error.", + "launch_stage": "GA" + } + } + }, + "sharing.SecurablePropertiesKvPairs": { + "description": "An object with __properties__ containing map of key-value properties attached to the securable.", + "fields": { + "properties": { + "description": "A map of key-value properties attached to the securable.", + "launch_stage": "GA" + } + } + }, + "sharing.Share": { + "fields": { + "id": { + "launch_stage": "GA" + }, + "name": { + "launch_stage": "GA" + } + } + }, + "sharing.ShareInfo": { + "fields": { + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "created_at": { + "description": "Time at which this share was created, in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "created_by": { + "description": "Username of share creator.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "Name of the share.", + "launch_stage": "GA" + }, + "objects": { + "description": "A list of shared data objects within the share.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of current owner of share.", + "launch_stage": "GA" + }, + "replication_config": { + "description": "Configuration for share replication.", + "ref": "sharing.ReplicationConfig", + "launch_stage": "PRIVATE_PREVIEW" + }, + "storage_location": { + "description": "Storage Location URL (full path) for the share.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "storage_root": { + "description": "Storage root URL for the share.", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Time at which this share was updated, in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "updated_by": { + "description": "Username of share updater.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "sharing.SharePermissionsRequest": { + "fields": { + "max_results": { + "description": "Maximum number of permissions to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid permissions are returned (not recommended).\n- Note: The number of returned permissions might be less than the specified max_results size, even zero.\nThe only definitive indication that no further permissions can be fetched is when the next_page_token is unset from the response.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "sharing.ShareToPrivilegeAssignment": { + "fields": { + "privilege_assignments": { + "description": "The privileges assigned to the principal.", + "launch_stage": "GA" + }, + "share_name": { + "description": "The share name.", + "launch_stage": "GA" + } + } + }, + "sharing.SharedDataObject": { + "fields": { + "added_at": { + "description": "The time when this data object is added to the share, in epoch milliseconds.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "added_by": { + "description": "Username of the sharer.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "cdf_enabled": { + "description": "Whether to enable cdf or indicate if cdf is enabled on the shared object.", + "launch_stage": "GA" + }, + "comment": { + "description": "A user-provided comment when adding the data object to the share.", + "launch_stage": "GA" + }, + "content": { + "description": "The content of the notebook file when the data object type is NOTEBOOK_FILE.\nThis should be base64 encoded.\nRequired for adding a NOTEBOOK_FILE, optional for updating, ignored for other types.", + "launch_stage": "GA" + }, + "data_object_type": { + "description": "The type of the data object.", + "ref": "sharing.SharedDataObjectDataObjectType", + "launch_stage": "GA" + }, + "history_data_sharing_status": { + "description": "Whether to enable or disable sharing of data history. If not specified, the default is **DISABLED**.", + "ref": "sharing.SharedDataObjectHistoryDataSharingStatus", + "launch_stage": "GA" + }, + "name": { + "description": "A fully qualified name that uniquely identifies a data object.\nFor example, a table's fully qualified name is in the format of `\u003ccatalog\u003e.\u003cschema\u003e.\u003ctable\u003e`,", + "launch_stage": "GA" + }, + "partitions": { + "description": "Array of partitions for the shared data.", + "launch_stage": "GA" + }, + "shared_as": { + "description": "A user-provided alias name for table-like data objects within the share.\n\nUse this field for table-like objects (for example: TABLE, VIEW, MATERIALIZED_VIEW, STREAMING_TABLE, FOREIGN_TABLE).\nFor non-table objects (for example: VOLUME, MODEL, NOTEBOOK_FILE, FUNCTION), use `string_shared_as` instead.\n\nImportant: For non-table objects, this field must be omitted entirely.\n\nFormat: Must be a 2-part name `\u003cschema_name\u003e.\u003ctable_name\u003e` (e.g., \"sales_schema.orders_table\")\n- Both schema and table names must contain only alphanumeric characters and underscores\n- No periods, spaces, forward slashes, or control characters are allowed within each part\n- Do not include the catalog name (use 2 parts, not 3)\n\nBehavior:\n- If not provided, the service automatically generates the alias as `\u003cschema\u003e.\u003ctable\u003e` from the object's original name\n- If you don't want to specify this field, omit it entirely from the request (do not pass an empty string)\n- The `shared_as` name must be unique within the share\n\nExamples:\n- Valid: \"analytics_schema.customer_view\"\n- Invalid: \"catalog.analytics_schema.customer_view\" (3 parts not allowed)\n- Invalid: \"analytics-schema.customer-view\" (hyphens not allowed)", + "launch_stage": "GA" + }, + "start_version": { + "description": "The start version associated with the object.\nThis allows data providers to control the lowest object version that is accessible by clients.\nIf specified, clients can query snapshots or changes for versions \u003e= start_version.\nIf not specified, clients can only query starting from the version of the object at the time\nit was added to the share.\n\nNOTE: The start_version should be \u003c= the `current` version of the object.", + "launch_stage": "GA" + }, + "status": { + "description": "One of: **ACTIVE**, **PERMISSION_DENIED**.", + "ref": "sharing.SharedDataObjectStatus", + "launch_stage": "GA" + }, + "string_shared_as": { + "description": "A user-provided alias name for non-table data objects within the share.\n\nUse this field for non-table objects (for example: VOLUME, MODEL, NOTEBOOK_FILE, FUNCTION).\nFor table-like objects (for example: TABLE, VIEW, MATERIALIZED_VIEW, STREAMING_TABLE, FOREIGN_TABLE), use `shared_as` instead.\n\nImportant: For table-like objects, this field must be omitted entirely.\n\nFormat:\n- For VOLUME: Must be a 2-part name `\u003cschema_name\u003e.\u003cvolume_name\u003e` (e.g., \"data_schema.ml_models\")\n- For FUNCTION: Must be a 2-part name `\u003cschema_name\u003e.\u003cfunction_name\u003e` (e.g., \"udf_schema.calculate_tax\")\n- For MODEL: Must be a 2-part name `\u003cschema_name\u003e.\u003cmodel_name\u003e` (e.g., \"models.prediction_model\")\n- For NOTEBOOK_FILE: Should be the notebook file name (e.g., \"analysis_notebook.py\")\n- All names must contain only alphanumeric characters and underscores\n- No periods, spaces, forward slashes, or control characters are allowed within each part\n\nBehavior:\n- If not provided, the service automatically generates the alias from the object's original name\n- If you don't want to specify this field, omit it entirely from the request (do not pass an empty string)\n- The `string_shared_as` name must be unique for objects of the same type within the share\n\nExamples:\n- Valid for VOLUME: \"data_schema.training_data\"\n- Valid for FUNCTION: \"analytics.calculate_revenue\"\n- Invalid: \"catalog.data_schema.training_data\" (3 parts not allowed for volumes)\n- Invalid: \"data-schema.training-data\" (hyphens not allowed)", + "launch_stage": "GA" + } + } + }, + "sharing.SharedDataObjectDataObjectType": { + "enum": [ + "TABLE", + "FOREIGN_TABLE", + "SCHEMA", + "VIEW", + "MATERIALIZED_VIEW", + "STREAMING_TABLE", + "MODEL", + "NOTEBOOK_FILE", + "FUNCTION", + "FEATURE_SPEC", + "VOLUME" + ], + "enum_launch_stages": { + "FEATURE_SPEC": "GA", + "FOREIGN_TABLE": "GA", + "FUNCTION": "GA", + "MATERIALIZED_VIEW": "GA", + "MODEL": "GA", + "NOTEBOOK_FILE": "GA", + "SCHEMA": "GA", + "STREAMING_TABLE": "GA", + "TABLE": "GA", + "VIEW": "GA", + "VOLUME": "GA" + } + }, + "sharing.SharedDataObjectHistoryDataSharingStatus": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "enum_launch_stages": { + "DISABLED": "GA", + "ENABLED": "GA" + } + }, + "sharing.SharedDataObjectStatus": { + "enum": [ + "ACTIVE", + "PERMISSION_DENIED" + ], + "enum_launch_stages": { + "ACTIVE": "GA", + "PERMISSION_DENIED": "GA" + } + }, + "sharing.SharedDataObjectUpdate": { + "fields": { + "action": { + "description": "One of: **ADD**, **REMOVE**, **UPDATE**.", + "ref": "sharing.SharedDataObjectUpdateAction", + "launch_stage": "GA" + }, + "data_object": { + "description": "The data object that is being added, removed, or updated. The maximum number update data objects allowed is a 100.", + "ref": "sharing.SharedDataObject", + "launch_stage": "GA" + } + } + }, + "sharing.SharedDataObjectUpdateAction": { + "enum": [ + "ADD", + "REMOVE", + "UPDATE" + ], + "enum_launch_stages": { + "ADD": "GA", + "REMOVE": "GA", + "UPDATE": "GA" + } + }, + "sharing.SharedSecurableKind": { + "description": "The SecurableKind of a delta-shared object.", + "enum": [ + "FUNCTION_STANDARD", + "FUNCTION_REGISTERED_MODEL", + "FUNCTION_FEATURE_SPEC" + ], + "enum_launch_stages": { + "FUNCTION_FEATURE_SPEC": "GA", + "FUNCTION_REGISTERED_MODEL": "GA", + "FUNCTION_STANDARD": "GA" + } + }, + "sharing.SharesListRequest": { + "fields": { + "max_results": { + "description": "Maximum number of shares to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid shares are returned (not recommended).\n- Note: The number of returned shares might be less than the specified max_results size, even zero.\nThe only definitive indication that no further shares can be fetched is when the next_page_token is unset from the response.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Opaque pagination token to go to next page based on previous query.", + "launch_stage": "GA" + } + } + }, + "sharing.Table": { + "fields": { + "comment": { + "description": "The comment of the table.", + "launch_stage": "GA" + }, + "id": { + "description": "The id of the table.", + "launch_stage": "GA" + }, + "materialization_namespace": { + "description": "The catalog and schema of the materialized table", + "launch_stage": "GA" + }, + "materialized_table_name": { + "description": "The name of a materialized table.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the table.", + "launch_stage": "GA" + }, + "schema": { + "description": "The name of the schema that the table belongs to.", + "launch_stage": "GA" + }, + "share": { + "description": "The name of the share that the table belongs to.", + "launch_stage": "GA" + }, + "share_id": { + "description": "The id of the share that the table belongs to.", + "launch_stage": "GA" + }, + "tags": { + "description": "The Tags of the table.", + "launch_stage": "GA" + } + } + }, + "sharing.UpdateProvider": { + "fields": { + "comment": { + "description": "Description about the provider.", + "launch_stage": "GA" + }, + "new_name": { + "description": "New name for the provider.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of Provider owner.", + "launch_stage": "GA" + }, + "recipient_profile_str": { + "description": "This field is required when the __authentication_type__ is **TOKEN**, **OAUTH_CLIENT_CREDENTIALS** or not provided.", + "launch_stage": "GA" + } + } + }, + "sharing.UpdateRecipient": { + "fields": { + "comment": { + "description": "Description about the recipient.", + "launch_stage": "GA" + }, + "expiration_time": { + "description": "Expiration timestamp of the token, in epoch milliseconds.", + "launch_stage": "GA" + }, + "id": { + "description": "[Create,Update:IGN] common - id of the recipient", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "ip_access_list": { + "description": "IP Access List", + "ref": "sharing.IpAccessList", + "launch_stage": "GA" + }, + "new_name": { + "description": "New name for the recipient.\n.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of the recipient owner.", + "launch_stage": "GA" + }, + "properties_kvpairs": { + "description": "Recipient properties as map of string key-value pairs.\nWhen provided in update request, the specified properties will override the existing\nproperties. To add and remove properties, one would need to perform a read-modify-write.", + "ref": "sharing.SecurablePropertiesKvPairs", + "launch_stage": "GA" + } + } + }, + "sharing.UpdateShare": { + "fields": { + "comment": { + "description": "User-provided free-form text description.", + "launch_stage": "GA" + }, + "new_name": { + "description": "New name for the share.", + "launch_stage": "GA" + }, + "owner": { + "description": "Username of current owner of share.", + "launch_stage": "GA" + }, + "storage_root": { + "description": "Storage root URL for the share.", + "launch_stage": "GA" + }, + "updates": { + "description": "Array of shared data object updates.", + "launch_stage": "GA" + } + } + }, + "sharing.UpdateSharePermissions": { + "fields": { + "changes": { + "description": "Array of permissions change objects.", + "launch_stage": "GA" + }, + "omit_permissions_list": { + "description": "Optional. Whether to return the latest permissions list of the share in the response.", + "launch_stage": "GA" + } + } + }, + "sharing.UpdateSharePermissionsResponse": { + "fields": { + "privilege_assignments": { + "description": "The privileges assigned to each principal", + "launch_stage": "GA" + } + } + }, + "sharing.Volume": { + "fields": { + "comment": { + "description": "The comment of the volume.", + "launch_stage": "GA" + }, + "id": { + "description": "This id maps to the shared_volume_id in database\nRecipient needs shared_volume_id for recon\nto check if this volume is already in recipient's DB or not.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the volume.", + "launch_stage": "GA" + }, + "schema": { + "description": "The name of the schema that the volume belongs to.", + "launch_stage": "GA" + }, + "share": { + "description": "The name of the share that the volume belongs to.", + "launch_stage": "GA" + }, + "share_id": { + "description": "/ The id of the share that the volume belongs to.", + "launch_stage": "GA" + }, + "tags": { + "description": "The tags of the volume.", + "launch_stage": "GA" + } + } + }, + "sql.AccessControl": { + "fields": { + "group_name": { + "launch_stage": "GA" + }, + "permission_level": { + "description": "* `CAN_VIEW`: Can view the query\n* `CAN_RUN`: Can run the query\n* `CAN_EDIT`: Can edit the query\n* `CAN_MANAGE`: Can manage the query", + "ref": "sql.PermissionLevel", + "launch_stage": "GA" + }, + "user_name": { + "launch_stage": "GA" + } + } + }, + "sql.Aggregation": { + "enum": [ + "SUM", + "COUNT", + "COUNT_DISTINCT", + "AVG", + "MEDIAN", + "MIN", + "MAX", + "STDDEV" + ], + "enum_launch_stages": { + "AVG": "GA", + "COUNT": "GA", + "COUNT_DISTINCT": "GA", + "MAX": "GA", + "MEDIAN": "GA", + "MIN": "GA", + "STDDEV": "GA", + "SUM": "GA" + } + }, + "sql.Alert": { + "fields": { + "condition": { + "description": "Trigger conditions of the alert.", + "ref": "sql.AlertCondition", + "launch_stage": "GA" + }, + "create_time": { + "description": "The timestamp indicating when the alert was created.", + "launch_stage": "GA" + }, + "custom_body": { + "description": "Custom body of alert notification, if it exists. See [here](https://docs.databricks.com/sql/user/alerts/index.html) for custom templating instructions.", + "launch_stage": "GA" + }, + "custom_subject": { + "description": "Custom subject of alert notification, if it exists. This can include email subject entries and Slack notification headers, for example. See [here](https://docs.databricks.com/sql/user/alerts/index.html) for custom templating instructions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "The display name of the alert.", + "launch_stage": "GA" + }, + "id": { + "description": "UUID identifying the alert.", + "launch_stage": "GA" + }, + "lifecycle_state": { + "description": "The workspace state of the alert. Used for tracking trashed status.", + "ref": "sql.LifecycleState", + "launch_stage": "GA" + }, + "notify_on_ok": { + "description": "Whether to notify alert subscribers when alert returns back to normal.", + "launch_stage": "GA" + }, + "owner_user_name": { + "description": "The owner's username. This field is set to \"Unavailable\" if the user has been deleted.", + "launch_stage": "GA" + }, + "parent_path": { + "description": "The workspace path of the folder containing the alert.", + "launch_stage": "GA" + }, + "query_id": { + "description": "UUID of the query attached to the alert.", + "launch_stage": "GA" + }, + "seconds_to_retrigger": { + "description": "Number of seconds an alert must wait after being triggered to rearm itself. After rearming, it can be triggered again. If 0 or not specified, the alert will not be triggered again.", + "launch_stage": "GA" + }, + "state": { + "description": "Current state of the alert's trigger status. This field is set to UNKNOWN if the alert has not yet been evaluated or ran into an error during the last evaluation.", + "ref": "sql.AlertState", + "launch_stage": "GA" + }, + "trigger_time": { + "description": "Timestamp when the alert was last triggered, if the alert has been triggered before.", + "launch_stage": "GA" + }, + "update_time": { + "description": "The timestamp indicating when the alert was updated.", + "launch_stage": "GA" + } + } + }, + "sql.AlertCondition": { + "fields": { + "empty_result_state": { + "description": "Alert state if result is empty.", + "ref": "sql.AlertState", + "launch_stage": "GA" + }, + "op": { + "description": "Operator used for comparison in alert evaluation.", + "ref": "sql.AlertOperator", + "launch_stage": "GA" + }, + "operand": { + "description": "Name of the column from the query result to use for comparison in alert evaluation.", + "ref": "sql.AlertConditionOperand", + "launch_stage": "GA" + }, + "threshold": { + "description": "Threshold value used for comparison in alert evaluation.", + "ref": "sql.AlertConditionThreshold", + "launch_stage": "GA" + } + } + }, + "sql.AlertConditionOperand": { + "fields": { + "column": { + "ref": "sql.AlertOperandColumn", + "launch_stage": "GA" + } + } + }, + "sql.AlertConditionThreshold": { + "fields": { + "value": { + "ref": "sql.AlertOperandValue", + "launch_stage": "GA" + } + } + }, + "sql.AlertEvaluationState": { + "description": "UNSPECIFIED - default unspecify value for proto enum, do not use it in the code\nUNKNOWN - alert not yet evaluated\nTRIGGERED - alert is triggered\nOK - alert is not triggered\nERROR - alert evaluation failed", + "enum": [ + "UNKNOWN", + "TRIGGERED", + "OK", + "ERROR" + ], + "enum_launch_stages": { + "ERROR": "GA", + "OK": "GA", + "TRIGGERED": "GA", + "UNKNOWN": "GA" + } + }, + "sql.AlertLifecycleState": { + "enum": [ + "ACTIVE", + "DELETED" + ], + "enum_launch_stages": { + "ACTIVE": "GA", + "DELETED": "GA" + } + }, + "sql.AlertOperandColumn": { + "fields": { + "name": { + "launch_stage": "GA" + } + } + }, + "sql.AlertOperandValue": { + "fields": { + "bool_value": { + "launch_stage": "GA" + }, + "double_value": { + "launch_stage": "GA" + }, + "string_value": { + "launch_stage": "GA" + } + } + }, + "sql.AlertOperator": { + "enum": [ + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL", + "LESS_THAN", + "LESS_THAN_OR_EQUAL", + "EQUAL", + "NOT_EQUAL", + "IS_NULL" + ], + "enum_launch_stages": { + "EQUAL": "GA", + "GREATER_THAN": "GA", + "GREATER_THAN_OR_EQUAL": "GA", + "IS_NULL": "GA", + "LESS_THAN": "GA", + "LESS_THAN_OR_EQUAL": "GA", + "NOT_EQUAL": "GA" + } + }, + "sql.AlertOptions": { + "description": "Alert configuration options.", + "fields": { + "column": { + "description": "Name of column in the query result to compare in alert evaluation.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "custom_body": { + "description": "Custom body of alert notification, if it exists. See [here](https://docs.databricks.com/sql/user/alerts/index.html) for custom templating instructions.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "custom_subject": { + "description": "Custom subject of alert notification, if it exists. This includes email subject, Slack notification header, etc. See [here](https://docs.databricks.com/sql/user/alerts/index.html) for custom templating instructions.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "empty_result_state": { + "description": "State that alert evaluates to when query result is empty.", + "ref": "sql.AlertOptionsEmptyResultState", + "launch_stage": "PUBLIC_PREVIEW" + }, + "muted": { + "description": "Whether or not the alert is muted. If an alert is muted, it will not notify users and notification destinations when triggered.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "op": { + "description": "Operator used to compare in alert evaluation: `\u003e`, `\u003e=`, `\u003c`, `\u003c=`, `==`, `!=`", + "launch_stage": "PUBLIC_PREVIEW" + }, + "value": { + "description": "Value used to compare in alert evaluation. Supported types include strings (eg. 'foobar'), floats (eg. 123.4), and booleans (true).", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "sql.AlertOptionsEmptyResultState": { + "description": "State that alert evaluates to when query result is empty.", + "enum": [ + "ok", + "triggered", + "unknown" + ], + "enum_launch_stages": { + "ok": "PUBLIC_PREVIEW", + "triggered": "PUBLIC_PREVIEW", + "unknown": "PUBLIC_PREVIEW" + } + }, + "sql.AlertQuery": { + "fields": { + "created_at": { + "description": "The timestamp when this query was created.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "data_source_id": { + "description": "Data source ID maps to the ID of the data source used by the resource and is distinct from the warehouse ID. [Learn more](https://docs.databricks.com/api/workspace/datasources/list)", + "launch_stage": "PUBLIC_PREVIEW" + }, + "description": { + "description": "General description that conveys additional information about this query such as usage notes.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "id": { + "description": "Query ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "is_archived": { + "description": "Indicates whether the query is trashed. Trashed queries can't be used in dashboards, or appear in search results. If this boolean is `true`, the `options` property for this query includes a `moved_to_trash_at` timestamp. Trashed queries are permanently deleted after 30 days.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "is_draft": { + "description": "Whether the query is a draft. Draft queries only appear in list views for their owners. Visualizations from draft queries cannot appear on dashboards.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "is_safe": { + "description": "Text parameter types are not safe from SQL injection for all types of data source. Set this Boolean parameter to `true` if a query either does not use any text type parameters or uses a data source type where text type parameters are handled safely.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "The title of this query that appears in list views, widget headings, and on the query page.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "options": { + "ref": "sql.QueryOptions", + "launch_stage": "PUBLIC_PREVIEW" + }, + "query": { + "description": "The text of the query to be run.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "tags": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "updated_at": { + "description": "The timestamp at which this query was last updated.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "user_id": { + "description": "The ID of the user who owns the query.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "sql.AlertState": { + "enum": [ + "UNKNOWN", + "OK", + "TRIGGERED" + ], + "enum_launch_stages": { + "OK": "GA", + "TRIGGERED": "GA", + "UNKNOWN": "GA" + } + }, + "sql.AlertStatementParameter": { + "description": "A named parameter bound to the alert query. Only flat, named scalar parameters are\nsupported; complex types such as ARRAY, MAP, and STRUCT are not.", + "fields": { + "name": { + "description": "The name of the parameter. Reference it in the query text as `:name`. Required, must be\nnon-empty, and must be unique across the alert's parameters.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "type": { + "description": "The SQL data type of the parameter, for example `STRING`, `INT`, or `DECIMAL(10, 2)`. If no type is given\nthe type is assumed to be `STRING`. Complex types such as `ARRAY`, `MAP`, and `STRUCT` are not supported.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "value": { + "description": "The value bound to the parameter, represented as a string. If omitted, the value is interpreted as NULL.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sql.AlertV2": { + "fields": { + "create_time": { + "description": "The timestamp indicating when the alert was created.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "custom_description": { + "description": "Custom description for the alert. support mustache template.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "custom_summary": { + "description": "Custom summary for the alert. support mustache template.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "custom_template_format": { + "description": "The format used to interpret the `custom_summary` and `custom_description` templates.\n\n`HTML` treats both templates as HTML with Mustache `{{VARIABLE_NAME}}` placeholders.\n`MARKDOWN` treats them as Markdown with allowlisted `@VARIABLE_NAME` placeholders and converts\nthem to the format each notification destination expects, so a single template renders\ncorrectly in email, Slack, and Microsoft Teams.\n\nWhen unset, the API applies no default. Responses omit the field unless a format is stored,\nand a template with no format is rendered as HTML.", + "ref": "sql.CustomTemplateFormat", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + }, + "display_name": { + "description": "The display name of the alert.", + "launch_stage": "GA" + }, + "effective_run_as": { + "description": "The actual identity that will be used to execute the alert.\nThis is an output-only field that shows the resolved run-as identity after applying\npermissions and defaults.", + "ref": "sql.AlertV2RunAs", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "evaluation": { + "ref": "sql.AlertV2Evaluation", + "launch_stage": "GA" + }, + "id": { + "description": "The canonical identifier of the alert to retrieve information about.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "lifecycle_state": { + "description": "Indicates whether the query is trashed.", + "ref": "sql.AlertLifecycleState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "owner_user_name": { + "description": "The owner's username. This field is set to \"Unavailable\" if the user has been deleted.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "parameters": { + "description": "A list of parameters to pass into the alert SQL query statement containing parameter markers. Static values only.\n\nReference a parameter in the query text as `:name`. Each parameter must have a unique, non-empty name.\nEach parameter consists of a name, a value, and optionally a type. To represent a NULL\nvalue, the `value` field may be omitted or set to `null` explicitly. If the `type` field\nis omitted, the value is interpreted as a string.\n\nIf the type is given, parameters will be checked for type correctness according\nto the given type. A value is correct if the provided string can be converted to\nthe requested type using the `cast` function. The exact semantics are described in\nthe section [`cast` function](https://docs.databricks.com/sql/language-manual/functions/cast.html) of the SQL language reference.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL", + "UNORDERED_LIST" + ] + }, + "parent_path": { + "description": "The workspace path of the folder containing the alert. Can only be set on create, and cannot be updated.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "query_text": { + "description": "Text of the query to be run.", + "launch_stage": "GA" + }, + "run_as": { + "description": "Specifies the identity that will be used to run the alert.\nThis field allows you to configure alerts to run as a specific user or service principal.\n- For user identity: Set `user_name` to the email of an active workspace user. Users can only set this to their own email.\n- For service principal: Set `service_principal_name` to the application ID. Requires the `servicePrincipal/user` role.\nIf not specified, the alert will run as the request user.", + "ref": "sql.AlertV2RunAs", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "run_as_user_name": { + "description": "The run as username or application ID of service principal.\nOn Create and Update, this field can be set to application ID of an active service principal. Setting this field requires the servicePrincipal/user role.\nDeprecated: Use `run_as` field instead. This field will be removed in a future release.", + "deprecated": true, + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "schedule": { + "ref": "sql.CronSchedule", + "launch_stage": "GA" + }, + "update_time": { + "description": "The timestamp indicating when the alert was updated.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "warehouse_id": { + "description": "ID of the SQL warehouse attached to the alert.", + "launch_stage": "GA" + } + } + }, + "sql.AlertV2Evaluation": { + "fields": { + "comparison_operator": { + "description": "Operator used for comparison in alert evaluation.", + "ref": "sql.ComparisonOperator", + "launch_stage": "GA" + }, + "empty_result_state": { + "description": "Alert state if result is empty. Please avoid setting this field to be `UNKNOWN` because `UNKNOWN` state is planned to be deprecated.", + "ref": "sql.AlertEvaluationState", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "last_evaluated_at": { + "description": "Timestamp of the last evaluation.", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "notification": { + "description": "User or Notification Destination to notify when alert is triggered.", + "ref": "sql.AlertV2Notification", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "source": { + "description": "Source column from result to use to evaluate alert", + "ref": "sql.AlertV2OperandColumn", + "launch_stage": "GA" + }, + "state": { + "description": "Latest state of alert evaluation.", + "ref": "sql.AlertEvaluationState", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "threshold": { + "description": "Threshold to user for alert evaluation, can be a column or a value.", + "ref": "sql.AlertV2Operand", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sql.AlertV2Notification": { + "fields": { + "notify_on_ok": { + "description": "Whether to notify alert subscribers when alert returns back to normal.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "retrigger_seconds": { + "description": "Number of seconds an alert waits after being triggered before it is allowed to send another notification.\nIf set to 0 or omitted, the alert will not send any further notifications after the first trigger\nSetting this value to 1 allows the alert to send a notification on every evaluation where the condition is met, effectively making it always retrigger for notification purposes.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "subscriptions": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL", + "UNORDERED_LIST" + ] + } + } + }, + "sql.AlertV2Operand": { + "fields": { + "column": { + "ref": "sql.AlertV2OperandColumn", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "value": { + "ref": "sql.AlertV2OperandValue", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sql.AlertV2OperandColumn": { + "fields": { + "aggregation": { + "description": "If not set, the behavior is equivalent to using `First row` in the UI.", + "ref": "sql.Aggregation", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "display": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "launch_stage": "GA" + } + } + }, + "sql.AlertV2OperandValue": { + "fields": { + "bool_value": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "double_value": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "string_value": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sql.AlertV2RunAs": { + "fields": { + "service_principal_name": { + "description": "Application ID of an active service principal. Setting this field requires the `servicePrincipal/user` role.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "user_name": { + "description": "The email of an active workspace user. Can only set this field to their own email.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sql.AlertV2Subscription": { + "fields": { + "destination_id": { + "launch_stage": "GA" + }, + "user_email": { + "launch_stage": "GA" + } + } + }, + "sql.BaseChunkInfo": { + "fields": { + "byte_count": { + "description": "The number of bytes in the result chunk. This field is not available when using `INLINE`\ndisposition.", + "launch_stage": "GA" + }, + "chunk_index": { + "description": "The position within the sequence of result set chunks.", + "launch_stage": "GA" + }, + "row_count": { + "description": "The number of rows within the result chunk.", + "launch_stage": "GA" + }, + "row_offset": { + "description": "The starting row offset within the result set.", + "launch_stage": "GA" + } + } + }, + "sql.CancelExecutionRequest": {}, + "sql.Channel": { + "description": "Configures the channel name and DBSQL version of the warehouse. CHANNEL_NAME_CUSTOM should be chosen only when `dbsql_version` is specified.", + "fields": { + "dbsql_version": { + "launch_stage": "GA" + }, + "name": { + "ref": "sql.ChannelName", + "launch_stage": "GA" + } + } + }, + "sql.ChannelInfo": { + "description": "Details about a Channel.", + "fields": { + "dbsql_version": { + "description": "DB SQL Version the Channel is mapped to.", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the channel", + "ref": "sql.ChannelName", + "launch_stage": "GA" + } + } + }, + "sql.ChannelName": { + "enum": [ + "CHANNEL_NAME_PREVIEW", + "CHANNEL_NAME_CURRENT", + "CHANNEL_NAME_PREVIOUS", + "CHANNEL_NAME_CUSTOM" + ], + "enum_launch_stages": { + "CHANNEL_NAME_CURRENT": "GA", + "CHANNEL_NAME_CUSTOM": "GA", + "CHANNEL_NAME_PREVIEW": "GA", + "CHANNEL_NAME_PREVIOUS": "GA" + } + }, + "sql.ClientConfig": { + "fields": { + "allow_custom_js_visualizations": { + "description": "allow_custom_js_visualizations is not supported/implemneted.", + "deprecated": true, + "launch_stage": "PRIVATE_PREVIEW" + }, + "allow_downloads": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "allow_external_shares": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "allow_subscriptions": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "date_format": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "date_time_format": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "disable_publish": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "enable_legacy_autodetect_types": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "feature_show_permissions_control": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "hide_plotly_mode_bar": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sql.ColumnInfo": { + "fields": { + "name": { + "description": "The name of the column.", + "launch_stage": "GA" + }, + "position": { + "description": "The ordinal position of the column (starting at position 0).", + "launch_stage": "GA" + }, + "type_interval_type": { + "description": "The format of the interval type.", + "launch_stage": "GA" + }, + "type_name": { + "description": "The name of the base data type. This doesn't include details for complex types such as STRUCT, MAP or ARRAY.", + "ref": "sql.ColumnInfoTypeName", + "launch_stage": "GA" + }, + "type_precision": { + "description": "Specifies the number of digits in a number. This applies to the DECIMAL type.", + "launch_stage": "GA" + }, + "type_scale": { + "description": "Specifies the number of digits to the right of the decimal point in a number. This applies to the DECIMAL type.", + "launch_stage": "GA" + }, + "type_text": { + "description": "The full SQL type specification.", + "launch_stage": "GA" + } + } + }, + "sql.ColumnInfoTypeName": { + "description": "The name of the base data type. This doesn't include details for complex types such as STRUCT, MAP or ARRAY.", + "enum": [ + "BOOLEAN", + "BYTE", + "SHORT", + "INT", + "LONG", + "FLOAT", + "DOUBLE", + "DATE", + "TIMESTAMP", + "STRING", + "BINARY", + "DECIMAL", + "INTERVAL", + "ARRAY", + "STRUCT", + "MAP", + "CHAR", + "NULL", + "USER_DEFINED_TYPE" + ], + "enum_launch_stages": { + "ARRAY": "GA", + "BINARY": "GA", + "BOOLEAN": "GA", + "BYTE": "GA", + "CHAR": "GA", + "DATE": "GA", + "DECIMAL": "GA", + "DOUBLE": "GA", + "FLOAT": "GA", + "INT": "GA", + "INTERVAL": "GA", + "LONG": "GA", + "MAP": "GA", + "NULL": "GA", + "SHORT": "GA", + "STRING": "GA", + "STRUCT": "GA", + "TIMESTAMP": "GA", + "USER_DEFINED_TYPE": "GA" + } + }, + "sql.ComparisonOperator": { + "enum": [ + "LESS_THAN", + "GREATER_THAN", + "EQUAL", + "NOT_EQUAL", + "GREATER_THAN_OR_EQUAL", + "LESS_THAN_OR_EQUAL", + "IS_NULL", + "IS_NOT_NULL" + ], + "enum_launch_stages": { + "EQUAL": "GA", + "GREATER_THAN": "GA", + "GREATER_THAN_OR_EQUAL": "GA", + "IS_NOT_NULL": "GA", + "IS_NULL": "GA", + "LESS_THAN": "GA", + "LESS_THAN_OR_EQUAL": "GA", + "NOT_EQUAL": "GA" + } + }, + "sql.CreateAlert": { + "fields": { + "name": { + "description": "Name of the alert.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "options": { + "description": "Alert configuration options.", + "ref": "sql.AlertOptions", + "launch_stage": "PUBLIC_PREVIEW" + }, + "parent": { + "description": "The identifier of the workspace folder containing the object.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "query_id": { + "description": "Query ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "rearm": { + "description": "Number of seconds after being triggered before the alert rearms itself and can be triggered again. If `null`, alert will never be triggered again.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "sql.CreateAlertRequest": { + "fields": { + "alert": { + "ref": "sql.CreateAlertRequestAlert", + "launch_stage": "GA" + }, + "auto_resolve_display_name": { + "description": "If true, automatically resolve alert display name conflicts. Otherwise, fail the request if the alert's display name conflicts with an existing alert's display name.", + "launch_stage": "GA" + } + } + }, + "sql.CreateAlertRequestAlert": { + "fields": { + "condition": { + "description": "Trigger conditions of the alert.", + "ref": "sql.AlertCondition", + "launch_stage": "GA" + }, + "custom_body": { + "description": "Custom body of alert notification, if it exists. See [here](https://docs.databricks.com/sql/user/alerts/index.html) for custom templating instructions.", + "launch_stage": "GA" + }, + "custom_subject": { + "description": "Custom subject of alert notification, if it exists. This can include email subject entries and Slack notification headers, for example. See [here](https://docs.databricks.com/sql/user/alerts/index.html) for custom templating instructions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "The display name of the alert.", + "launch_stage": "GA" + }, + "notify_on_ok": { + "description": "Whether to notify alert subscribers when alert returns back to normal.", + "launch_stage": "GA" + }, + "parent_path": { + "description": "The workspace path of the folder containing the alert.", + "launch_stage": "GA" + }, + "query_id": { + "description": "UUID of the query attached to the alert.", + "launch_stage": "GA" + }, + "seconds_to_retrigger": { + "description": "Number of seconds an alert must wait after being triggered to rearm itself. After rearming, it can be triggered again. If 0 or not specified, the alert will not be triggered again.", + "launch_stage": "GA" + } + } + }, + "sql.CreateAlertV2Request": { + "fields": { + "alert": { + "ref": "sql.AlertV2", + "launch_stage": "GA" + } + } + }, + "sql.CreateDefaultWarehouseOverrideRequest": { + "fields": { + "default_warehouse_override": { + "description": "Required. The default warehouse override to create.", + "ref": "sql.DefaultWarehouseOverride", + "launch_stage": "PUBLIC_BETA" + }, + "default_warehouse_override_id": { + "description": "Required. The ID to use for the override, which will become the final component\nof the override's resource name.\nCan be a numeric user ID or the literal string \"me\" for the current user.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "sql.CreateQueryRequest": { + "fields": { + "auto_resolve_display_name": { + "description": "If true, automatically resolve query display name conflicts. Otherwise, fail the request if the query's display name conflicts with an existing query's display name.", + "launch_stage": "GA" + }, + "query": { + "ref": "sql.CreateQueryRequestQuery", + "launch_stage": "GA" + } + } + }, + "sql.CreateQueryRequestQuery": { + "fields": { + "apply_auto_limit": { + "description": "Whether to apply a 1000 row limit to the query result.", + "launch_stage": "GA" + }, + "catalog": { + "description": "Name of the catalog where this query will be executed.", + "launch_stage": "GA" + }, + "description": { + "description": "General description that conveys additional information about this query such as usage notes.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the query that appears in list views, widget headings, and on the query page.", + "launch_stage": "GA" + }, + "parameters": { + "description": "List of query parameter definitions.", + "launch_stage": "GA" + }, + "parent_path": { + "description": "Workspace path of the workspace folder containing the object.", + "launch_stage": "GA" + }, + "query_text": { + "description": "Text of the query to be run.", + "launch_stage": "GA" + }, + "run_as_mode": { + "description": "Sets the \"Run as\" role for the object.", + "ref": "sql.RunAsMode", + "launch_stage": "GA" + }, + "schema": { + "description": "Name of the schema where this query will be executed.", + "launch_stage": "GA" + }, + "tags": { + "launch_stage": "GA" + }, + "warehouse_id": { + "description": "ID of the SQL warehouse attached to the query.", + "launch_stage": "GA" + } + } + }, + "sql.CreateQueryVisualizationsLegacyRequest": { + "description": "Add visualization to a query", + "fields": { + "description": { + "description": "A short description of this visualization. This is not displayed in the UI.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "name": { + "description": "The name of the visualization that appears on dashboards and the query screen.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "options": { + "description": "The options object varies widely from one visualization type to the next and is unsupported. Databricks does not recommend modifying visualization settings in JSON.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "query_id": { + "description": "The identifier returned by :method:queries/create", + "launch_stage": "PRIVATE_PREVIEW" + }, + "type": { + "description": "The type of visualization: chart, table, pivot table, and so on.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sql.CreateVisualizationRequest": { + "fields": { + "visualization": { + "ref": "sql.CreateVisualizationRequestVisualization", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sql.CreateVisualizationRequestVisualization": { + "fields": { + "display_name": { + "description": "The display name of the visualization.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "query_id": { + "description": "UUID of the query that the visualization is attached to.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "serialized_options": { + "description": "The visualization options varies widely from one visualization type to the next and is unsupported. Databricks does not recommend modifying visualization options directly.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "serialized_query_plan": { + "description": "The visualization query plan varies widely from one visualization type to the next and is unsupported. Databricks does not recommend modifying the visualization query plan directly.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "type": { + "description": "The type of visualization: counter, table, funnel, and so on.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sql.CreateWarehouseRequest": { + "description": "Creates a new SQL warehouse.", + "fields": { + "auto_stop_mins": { + "description": "The amount of time in minutes that a SQL warehouse must be idle (i.e., no\nRUNNING queries) before it is automatically stopped.\n\nSupported values:\n- Must be == 0 or \u003e= 10 mins\n- 0 indicates no autostop.\n\nDefaults to 120 mins", + "launch_stage": "GA" + }, + "channel": { + "description": "Channel Details", + "ref": "sql.Channel", + "launch_stage": "GA" + }, + "cluster_size": { + "description": "Size of the clusters allocated for this warehouse.\nIncreasing the size of a spark cluster allows you to run larger queries on\nit. If you want to increase the number of concurrent queries, please tune\nmax_num_clusters.\n\nSupported values:\n- 2X-Small\n- X-Small\n- Small\n- Medium\n- Large\n- X-Large\n- 2X-Large\n- 3X-Large\n- 4X-Large\n- 5X-Large", + "launch_stage": "GA" + }, + "creator_name": { + "description": "warehouse creator name", + "launch_stage": "GA" + }, + "enable_photon": { + "description": "Configures whether the warehouse should use Photon optimized clusters.\n\nDefaults to true.", + "launch_stage": "GA" + }, + "enable_serverless_compute": { + "description": "Configures whether the warehouse should use serverless compute", + "launch_stage": "GA" + }, + "instance_profile_arn": { + "description": "Deprecated. Instance profile used to pass IAM role to the cluster", + "deprecated": true, + "launch_stage": "GA" + }, + "max_num_clusters": { + "description": "Maximum number of clusters that the autoscaler will create to handle\nconcurrent queries.\n\nSupported values:\n- Must be \u003e= min_num_clusters\n- Must be \u003c= 40.\n\nDefaults to min_clusters if unset.", + "launch_stage": "GA" + }, + "min_num_clusters": { + "description": "Minimum number of available clusters that will be maintained for this SQL\nwarehouse. Increasing this will ensure that a larger number of clusters are\nalways running and therefore may reduce the cold start time for new\nqueries. This is similar to reserved vs. revocable cores in a resource\nmanager.\n\nSupported values:\n- Must be \u003e 0\n- Must be \u003c= min(max_num_clusters, 30)\n\nDefaults to 1", + "launch_stage": "GA" + }, + "name": { + "description": "Logical name for the cluster.\n\nSupported values:\n- Must be unique within an org.\n- Must be less than 100 characters.", + "launch_stage": "GA" + }, + "spot_instance_policy": { + "description": "Configurations whether the endpoint should use spot instances.", + "ref": "sql.SpotInstancePolicy", + "launch_stage": "GA" + }, + "statement_timeout": { + "description": "Warehouse statement timeout in seconds.", + "launch_stage": "PUBLIC_BETA" + }, + "tags": { + "description": "A set of key-value pairs that will be tagged on all resources (e.g., AWS instances and EBS volumes) associated\nwith this SQL warehouse.\n\nSupported values:\n- Number of tags \u003c 45.", + "ref": "sql.EndpointTags", + "launch_stage": "GA" + }, + "warehouse_type": { + "description": "Warehouse type: `PRO` or `CLASSIC`. If you want to use serverless compute,\nyou must set to `PRO` and also set the field `enable_serverless_compute` to `true`.", + "ref": "sql.CreateWarehouseRequestWarehouseType", + "launch_stage": "GA" + } + } + }, + "sql.CreateWarehouseRequestWarehouseType": { + "enum": [ + "TYPE_UNSPECIFIED", + "CLASSIC", + "PRO", + "REALTIME" + ], + "enum_launch_stages": { + "CLASSIC": "GA", + "PRO": "GA", + "REALTIME": "PRIVATE_PREVIEW", + "TYPE_UNSPECIFIED": "GA" + } + }, + "sql.CreateWarehouseResponse": { + "fields": { + "id": { + "description": "Id for the SQL warehouse.\nThis value is unique across all SQL warehouses.", + "launch_stage": "GA" + } + } + }, + "sql.CreateWidget": { + "fields": { + "dashboard_id": { + "description": "Dashboard ID returned by :method:dashboards/create.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "options": { + "ref": "sql.WidgetOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "text": { + "description": "If this is a textbox widget, the application displays this text. This field is ignored if the widget contains a visualization in the `visualization` field.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "visualization_id": { + "description": "Query Visualization ID returned by :method:queryvisualizations/create.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "width": { + "description": "Width of a widget", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sql.CronSchedule": { + "fields": { + "pause_status": { + "description": "Indicate whether this schedule is paused or not.", + "ref": "sql.SchedulePauseStatus", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "quartz_cron_schedule": { + "description": "A cron expression using quartz syntax that specifies the schedule for this pipeline.\nShould use the quartz format described here: http://www.quartz-scheduler.org/documentation/quartz-2.1.7/tutorials/tutorial-lesson-06.html", + "launch_stage": "GA" + }, + "timezone_id": { + "description": "A Java timezone id. The schedule will be resolved using this timezone.\nThis will be combined with the quartz_cron_schedule to determine the schedule.\nSee https://docs.databricks.com/sql/language-manual/sql-ref-syntax-aux-conf-mgmt-set-timezone.html for details.", + "launch_stage": "GA" + } + } + }, + "sql.CustomTemplateFormat": { + "description": "Rendering format for the `custom_summary` and `custom_description` templates.", + "enum": [ + "HTML", + "MARKDOWN" + ], + "enum_launch_stages": { + "HTML": "PRIVATE_PREVIEW", + "MARKDOWN": "PRIVATE_PREVIEW" + } + }, + "sql.Dashboard": { + "description": "A JSON representing a dashboard containing widgets of visualizations and text boxes.", + "fields": { + "can_edit": { + "description": "Whether the authenticated user can edit the query definition.", + "launch_stage": "GA" + }, + "created_at": { + "description": "Timestamp when this dashboard was created.", + "launch_stage": "GA" + }, + "dashboard_filters_enabled": { + "description": "In the web application, query filters that share a name are coupled to a single selection box if this value is `true`.", + "launch_stage": "GA" + }, + "id": { + "description": "The ID for this dashboard.", + "launch_stage": "GA" + }, + "is_archived": { + "description": "Indicates whether a dashboard is trashed. Trashed dashboards won't appear in list views. If this boolean is `true`, the `options` property for this dashboard includes a `moved_to_trash_at` timestamp. Items in trash are permanently deleted after 30 days.", + "launch_stage": "GA" + }, + "is_draft": { + "description": "Whether a dashboard is a draft. Draft dashboards only appear in list views for their owners.", + "launch_stage": "GA" + }, + "is_favorite": { + "description": "Indicates whether this query object appears in the current user's favorites list. This flag determines whether the star icon for favorites is selected.", + "launch_stage": "GA" + }, + "name": { + "description": "The title of the dashboard that appears in list views and at the top of the dashboard page.", + "launch_stage": "GA" + }, + "options": { + "ref": "sql.DashboardOptions", + "launch_stage": "GA" + }, + "parent": { + "description": "The identifier of the workspace folder containing the object.", + "launch_stage": "GA" + }, + "permission_tier": { + "description": "* `CAN_VIEW`: Can view the query\n* `CAN_RUN`: Can run the query\n* `CAN_EDIT`: Can edit the query\n* `CAN_MANAGE`: Can manage the query", + "ref": "sql.PermissionLevel", + "launch_stage": "GA" + }, + "slug": { + "description": "URL slug. Usually mirrors the query name with dashes (`-`) instead of spaces. Appears in the URL for this query.", + "launch_stage": "GA" + }, + "tags": { + "launch_stage": "GA" + }, + "updated_at": { + "description": "Timestamp when this dashboard was last updated.", + "launch_stage": "GA" + }, + "user": { + "ref": "sql.User", + "launch_stage": "GA" + }, + "user_id": { + "description": "The ID of the user who owns the dashboard.", + "launch_stage": "GA" + }, + "widgets": { + "launch_stage": "GA" + } + } + }, + "sql.DashboardEditContent": { + "fields": { + "name": { + "description": "The title of this dashboard that appears in list views and at the top of the dashboard page.", + "launch_stage": "GA" + }, + "run_as_role": { + "description": "Sets the **Run as** role for the object. Must be set to one of `\"viewer\"` (signifying \"run as viewer\" behavior) or `\"owner\"` (signifying \"run as owner\" behavior)", + "ref": "sql.RunAsRole", + "launch_stage": "GA" + }, + "tags": { + "launch_stage": "GA" + } + } + }, + "sql.DashboardOptions": { + "fields": { + "moved_to_trash_at": { + "description": "The timestamp when this dashboard was moved to trash. Only present when the `is_archived` property is `true`. Trashed items are deleted after thirty days.", + "launch_stage": "GA" + } + } + }, + "sql.DataSource": { + "description": "A JSON object representing a DBSQL data source / SQL warehouse.", + "fields": { + "id": { + "description": "Data source ID maps to the ID of the data source used by the resource and is distinct from the warehouse ID. [Learn more](https://docs.databricks.com/api/workspace/datasources/list)", + "launch_stage": "GA" + }, + "name": { + "description": "The string name of this data source / SQL warehouse as it appears in the Databricks SQL web application.", + "launch_stage": "GA" + }, + "pause_reason": { + "description": "Reserved for internal use.", + "launch_stage": "GA" + }, + "paused": { + "description": "Reserved for internal use.", + "launch_stage": "GA" + }, + "supports_auto_limit": { + "description": "Reserved for internal use.", + "launch_stage": "GA" + }, + "syntax": { + "description": "Reserved for internal use.", + "launch_stage": "GA" + }, + "type": { + "description": "The type of data source. For SQL warehouses, this will be `databricks_internal`.", + "launch_stage": "GA" + }, + "view_only": { + "description": "Reserved for internal use.", + "launch_stage": "GA" + }, + "warehouse_id": { + "description": "The ID of the associated SQL warehouse, if this data source is backed by a SQL warehouse.", + "launch_stage": "GA" + } + } + }, + "sql.DatePrecision": { + "enum": [ + "DAY_PRECISION", + "MINUTE_PRECISION", + "SECOND_PRECISION" + ], + "enum_launch_stages": { + "DAY_PRECISION": "GA", + "MINUTE_PRECISION": "GA", + "SECOND_PRECISION": "GA" + } + }, + "sql.DateRange": { + "fields": { + "end": { + "launch_stage": "GA" + }, + "start": { + "launch_stage": "GA" + } + } + }, + "sql.DateRangeValue": { + "fields": { + "date_range_value": { + "description": "Manually specified date-time range value.", + "ref": "sql.DateRange", + "launch_stage": "GA" + }, + "dynamic_date_range_value": { + "description": "Dynamic date-time range value based on current date-time.", + "ref": "sql.DateRangeValueDynamicDateRange", + "launch_stage": "GA" + }, + "precision": { + "description": "Date-time precision to format the value into when the query is run. Defaults to DAY_PRECISION (YYYY-MM-DD).", + "ref": "sql.DatePrecision", + "launch_stage": "GA" + }, + "start_day_of_week": { + "launch_stage": "GA" + } + } + }, + "sql.DateRangeValueDynamicDateRange": { + "enum": [ + "TODAY", + "YESTERDAY", + "THIS_WEEK", + "THIS_MONTH", + "THIS_YEAR", + "LAST_WEEK", + "LAST_MONTH", + "LAST_YEAR", + "LAST_HOUR", + "LAST_8_HOURS", + "LAST_24_HOURS", + "LAST_7_DAYS", + "LAST_14_DAYS", + "LAST_30_DAYS", + "LAST_60_DAYS", + "LAST_90_DAYS", + "LAST_12_MONTHS" + ], + "enum_launch_stages": { + "LAST_12_MONTHS": "GA", + "LAST_14_DAYS": "GA", + "LAST_24_HOURS": "GA", + "LAST_30_DAYS": "GA", + "LAST_60_DAYS": "GA", + "LAST_7_DAYS": "GA", + "LAST_8_HOURS": "GA", + "LAST_90_DAYS": "GA", + "LAST_HOUR": "GA", + "LAST_MONTH": "GA", + "LAST_WEEK": "GA", + "LAST_YEAR": "GA", + "THIS_MONTH": "GA", + "THIS_WEEK": "GA", + "THIS_YEAR": "GA", + "TODAY": "GA", + "YESTERDAY": "GA" + } + }, + "sql.DateValue": { + "fields": { + "date_value": { + "description": "Manually specified date-time value.", + "launch_stage": "GA" + }, + "dynamic_date_value": { + "description": "Dynamic date-time value based on current date-time.", + "ref": "sql.DateValueDynamicDate", + "launch_stage": "GA" + }, + "precision": { + "description": "Date-time precision to format the value into when the query is run. Defaults to DAY_PRECISION (YYYY-MM-DD).", + "ref": "sql.DatePrecision", + "launch_stage": "GA" + } + } + }, + "sql.DateValueDynamicDate": { + "enum": [ + "NOW", + "YESTERDAY" + ], + "enum_launch_stages": { + "NOW": "GA", + "YESTERDAY": "GA" + } + }, + "sql.DefaultWarehouseOverride": { + "description": "Represents a per-user default warehouse override configuration.\nThis resource allows users or administrators to customize how a user's\ndefault warehouse is selected for SQL operations.\nIf no override exists for a user, the workspace default warehouse will be used.", + "fields": { + "default_warehouse_override_id": { + "description": "The ID component of the resource name (user ID).", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "name": { + "description": "The resource name of the default warehouse override.\nFormat: default-warehouse-overrides/{default_warehouse_override_id}", + "launch_stage": "PUBLIC_BETA" + }, + "type": { + "description": "The type of override behavior.", + "ref": "sql.DefaultWarehouseOverrideType", + "launch_stage": "PUBLIC_BETA" + }, + "warehouse_id": { + "description": "The specific warehouse ID when type is CUSTOM.\nNot set for LAST_SELECTED type.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sql.DefaultWarehouseOverrideType": { + "description": "Type of default warehouse override behavior.", + "enum": [ + "LAST_SELECTED", + "CUSTOM" + ], + "enum_launch_stages": { + "CUSTOM": "PUBLIC_BETA", + "LAST_SELECTED": "PUBLIC_BETA" + } + }, + "sql.DeleteAlertsLegacyRequest": {}, + "sql.DeleteDashboardRequest": {}, + "sql.DeleteDashboardWidgetRequest": {}, + "sql.DeleteDefaultWarehouseOverrideRequest": {}, + "sql.DeleteQueriesLegacyRequest": {}, + "sql.DeleteQueryVisualizationsLegacyRequest": {}, + "sql.DeleteResponse": {}, + "sql.DeleteVisualizationRequest": {}, + "sql.DeleteWarehouseRequest": {}, + "sql.DeleteWarehouseResponse": {}, + "sql.Disposition": { + "enum": [ + "INLINE", + "EXTERNAL_LINKS" + ], + "enum_launch_stages": { + "EXTERNAL_LINKS": "GA", + "INLINE": "GA" + } + }, + "sql.EditAlert": { + "fields": { + "name": { + "description": "Name of the alert.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "options": { + "description": "Alert configuration options.", + "ref": "sql.AlertOptions", + "launch_stage": "PUBLIC_PREVIEW" + }, + "query_id": { + "description": "Query ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "rearm": { + "description": "Number of seconds after being triggered before the alert rearms itself and can be triggered again. If `null`, alert will never be triggered again.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "sql.EditWarehouseRequest": { + "description": "This is an incremental edit functionality, so all fields except id are optional. If a field is set, the corresponding\nconfiguration in the SQL warehouse is modified. If a field is unset, the existing configuration value in the SQL\nwarehouse is retained. Thus, this API is not idempotent.", + "fields": { + "auto_stop_mins": { + "description": "The amount of time in minutes that a SQL warehouse must be idle (i.e., no\nRUNNING queries) before it is automatically stopped.\n\nSupported values:\n- Must be == 0 or \u003e= 10 mins\n- 0 indicates no autostop.\n\nDefaults to 120 mins", + "launch_stage": "GA" + }, + "channel": { + "description": "Channel Details", + "ref": "sql.Channel", + "launch_stage": "GA" + }, + "cluster_size": { + "description": "Size of the clusters allocated for this warehouse.\nIncreasing the size of a spark cluster allows you to run larger queries on\nit. If you want to increase the number of concurrent queries, please tune\nmax_num_clusters.\n\nSupported values:\n- 2X-Small\n- X-Small\n- Small\n- Medium\n- Large\n- X-Large\n- 2X-Large\n- 3X-Large\n- 4X-Large\n- 5X-Large", + "launch_stage": "GA" + }, + "creator_name": { + "description": "warehouse creator name", + "launch_stage": "GA" + }, + "enable_photon": { + "description": "Configures whether the warehouse should use Photon optimized clusters.\n\nDefaults to true.", + "launch_stage": "GA" + }, + "enable_serverless_compute": { + "description": "Configures whether the warehouse should use serverless compute", + "launch_stage": "GA" + }, + "instance_profile_arn": { + "description": "Deprecated. Instance profile used to pass IAM role to the cluster", + "deprecated": true, + "launch_stage": "GA" + }, + "max_num_clusters": { + "description": "Maximum number of clusters that the autoscaler will create to handle\nconcurrent queries.\n\nSupported values:\n- Must be \u003e= min_num_clusters\n- Must be \u003c= 40.\n\nDefaults to min_clusters if unset.", + "launch_stage": "GA" + }, + "min_num_clusters": { + "description": "Minimum number of available clusters that will be maintained for this SQL\nwarehouse. Increasing this will ensure that a larger number of clusters are\nalways running and therefore may reduce the cold start time for new\nqueries. This is similar to reserved vs. revocable cores in a resource\nmanager.\n\nSupported values:\n- Must be \u003e 0\n- Must be \u003c= min(max_num_clusters, 30)\n\nDefaults to 1", + "launch_stage": "GA" + }, + "name": { + "description": "Logical name for the cluster.\n\nSupported values:\n- Must be unique within an org.\n- Must be less than 100 characters.", + "launch_stage": "GA" + }, + "spot_instance_policy": { + "description": "Configurations whether the endpoint should use spot instances.", + "ref": "sql.SpotInstancePolicy", + "launch_stage": "GA" + }, + "statement_timeout": { + "description": "Warehouse statement timeout in seconds.", + "launch_stage": "PUBLIC_BETA" + }, + "tags": { + "description": "A set of key-value pairs that will be tagged on all resources (e.g., AWS instances and EBS volumes) associated\nwith this SQL warehouse.\n\nSupported values:\n- Number of tags \u003c 45.", + "ref": "sql.EndpointTags", + "launch_stage": "GA" + }, + "warehouse_type": { + "description": "Warehouse type: `PRO` or `CLASSIC`. If you want to use serverless compute,\nyou must set to `PRO` and also set the field `enable_serverless_compute` to `true`.", + "ref": "sql.EditWarehouseRequestWarehouseType", + "launch_stage": "GA" + } + } + }, + "sql.EditWarehouseRequestWarehouseType": { + "enum": [ + "TYPE_UNSPECIFIED", + "CLASSIC", + "PRO", + "REALTIME" + ], + "enum_launch_stages": { + "CLASSIC": "GA", + "PRO": "GA", + "REALTIME": "PRIVATE_PREVIEW", + "TYPE_UNSPECIFIED": "GA" + } + }, + "sql.EditWarehouseResponse": {}, + "sql.Empty": { + "description": "Represents an empty message, similar to google.protobuf.Empty, which is not available in the firm\nright now." + }, + "sql.EndpointConfPair": { + "fields": { + "key": { + "launch_stage": "GA" + }, + "value": { + "launch_stage": "GA" + } + } + }, + "sql.EndpointHealth": { + "fields": { + "details": { + "description": "Details about errors that are causing current degraded/failed status.", + "launch_stage": "GA" + }, + "failure_reason": { + "description": "The reason for failure to bring up clusters for this warehouse. This is available when status is 'FAILED' and sometimes when it is DEGRADED.", + "ref": "sql.TerminationReason", + "launch_stage": "GA" + }, + "message": { + "description": "Deprecated. split into summary and details for security", + "deprecated": true, + "launch_stage": "GA" + }, + "status": { + "description": "Health status of the endpoint.", + "ref": "sql.Status", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "summary": { + "description": "A short summary of the health status in case of degraded/failed warehouses.", + "launch_stage": "GA" + } + } + }, + "sql.EndpointInfo": { + "fields": { + "auto_stop_mins": { + "description": "The amount of time in minutes that a SQL warehouse must be idle (i.e., no\nRUNNING queries) before it is automatically stopped.\n\nSupported values:\n- Must be == 0 or \u003e= 10 mins\n- 0 indicates no autostop.\n\nDefaults to 120 mins", + "launch_stage": "GA" + }, + "channel": { + "description": "Channel Details", + "ref": "sql.Channel", + "launch_stage": "GA" + }, + "cluster_size": { + "description": "Size of the clusters allocated for this warehouse.\nIncreasing the size of a spark cluster allows you to run larger queries on\nit. If you want to increase the number of concurrent queries, please tune\nmax_num_clusters.\n\nSupported values:\n- 2X-Small\n- X-Small\n- Small\n- Medium\n- Large\n- X-Large\n- 2X-Large\n- 3X-Large\n- 4X-Large\n- 5X-Large", + "launch_stage": "GA" + }, + "creator_name": { + "description": "warehouse creator name", + "launch_stage": "GA" + }, + "enable_photon": { + "description": "Configures whether the warehouse should use Photon optimized clusters.\n\nDefaults to true.", + "launch_stage": "GA" + }, + "enable_serverless_compute": { + "description": "Configures whether the warehouse should use serverless compute", + "launch_stage": "GA" + }, + "health": { + "description": "Optional health status. Assume the warehouse is healthy if this field is not set.", + "ref": "sql.EndpointHealth", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "id": { + "description": "unique identifier for warehouse", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "instance_profile_arn": { + "description": "Deprecated. Instance profile used to pass IAM role to the cluster", + "deprecated": true, + "launch_stage": "GA" + }, + "jdbc_url": { + "description": "the jdbc connection string for this warehouse", + "launch_stage": "GA" + }, + "max_num_clusters": { + "description": "Maximum number of clusters that the autoscaler will create to handle\nconcurrent queries.\n\nSupported values:\n- Must be \u003e= min_num_clusters\n- Must be \u003c= 40.\n\nDefaults to min_clusters if unset.", + "launch_stage": "GA" + }, + "min_num_clusters": { + "description": "Minimum number of available clusters that will be maintained for this SQL\nwarehouse. Increasing this will ensure that a larger number of clusters are\nalways running and therefore may reduce the cold start time for new\nqueries. This is similar to reserved vs. revocable cores in a resource\nmanager.\n\nSupported values:\n- Must be \u003e 0\n- Must be \u003c= min(max_num_clusters, 30)\n\nDefaults to 1", + "launch_stage": "GA" + }, + "name": { + "description": "Logical name for the cluster.\n\nSupported values:\n- Must be unique within an org.\n- Must be less than 100 characters.", + "launch_stage": "GA" + }, + "num_active_sessions": { + "description": "Deprecated. current number of active sessions for the warehouse", + "deprecated": true, + "launch_stage": "GA" + }, + "num_clusters": { + "description": "current number of clusters running for the service", + "launch_stage": "GA" + }, + "odbc_params": { + "description": "ODBC parameters for the SQL warehouse", + "ref": "sql.OdbcParams", + "launch_stage": "GA" + }, + "spot_instance_policy": { + "description": "Configurations whether the endpoint should use spot instances.", + "ref": "sql.SpotInstancePolicy", + "launch_stage": "GA" + }, + "state": { + "description": "state of the endpoint", + "ref": "sql.State", + "launch_stage": "GA" + }, + "statement_timeout": { + "description": "Warehouse statement timeout in seconds.", + "launch_stage": "PUBLIC_BETA" + }, + "tags": { + "description": "A set of key-value pairs that will be tagged on all resources (e.g., AWS instances and EBS volumes) associated\nwith this SQL warehouse.\n\nSupported values:\n- Number of tags \u003c 45.", + "ref": "sql.EndpointTags", + "launch_stage": "GA" + }, + "warehouse_type": { + "description": "Warehouse type: `PRO` or `CLASSIC`. If you want to use serverless compute,\nyou must set to `PRO` and also set the field `enable_serverless_compute` to `true`.", + "ref": "sql.EndpointInfoWarehouseType", + "launch_stage": "GA" + } + } + }, + "sql.EndpointInfoWarehouseType": { + "enum": [ + "TYPE_UNSPECIFIED", + "CLASSIC", + "PRO", + "REALTIME" + ], + "enum_launch_stages": { + "CLASSIC": "GA", + "PRO": "GA", + "REALTIME": "PRIVATE_PREVIEW", + "TYPE_UNSPECIFIED": "GA" + } + }, + "sql.EndpointTagPair": { + "fields": { + "key": { + "launch_stage": "GA" + }, + "value": { + "launch_stage": "GA" + } + } + }, + "sql.EndpointTags": { + "fields": { + "custom_tags": { + "launch_stage": "GA" + } + } + }, + "sql.EnumValue": { + "fields": { + "enum_options": { + "description": "List of valid query parameter values, newline delimited.", + "launch_stage": "GA" + }, + "multi_values_options": { + "description": "If specified, allows multiple values to be selected for this parameter.", + "ref": "sql.MultiValuesOptions", + "launch_stage": "GA" + }, + "values": { + "description": "List of selected query parameter values.", + "launch_stage": "GA" + } + } + }, + "sql.ExecuteStatementRequest": { + "fields": { + "byte_limit": { + "description": "Applies the given byte limit to the statement's result size. Byte counts are based on internal data\nrepresentations and might not match the final size in the requested `format`. If the result was truncated due to\nthe byte limit, then `truncated` in the response is set to `true`.\nWhen using `EXTERNAL_LINKS` disposition, a default `byte_limit` of 100 GiB is applied if `byte_limit` is not\nexplicitly set.", + "launch_stage": "GA" + }, + "catalog": { + "description": "Sets default catalog for statement execution, similar to\n[`USE CATALOG`](https://docs.databricks.com/sql/language-manual/sql-ref-syntax-ddl-use-catalog.html)\nin SQL.", + "launch_stage": "GA" + }, + "disposition": { + "description": "The fetch disposition provides two modes of fetching results: `INLINE` and `EXTERNAL_LINKS`.\n\nStatements executed with `INLINE` disposition will return result data inline, in `JSON_ARRAY` format, in a series\nof chunks. If a given statement produces a result set with a size larger than 25 MiB,\nthat statement execution is aborted, and no result set will be available.\n\n**NOTE**\nByte limits are computed based upon internal representations of the result set data, and might not match the sizes\nvisible in JSON responses.\n\nStatements executed with `EXTERNAL_LINKS` disposition will return result data as external links: URLs that point\nto cloud storage internal to the workspace. Using `EXTERNAL_LINKS` disposition allows statements to generate\narbitrarily sized result sets for fetching up to 100 GiB. The resulting links have two important properties:\n\n1. They point to resources _external_ to the Databricks compute; therefore any associated authentication\ninformation (typically a personal access token, OAuth token, or similar) _must be removed_ when fetching from\nthese links.\n\n2. These are short-lived cloud-storage URLs\nwith a specific expiration, indicated in the response. The behavior when attempting to use an expired link is\ncloud specific.", + "ref": "sql.Disposition", + "launch_stage": "GA" + }, + "format": { + "description": "Statement execution supports three result formats: `JSON_ARRAY` (default), `ARROW_STREAM`, and `CSV`.\n\nImportant: The formats `ARROW_STREAM` and `CSV` are supported only with `EXTERNAL_LINKS` disposition.\n`JSON_ARRAY` is supported in `INLINE` and `EXTERNAL_LINKS` disposition.\n\nWhen specifying `format=JSON_ARRAY`, result data will be formatted as an array of arrays of values, where each\nvalue is either the *string representation* of a value, or `null`.\nFor example, the output of `SELECT concat('id-', id) AS strCol, id AS intCol, null AS nullCol FROM range(3)` would\nlook like this:\n\n```\n[\n[ \"id-1\", \"1\", null ],\n[ \"id-2\", \"2\", null ],\n[ \"id-3\", \"3\", null ],\n]\n```\n\nWhen specifying `format=JSON_ARRAY` and `disposition=EXTERNAL_LINKS`, each chunk in the result contains compact\nJSON with no indentation or extra whitespace.\n\nWhen specifying `format=ARROW_STREAM` and `disposition=EXTERNAL_LINKS`, each chunk in the result will be formatted\nas Apache Arrow Stream. See the\n[Apache Arrow streaming format](https://arrow.apache.org/docs/format/Columnar.html#ipc-streaming-format).\n\nWhen specifying `format=CSV` and `disposition=EXTERNAL_LINKS`, each chunk in the result will be a CSV according to\n[RFC 4180](https://www.rfc-editor.org/rfc/rfc4180) standard.\nAll the columns values will have *string representation* similar to the `JSON_ARRAY` format, and `null` values will\nbe encoded as “null”.\nOnly the first chunk in the result would contain a header row with column names.\nFor example, the output of `SELECT concat('id-', id) AS strCol, id AS intCol, null as nullCol FROM range(3)` would\nlook like this:\n\n```\nstrCol,intCol,nullCol\nid-1,1,null\nid-2,2,null\nid-3,3,null\n```", + "ref": "sql.Format", + "launch_stage": "GA" + }, + "on_wait_timeout": { + "description": "When `wait_timeout \u003e 0s`, the call will block up to the specified time. If the statement execution doesn't\nfinish within this time, `on_wait_timeout` determines whether the execution should continue or be canceled.\nWhen set to `CONTINUE`, the statement execution continues asynchronously and the call returns a statement ID\nwhich can be used for polling with :method:statementexecution/getStatement. When set to `CANCEL`,\nthe statement execution is canceled and the call returns with a `CANCELED` state.", + "ref": "sql.ExecuteStatementRequestOnWaitTimeout", + "launch_stage": "GA" + }, + "parameters": { + "description": "A list of parameters to pass into a SQL statement containing parameter markers. A\nparameter consists of a name, a value, and optionally a type. To represent a NULL\nvalue, the `value` field may be omitted or set to `null` explicitly. If the `type` field\nis omitted, the value is interpreted as a string.\n\nIf the type is given, parameters will be checked for type correctness according\nto the given type. A value is correct if the provided string can be converted to\nthe requested type using the `cast` function. The exact semantics are described in\nthe section [`cast` function](https://docs.databricks.com/sql/language-manual/functions/cast.html) of the SQL language reference.\n\nFor example, the following statement contains two parameters, `my_name` and `my_date`:\n\n```\nSELECT * FROM my_table WHERE name = :my_name AND date = :my_date\n```\n\nThe parameters can be passed in the request body as follows:\n\n`\n{\n...,\n\"statement\": \"SELECT * FROM my_table WHERE name = :my_name AND date = :my_date\",\n\"parameters\": [\n{ \"name\": \"my_name\", \"value\": \"the name\" },\n{ \"name\": \"my_date\", \"value\": \"2020-01-01\", \"type\": \"DATE\" }\n]\n}\n`\n\nCurrently, positional parameters denoted by a `?` marker are not supported by the\nDatabricks SQL Statement Execution API.\n\nAlso see the section [Parameter markers](https://docs.databricks.com/sql/language-manual/sql-ref-parameter-marker.html) of the SQL language reference.", + "launch_stage": "GA" + }, + "query_tags": { + "description": "An array of query tags to annotate a SQL statement. A query tag\nconsists of a non-empty key and, optionally, a value. To represent a NULL\nvalue, either omit the `value` field or manually set it to `null` or white space.\nRefer to the SQL language reference for the format specification of query tags.\nThere's no significance to the order of tags. Only one value per key will be recorded.\nA sequence in excess of 20 query tags will be coerced to 20.\nExample:\n\n{\n...,\n\"query_tags\": [\n{ \"key\": \"team\", \"value\": \"eng\" },\n{ \"key\": \"some key only tag\" }\n]\n}", + "launch_stage": "GA" + }, + "row_limit": { + "description": "Applies the given row limit to the statement's result set, but unlike the `LIMIT` clause in SQL,\nit also sets the `truncated` field in the response to indicate whether the result was trimmed due to the limit or\nnot.", + "launch_stage": "GA" + }, + "schema": { + "description": "Sets default schema for statement execution, similar to\n[`USE SCHEMA`](https://docs.databricks.com/sql/language-manual/sql-ref-syntax-ddl-use-schema.html)\nin SQL.", + "launch_stage": "GA" + }, + "statement": { + "description": "The SQL statement to execute. The statement can optionally be parameterized, see `parameters`.\nThe maximum query text size is 16 MiB.", + "launch_stage": "GA" + }, + "wait_timeout": { + "description": "The time in seconds the call will wait for the statement's result set as `Ns`, where `N` can be set to 0 or to a\nvalue between 5 and 50.\n\nWhen set to `0s`, the statement will execute in asynchronous mode and the call will not wait for the execution to\nfinish. In this case, the call returns directly with `PENDING` state and a statement ID which can be used for\npolling with :method:statementexecution/getStatement.\n\nWhen set between 5 and 50 seconds, the call will behave synchronously up to this timeout and wait for the statement\nexecution to finish. If the execution finishes within this time, the call returns immediately with a manifest and\nresult data (or a `FAILED` state in case of an execution error). If the statement takes longer to execute,\n`on_wait_timeout` determines what should happen after the timeout is reached.", + "launch_stage": "GA" + }, + "warehouse_id": { + "description": "Warehouse upon which to execute a statement. See also\n[What are SQL warehouses?](https://docs.databricks.com/sql/admin/warehouse-type.html)", + "launch_stage": "GA" + } + } + }, + "sql.ExecuteStatementRequestOnWaitTimeout": { + "description": "When `wait_timeout \u003e 0s`, the call will block up to the specified time. If the statement execution doesn't\nfinish within this time, `on_wait_timeout` determines whether the execution should continue or be canceled.\nWhen set to `CONTINUE`, the statement execution continues asynchronously and the call returns a statement ID\nwhich can be used for polling with :method:statementexecution/getStatement. When set to `CANCEL`,\nthe statement execution is canceled and the call returns with a `CANCELED` state.", + "enum": [ + "CONTINUE", + "CANCEL" + ], + "enum_launch_stages": { + "CANCEL": "GA", + "CONTINUE": "GA" + } + }, + "sql.ExternalLink": { + "fields": { + "byte_count": { + "description": "The number of bytes in the result chunk. This field is not available when using `INLINE`\ndisposition.", + "launch_stage": "GA" + }, + "chunk_index": { + "description": "The position within the sequence of result set chunks.", + "launch_stage": "GA" + }, + "expiration": { + "description": "Indicates the date-time that the given external link will expire and\nbecomes invalid, after which point a new `external_link` must be requested.", + "launch_stage": "GA" + }, + "external_link": { + "description": "A short-lived cloud-storage URL pointing to a chunk of result data, hosted by an external service, with a short\nexpiration time (\u003c= 15 minutes). As this URL contains a temporary credential, it should be considered sensitive\nand the client should not expose this URL in a log.", + "launch_stage": "GA" + }, + "http_headers": { + "description": "HTTP headers that must be included with a GET request to the `external_link`.\nEach header is provided as a key-value pair.\nHeaders are typically used to pass a decryption key to the external service.\nThe values of these headers should be considered sensitive and the client should not expose\nthese values in a log.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "next_chunk_index": { + "description": "When fetching, provides the `chunk_index` for the _next_ chunk. If absent, indicates there are no\nmore chunks. The next chunk can be fetched with a\n:method:statementexecution/getstatementresultchunkn request.", + "launch_stage": "GA" + }, + "next_chunk_internal_link": { + "description": "When fetching, provides a link to fetch the _next_ chunk. If absent, indicates there are no more\nchunks. This link is an absolute `path` to be joined with your `$DATABRICKS_HOST`, and should be\ntreated as an opaque link. This is an alternative to using `next_chunk_index`.", + "launch_stage": "GA" + }, + "row_count": { + "description": "The number of rows within the result chunk.", + "launch_stage": "GA" + }, + "row_offset": { + "description": "The starting row offset within the result set.", + "launch_stage": "GA" + } + } + }, + "sql.ExternalQuerySource": { + "fields": { + "alert_id": { + "description": "The canonical identifier for this SQL alert", + "launch_stage": "GA" + }, + "dashboard_id": { + "description": "The canonical identifier for this Lakeview dashboard", + "launch_stage": "GA" + }, + "genie_space_id": { + "description": "The canonical identifier for this Genie space", + "launch_stage": "GA" + }, + "job_info": { + "ref": "sql.ExternalQuerySourceJobInfo", + "launch_stage": "GA" + }, + "legacy_dashboard_id": { + "description": "The canonical identifier for this legacy dashboard", + "launch_stage": "GA" + }, + "notebook_id": { + "description": "The canonical identifier for this notebook", + "launch_stage": "GA" + }, + "sql_query_id": { + "description": "The canonical identifier for this SQL query", + "launch_stage": "GA" + } + } + }, + "sql.ExternalQuerySourceJobInfo": { + "fields": { + "job_id": { + "description": "The canonical identifier for this job.", + "launch_stage": "GA" + }, + "job_run_id": { + "description": "The canonical identifier of the run. This ID is unique across all runs of all jobs.", + "launch_stage": "GA" + }, + "job_task_run_id": { + "description": "The canonical identifier of the task run.", + "launch_stage": "GA" + } + } + }, + "sql.Format": { + "enum": [ + "JSON_ARRAY", + "ARROW_STREAM", + "CSV" + ], + "enum_launch_stages": { + "ARROW_STREAM": "GA", + "CSV": "GA", + "JSON_ARRAY": "GA" + } + }, + "sql.GetAlertRequest": {}, + "sql.GetAlertV2Request": {}, + "sql.GetAlertsLegacyRequest": {}, + "sql.GetConfigRequest": {}, + "sql.GetDashboardRequest": {}, + "sql.GetDbsqlPermissionRequest": {}, + "sql.GetDefaultWarehouseOverrideRequest": {}, + "sql.GetQueriesLegacyRequest": {}, + "sql.GetQueryRequest": {}, + "sql.GetResponse": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "description": "An object's type and UUID, separated by a forward slash (/) character.", + "launch_stage": "GA" + }, + "object_type": { + "description": "A singular noun object type.", + "ref": "sql.ObjectType", + "launch_stage": "GA" + } + } + }, + "sql.GetStatementRequest": {}, + "sql.GetStatementResultChunkNRequest": {}, + "sql.GetWarehousePermissionLevelsRequest": {}, + "sql.GetWarehousePermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "GA" + } + } + }, + "sql.GetWarehousePermissionsRequest": {}, + "sql.GetWarehouseRequest": {}, + "sql.GetWarehouseResponse": { + "fields": { + "auto_stop_mins": { + "description": "The amount of time in minutes that a SQL warehouse must be idle (i.e., no\nRUNNING queries) before it is automatically stopped.\n\nSupported values:\n- Must be == 0 or \u003e= 10 mins\n- 0 indicates no autostop.\n\nDefaults to 120 mins", + "launch_stage": "GA" + }, + "channel": { + "description": "Channel Details", + "ref": "sql.Channel", + "launch_stage": "GA" + }, + "cluster_size": { + "description": "Size of the clusters allocated for this warehouse.\nIncreasing the size of a spark cluster allows you to run larger queries on\nit. If you want to increase the number of concurrent queries, please tune\nmax_num_clusters.\n\nSupported values:\n- 2X-Small\n- X-Small\n- Small\n- Medium\n- Large\n- X-Large\n- 2X-Large\n- 3X-Large\n- 4X-Large\n- 5X-Large", + "launch_stage": "GA" + }, + "creator_name": { + "description": "warehouse creator name", + "launch_stage": "GA" + }, + "enable_photon": { + "description": "Configures whether the warehouse should use Photon optimized clusters.\n\nDefaults to true.", + "launch_stage": "GA" + }, + "enable_serverless_compute": { + "description": "Configures whether the warehouse should use serverless compute", + "launch_stage": "GA" + }, + "health": { + "description": "Optional health status. Assume the warehouse is healthy if this field is not set.", + "ref": "sql.EndpointHealth", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "id": { + "description": "unique identifier for warehouse", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "instance_profile_arn": { + "description": "Deprecated. Instance profile used to pass IAM role to the cluster", + "deprecated": true, + "launch_stage": "GA" + }, + "jdbc_url": { + "description": "the jdbc connection string for this warehouse", + "launch_stage": "GA" + }, + "max_num_clusters": { + "description": "Maximum number of clusters that the autoscaler will create to handle\nconcurrent queries.\n\nSupported values:\n- Must be \u003e= min_num_clusters\n- Must be \u003c= 40.\n\nDefaults to min_clusters if unset.", + "launch_stage": "GA" + }, + "min_num_clusters": { + "description": "Minimum number of available clusters that will be maintained for this SQL\nwarehouse. Increasing this will ensure that a larger number of clusters are\nalways running and therefore may reduce the cold start time for new\nqueries. This is similar to reserved vs. revocable cores in a resource\nmanager.\n\nSupported values:\n- Must be \u003e 0\n- Must be \u003c= min(max_num_clusters, 30)\n\nDefaults to 1", + "launch_stage": "GA" + }, + "name": { + "description": "Logical name for the cluster.\n\nSupported values:\n- Must be unique within an org.\n- Must be less than 100 characters.", + "launch_stage": "GA" + }, + "num_active_sessions": { + "description": "Deprecated. current number of active sessions for the warehouse", + "deprecated": true, + "launch_stage": "GA" + }, + "num_clusters": { + "description": "current number of clusters running for the service", + "launch_stage": "GA" + }, + "odbc_params": { + "description": "ODBC parameters for the SQL warehouse", + "ref": "sql.OdbcParams", + "launch_stage": "GA" + }, + "spot_instance_policy": { + "description": "Configurations whether the endpoint should use spot instances.", + "ref": "sql.SpotInstancePolicy", + "launch_stage": "GA" + }, + "state": { + "description": "state of the endpoint", + "ref": "sql.State", + "launch_stage": "GA" + }, + "statement_timeout": { + "description": "Warehouse statement timeout in seconds.", + "launch_stage": "PUBLIC_BETA" + }, + "tags": { + "description": "A set of key-value pairs that will be tagged on all resources (e.g., AWS instances and EBS volumes) associated\nwith this SQL warehouse.\n\nSupported values:\n- Number of tags \u003c 45.", + "ref": "sql.EndpointTags", + "launch_stage": "GA" + }, + "warehouse_type": { + "description": "Warehouse type: `PRO` or `CLASSIC`. If you want to use serverless compute,\nyou must set to `PRO` and also set the field `enable_serverless_compute` to `true`.", + "ref": "sql.GetWarehouseResponseWarehouseType", + "launch_stage": "GA" + } + } + }, + "sql.GetWarehouseResponseWarehouseType": { + "enum": [ + "TYPE_UNSPECIFIED", + "CLASSIC", + "PRO", + "REALTIME" + ], + "enum_launch_stages": { + "CLASSIC": "GA", + "PRO": "GA", + "REALTIME": "PRIVATE_PREVIEW", + "TYPE_UNSPECIFIED": "GA" + } + }, + "sql.GetWorkspaceWarehouseConfigRequest": {}, + "sql.GetWorkspaceWarehouseConfigResponse": { + "fields": { + "channel": { + "description": "Optional: Channel selection details", + "ref": "sql.Channel", + "launch_stage": "GA" + }, + "config_param": { + "description": "Deprecated: Use sql_configuration_parameters", + "ref": "sql.RepeatedEndpointConfPairs", + "deprecated": true, + "launch_stage": "GA" + }, + "data_access_config": { + "description": "Spark confs for external hive metastore configuration\nJSON serialized size must be less than \u003c= 512K", + "launch_stage": "GA" + }, + "enable_serverless_compute": { + "description": "Deprecated: only setting this to true is allowed.", + "deprecated": true, + "launch_stage": "GA" + }, + "enabled_warehouse_types": { + "description": "List of Warehouse Types allowed in this workspace (limits allowed value of\nthe type field in CreateWarehouse and EditWarehouse). Note: Some types\ncannot be disabled, they don't need to be specified\nin SetWorkspaceWarehouseConfig.\nNote: Disabling a type may cause existing warehouses to be converted to\nanother type. Used by frontend to save specific type availability in the\nwarehouse create and edit form UI.", + "launch_stage": "GA" + }, + "global_param": { + "description": "Deprecated: Use sql_configuration_parameters", + "ref": "sql.RepeatedEndpointConfPairs", + "deprecated": true, + "launch_stage": "GA" + }, + "google_service_account": { + "description": "GCP only: Google Service Account used to pass to cluster to access Google\nCloud Storage", + "launch_stage": "GA" + }, + "instance_profile_arn": { + "description": "AWS Only: The instance profile used to pass an IAM role to the SQL\nwarehouses. This configuration is also applied to the workspace's\nserverless compute for notebooks and jobs.", + "deprecated": true, + "launch_stage": "GA" + }, + "security_policy": { + "description": "Security policy for warehouses", + "ref": "sql.GetWorkspaceWarehouseConfigResponseSecurityPolicy", + "launch_stage": "GA" + }, + "sql_configuration_parameters": { + "description": "SQL configuration parameters", + "ref": "sql.RepeatedEndpointConfPairs", + "launch_stage": "GA" + } + } + }, + "sql.GetWorkspaceWarehouseConfigResponseSecurityPolicy": { + "description": "Security policy to be used for warehouses", + "enum": [ + "NONE", + "DATA_ACCESS_CONTROL", + "PASSTHROUGH" + ], + "enum_launch_stages": { + "DATA_ACCESS_CONTROL": "GA", + "NONE": "GA", + "PASSTHROUGH": "GA" + } + }, + "sql.LegacyAlert": { + "fields": { + "created_at": { + "description": "Timestamp when the alert was created.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "id": { + "description": "Alert ID.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "last_triggered_at": { + "description": "Timestamp when the alert was last triggered.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "Name of the alert.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "options": { + "description": "Alert configuration options.", + "ref": "sql.AlertOptions", + "launch_stage": "PUBLIC_PREVIEW" + }, + "parent": { + "description": "The identifier of the workspace folder containing the object.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "query": { + "ref": "sql.AlertQuery", + "launch_stage": "PUBLIC_PREVIEW" + }, + "rearm": { + "description": "Number of seconds after being triggered before the alert rearms itself and can be triggered again. If `null`, alert will never be triggered again.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "state": { + "description": "State of the alert. Possible values are: `unknown` (yet to be evaluated), `triggered` (evaluated and fulfilled trigger conditions), or `ok` (evaluated and did not fulfill trigger conditions).", + "ref": "sql.LegacyAlertState", + "launch_stage": "PUBLIC_PREVIEW" + }, + "updated_at": { + "description": "Timestamp when the alert was last updated.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "user": { + "ref": "sql.User", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "sql.LegacyAlertState": { + "enum": [ + "ok", + "triggered", + "unknown" + ], + "enum_launch_stages": { + "ok": "PUBLIC_PREVIEW", + "triggered": "PUBLIC_PREVIEW", + "unknown": "PUBLIC_PREVIEW" + } + }, + "sql.LegacyQuery": { + "fields": { + "can_edit": { + "description": "Describes whether the authenticated user is allowed to edit the definition of this query.", + "launch_stage": "GA" + }, + "created_at": { + "description": "The timestamp when this query was created.", + "launch_stage": "GA" + }, + "data_source_id": { + "description": "Data source ID maps to the ID of the data source used by the resource and is distinct from the warehouse ID. [Learn more](https://docs.databricks.com/api/workspace/datasources/list)", + "launch_stage": "GA" + }, + "description": { + "description": "General description that conveys additional information about this query such as usage notes.", + "launch_stage": "GA" + }, + "id": { + "description": "Query ID.", + "launch_stage": "GA" + }, + "is_archived": { + "description": "Indicates whether the query is trashed. Trashed queries can't be used in dashboards, or appear in search results. If this boolean is `true`, the `options` property for this query includes a `moved_to_trash_at` timestamp. Trashed queries are permanently deleted after 30 days.", + "launch_stage": "GA" + }, + "is_draft": { + "description": "Whether the query is a draft. Draft queries only appear in list views for their owners. Visualizations from draft queries cannot appear on dashboards.", + "launch_stage": "GA" + }, + "is_favorite": { + "description": "Whether this query object appears in the current user's favorites list. This flag determines whether the star icon for favorites is selected.", + "launch_stage": "GA" + }, + "is_safe": { + "description": "Text parameter types are not safe from SQL injection for all types of data source. Set this Boolean parameter to `true` if a query either does not use any text type parameters or uses a data source type where text type parameters are handled safely.", + "launch_stage": "GA" + }, + "last_modified_by": { + "ref": "sql.User", + "launch_stage": "GA" + }, + "last_modified_by_id": { + "description": "The ID of the user who last saved changes to this query.", + "launch_stage": "GA" + }, + "latest_query_data_id": { + "description": "If there is a cached result for this query and user, this field includes the query result ID. If this query uses parameters, this field is always null.", + "launch_stage": "GA" + }, + "name": { + "description": "The title of this query that appears in list views, widget headings, and on the query page.", + "launch_stage": "GA" + }, + "options": { + "ref": "sql.QueryOptions", + "launch_stage": "GA" + }, + "parent": { + "description": "The identifier of the workspace folder containing the object.", + "launch_stage": "GA" + }, + "permission_tier": { + "description": "* `CAN_VIEW`: Can view the query\n* `CAN_RUN`: Can run the query\n* `CAN_EDIT`: Can edit the query\n* `CAN_MANAGE`: Can manage the query", + "ref": "sql.PermissionLevel", + "launch_stage": "GA" + }, + "query": { + "description": "The text of the query to be run.", + "launch_stage": "GA" + }, + "query_hash": { + "description": "A SHA-256 hash of the query text along with the authenticated user ID.", + "launch_stage": "GA" + }, + "run_as_role": { + "description": "Sets the **Run as** role for the object. Must be set to one of `\"viewer\"` (signifying \"run as viewer\" behavior) or `\"owner\"` (signifying \"run as owner\" behavior)", + "ref": "sql.RunAsRole", + "launch_stage": "GA" + }, + "tags": { + "launch_stage": "GA" + }, + "updated_at": { + "description": "The timestamp at which this query was last updated.", + "launch_stage": "GA" + }, + "user": { + "ref": "sql.User", + "launch_stage": "GA" + }, + "user_id": { + "description": "The ID of the user who owns the query.", + "launch_stage": "GA" + }, + "visualizations": { + "launch_stage": "GA" + } + } + }, + "sql.LegacyVisualization": { + "description": "The visualization description API changes frequently and is unsupported. You can duplicate a visualization by copying description objects received _from the API_ and then using them to create a new one with a POST request to the same endpoint. Databricks does not recommend constructing ad-hoc visualizations entirely in JSON.", + "fields": { + "created_at": { + "launch_stage": "GA" + }, + "description": { + "description": "A short description of this visualization. This is not displayed in the UI.", + "launch_stage": "GA" + }, + "id": { + "description": "The UUID for this visualization.", + "launch_stage": "GA" + }, + "name": { + "description": "The name of the visualization that appears on dashboards and the query screen.", + "launch_stage": "GA" + }, + "options": { + "description": "The options object varies widely from one visualization type to the next and is unsupported. Databricks does not recommend modifying visualization settings in JSON.", + "launch_stage": "GA" + }, + "query": { + "ref": "sql.LegacyQuery", + "launch_stage": "GA" + }, + "type": { + "description": "The type of visualization: chart, table, pivot table, and so on.", + "launch_stage": "GA" + }, + "updated_at": { + "launch_stage": "GA" + } + } + }, + "sql.LifecycleState": { + "enum": [ + "ACTIVE", + "TRASHED" + ], + "enum_launch_stages": { + "ACTIVE": "GA", + "TRASHED": "GA" + } + }, + "sql.ListAlertsRequest": { + "fields": { + "page_size": { + "launch_stage": "GA" + }, + "page_token": { + "launch_stage": "GA" + } + } + }, + "sql.ListAlertsResponse": { + "fields": { + "next_page_token": { + "launch_stage": "GA" + }, + "results": { + "launch_stage": "GA" + } + } + }, + "sql.ListAlertsResponseAlert": { + "fields": { + "condition": { + "description": "Trigger conditions of the alert.", + "ref": "sql.AlertCondition", + "launch_stage": "GA" + }, + "create_time": { + "description": "The timestamp indicating when the alert was created.", + "launch_stage": "GA" + }, + "custom_body": { + "description": "Custom body of alert notification, if it exists. See [here](https://docs.databricks.com/sql/user/alerts/index.html) for custom templating instructions.", + "launch_stage": "GA" + }, + "custom_subject": { + "description": "Custom subject of alert notification, if it exists. This can include email subject entries and Slack notification headers, for example. See [here](https://docs.databricks.com/sql/user/alerts/index.html) for custom templating instructions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "The display name of the alert.", + "launch_stage": "GA" + }, + "id": { + "description": "UUID identifying the alert.", + "launch_stage": "GA" + }, + "lifecycle_state": { + "description": "The workspace state of the alert. Used for tracking trashed status.", + "ref": "sql.LifecycleState", + "launch_stage": "GA" + }, + "notify_on_ok": { + "description": "Whether to notify alert subscribers when alert returns back to normal.", + "launch_stage": "GA" + }, + "owner_user_name": { + "description": "The owner's username. This field is set to \"Unavailable\" if the user has been deleted.", + "launch_stage": "GA" + }, + "query_id": { + "description": "UUID of the query attached to the alert.", + "launch_stage": "GA" + }, + "seconds_to_retrigger": { + "description": "Number of seconds an alert must wait after being triggered to rearm itself. After rearming, it can be triggered again. If 0 or not specified, the alert will not be triggered again.", + "launch_stage": "GA" + }, + "state": { + "description": "Current state of the alert's trigger status. This field is set to UNKNOWN if the alert has not yet been evaluated or ran into an error during the last evaluation.", + "ref": "sql.AlertState", + "launch_stage": "GA" + }, + "trigger_time": { + "description": "Timestamp when the alert was last triggered, if the alert has been triggered before.", + "launch_stage": "GA" + }, + "update_time": { + "description": "The timestamp indicating when the alert was updated.", + "launch_stage": "GA" + } + } + }, + "sql.ListAlertsV2Request": { + "fields": { + "page_size": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sql.ListAlertsV2Response": { + "fields": { + "alerts": { + "launch_stage": "GA" + }, + "next_page_token": { + "launch_stage": "GA" + } + } + }, + "sql.ListDashboardsRequest": { + "fields": { + "order": { + "description": "Name of dashboard attribute to order by.", + "ref": "sql.ListOrder", + "launch_stage": "GA" + }, + "page": { + "description": "Page number to retrieve.", + "launch_stage": "GA" + }, + "page_size": { + "description": "Number of dashboards to return per page.", + "launch_stage": "GA" + }, + "q": { + "description": "Full text search term.", + "launch_stage": "GA" + } + } + }, + "sql.ListDefaultWarehouseOverridesRequest": { + "fields": { + "page_size": { + "description": "The maximum number of overrides to return. The service may return fewer than\nthis value.\nIf unspecified, at most 100 overrides will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous `ListDefaultWarehouseOverrides` call.\nProvide this to retrieve the subsequent page.\n\nWhen paginating, all other parameters provided to `ListDefaultWarehouseOverrides`\nmust match the call that provided the page token.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sql.ListDefaultWarehouseOverridesResponse": { + "description": "Response message for ListDefaultWarehouseOverrides.", + "fields": { + "default_warehouse_overrides": { + "description": "The default warehouse overrides in the workspace.", + "launch_stage": "PUBLIC_BETA" + }, + "next_page_token": { + "description": "A token, which can be sent as `page_token` to retrieve the next page.\nIf this field is omitted, there are no subsequent pages.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "sql.ListOrder": { + "enum": [ + "created_at", + "name" + ], + "enum_launch_stages": { + "created_at": "GA", + "name": "GA" + } + }, + "sql.ListQueriesLegacyRequest": { + "fields": { + "order": { + "description": "Name of query attribute to order by. Default sort order is ascending. Append a dash (`-`) to order descending instead.\n\n- `name`: The name of the query.\n\n- `created_at`: The timestamp the query was created.\n\n- `runtime`: The time it took to run this query. This is blank for parameterized queries. A blank value is treated as the highest value for sorting.\n\n- `executed_at`: The timestamp when the query was last run.\n\n- `created_by`: The user name of the user that created the query.", + "launch_stage": "GA" + }, + "page": { + "description": "Page number to retrieve.", + "launch_stage": "GA" + }, + "page_size": { + "description": "Number of queries to return per page.", + "launch_stage": "GA" + }, + "q": { + "description": "Full text search term", + "launch_stage": "GA" + } + } + }, + "sql.ListQueriesRequest": { + "fields": { + "page_size": { + "launch_stage": "GA" + }, + "page_token": { + "launch_stage": "GA" + } + } + }, + "sql.ListQueriesResponse": { + "fields": { + "has_next_page": { + "description": "Whether there is another page of results.", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "A token that can be used to get the next page of results.", + "launch_stage": "GA" + }, + "res": { + "launch_stage": "GA" + } + } + }, + "sql.ListQueryHistoryRequest": { + "fields": { + "filter_by": { + "description": "An optional filter object to limit query history results. Accepts parameters such as user IDs, endpoint IDs, and statuses to narrow the returned data.\nIn a URL, the parameters of this filter are specified with dot notation. For example: `filter_by.statement_ids`.", + "ref": "sql.QueryFilter", + "launch_stage": "GA" + }, + "include_metrics": { + "description": "Whether to include the query metrics with each query.\nOnly use this for a small subset of queries (max_results).\nDefaults to false.", + "launch_stage": "GA" + }, + "max_results": { + "description": "Limit the number of results returned in one page. Must be less than 1000 and the default is 100.", + "launch_stage": "GA" + }, + "page_token": { + "description": "A token that can be used to get the next page of results. The token can contains characters that need to be encoded before using it in a URL.\nFor example, the character '+' needs to be replaced by %2B. This field is optional.", + "launch_stage": "GA" + } + } + }, + "sql.ListQueryObjectsResponse": { + "fields": { + "next_page_token": { + "launch_stage": "GA" + }, + "results": { + "launch_stage": "GA" + } + } + }, + "sql.ListQueryObjectsResponseQuery": { + "fields": { + "apply_auto_limit": { + "description": "Whether to apply a 1000 row limit to the query result.", + "launch_stage": "GA" + }, + "catalog": { + "description": "Name of the catalog where this query will be executed.", + "launch_stage": "GA" + }, + "create_time": { + "description": "Timestamp when this query was created.", + "launch_stage": "GA" + }, + "description": { + "description": "General description that conveys additional information about this query such as usage notes.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the query that appears in list views, widget headings, and on the query page.", + "launch_stage": "GA" + }, + "id": { + "description": "UUID identifying the query.", + "launch_stage": "GA" + }, + "last_modifier_user_name": { + "description": "Username of the user who last saved changes to this query.", + "launch_stage": "GA" + }, + "lifecycle_state": { + "description": "Indicates whether the query is trashed.", + "ref": "sql.LifecycleState", + "launch_stage": "GA" + }, + "owner_user_name": { + "description": "Username of the user that owns the query.", + "launch_stage": "GA" + }, + "parameters": { + "description": "List of query parameter definitions.", + "launch_stage": "GA" + }, + "query_text": { + "description": "Text of the query to be run.", + "launch_stage": "GA" + }, + "run_as_mode": { + "description": "Sets the \"Run as\" role for the object.", + "ref": "sql.RunAsMode", + "launch_stage": "GA" + }, + "schema": { + "description": "Name of the schema where this query will be executed.", + "launch_stage": "GA" + }, + "tags": { + "launch_stage": "GA" + }, + "update_time": { + "description": "Timestamp when this query was last updated.", + "launch_stage": "GA" + }, + "warehouse_id": { + "description": "ID of the SQL warehouse attached to the query.", + "launch_stage": "GA" + } + } + }, + "sql.ListRequest": {}, + "sql.ListResponse": { + "fields": { + "count": { + "description": "The total number of dashboards.", + "launch_stage": "GA" + }, + "page": { + "description": "The current page being displayed.", + "launch_stage": "GA" + }, + "page_size": { + "description": "The number of dashboards per page.", + "launch_stage": "GA" + }, + "results": { + "description": "List of dashboards returned.", + "launch_stage": "GA" + } + } + }, + "sql.ListVisualizationsForQueryRequest": { + "fields": { + "page_size": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "page_token": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sql.ListVisualizationsForQueryResponse": { + "fields": { + "next_page_token": { + "launch_stage": "PRIVATE_PREVIEW" + }, + "results": { + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sql.ListWarehousesRequest": { + "fields": { + "page_size": { + "description": "The max number of warehouses to return.", + "launch_stage": "GA" + }, + "page_token": { + "description": "A page token, received from a previous `ListWarehouses` call.\nProvide this to retrieve the subsequent page; otherwise the first\nwill be retrieved.\n\nWhen paginating, all other parameters provided to `ListWarehouses` must match\nthe call that provided the page token.", + "launch_stage": "GA" + }, + "run_as_user_id": { + "description": "Deprecated: this field is ignored by the server.\nService Principal which will be used to fetch the list of endpoints.\nIf not specified, SQL Gateway will use the user from the session header.", + "deprecated": true, + "launch_stage": "GA" + } + } + }, + "sql.ListWarehousesResponse": { + "fields": { + "next_page_token": { + "description": "A token, which can be sent as `page_token` to retrieve the next page.\nIf this field is omitted, there are no subsequent pages.", + "launch_stage": "GA" + }, + "warehouses": { + "description": "A list of warehouses and their configurations.", + "launch_stage": "GA" + } + } + }, + "sql.MultiValuesOptions": { + "fields": { + "prefix": { + "description": "Character that prefixes each selected parameter value.", + "launch_stage": "GA" + }, + "separator": { + "description": "Character that separates each selected parameter value. Defaults to a comma.", + "launch_stage": "GA" + }, + "suffix": { + "description": "Character that suffixes each selected parameter value.", + "launch_stage": "GA" + } + } + }, + "sql.NumericValue": { + "fields": { + "value": { + "launch_stage": "GA" + } + } + }, + "sql.ObjectType": { + "description": "A singular noun object type.", + "enum": [ + "alert", + "dashboard", + "data_source", + "query" + ], + "enum_launch_stages": { + "alert": "GA", + "dashboard": "GA", + "data_source": "GA", + "query": "GA" + } + }, + "sql.ObjectTypePlural": { + "description": "Always a plural of the object type.", + "enum": [ + "alerts", + "dashboards", + "data_sources", + "queries" + ], + "enum_launch_stages": { + "alerts": "GA", + "dashboards": "GA", + "data_sources": "GA", + "queries": "GA" + } + }, + "sql.OdbcParams": { + "fields": { + "hostname": { + "launch_stage": "GA" + }, + "path": { + "launch_stage": "GA" + }, + "port": { + "launch_stage": "GA" + }, + "protocol": { + "launch_stage": "GA" + } + } + }, + "sql.OwnableObjectType": { + "enum": [ + "alert", + "dashboard", + "query" + ], + "enum_launch_stages": { + "alert": "GA", + "dashboard": "GA", + "query": "GA" + } + }, + "sql.Parameter": { + "fields": { + "enumOptions": { + "description": "List of valid parameter values, newline delimited. Only applies for dropdown list parameters.", + "launch_stage": "GA" + }, + "multiValuesOptions": { + "description": "If specified, allows multiple values to be selected for this parameter. Only applies to dropdown list and query-based dropdown list parameters.", + "ref": "sql.MultiValuesOptions", + "launch_stage": "GA" + }, + "name": { + "description": "The literal parameter marker that appears between double curly braces in the query text.", + "launch_stage": "GA" + }, + "queryId": { + "description": "The UUID of the query that provides the parameter values. Only applies for query-based dropdown list parameters.", + "launch_stage": "GA" + }, + "title": { + "description": "The text displayed in a parameter picking widget.", + "launch_stage": "GA" + }, + "type": { + "description": "Parameters can have several different types.", + "ref": "sql.ParameterType", + "launch_stage": "GA" + }, + "value": { + "description": "The default value for this parameter.", + "launch_stage": "GA" + } + } + }, + "sql.ParameterType": { + "enum": [ + "datetime", + "enum", + "number", + "query", + "text" + ], + "enum_launch_stages": { + "datetime": "GA", + "enum": "GA", + "number": "GA", + "query": "GA", + "text": "GA" + } + }, + "sql.PermissionLevel": { + "description": "* `CAN_VIEW`: Can view the query\n* `CAN_RUN`: Can run the query\n* `CAN_EDIT`: Can edit the query\n* `CAN_MANAGE`: Can manage the query", + "enum": [ + "CAN_EDIT", + "CAN_MANAGE", + "CAN_RUN", + "CAN_VIEW" + ], + "enum_launch_stages": { + "CAN_EDIT": "GA", + "CAN_MANAGE": "GA", + "CAN_RUN": "GA", + "CAN_VIEW": "GA" + }, + "enum_descriptions": { + "CAN_EDIT": "Can edit the query", + "CAN_MANAGE": "Can manage the query", + "CAN_RUN": "Can run the query", + "CAN_VIEW": "Can view the query" + } + }, + "sql.PlansState": { + "description": "Possible Reasons for which we have not saved plans in the database", + "enum": [ + "IGNORED_SMALL_DURATION", + "IGNORED_LARGE_PLANS_SIZE", + "EXISTS", + "UNKNOWN", + "EMPTY", + "IGNORED_SPARK_PLAN_TYPE" + ], + "enum_launch_stages": { + "EMPTY": "GA", + "EXISTS": "GA", + "IGNORED_LARGE_PLANS_SIZE": "GA", + "IGNORED_SMALL_DURATION": "GA", + "IGNORED_SPARK_PLAN_TYPE": "GA", + "UNKNOWN": "GA" + } + }, + "sql.Query": { + "fields": { + "apply_auto_limit": { + "description": "Whether to apply a 1000 row limit to the query result.", + "launch_stage": "GA" + }, + "catalog": { + "description": "Name of the catalog where this query will be executed.", + "launch_stage": "GA" + }, + "create_time": { + "description": "Timestamp when this query was created.", + "launch_stage": "GA" + }, + "description": { + "description": "General description that conveys additional information about this query such as usage notes.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the query that appears in list views, widget headings, and on the query page.", + "launch_stage": "GA" + }, + "id": { + "description": "UUID identifying the query.", + "launch_stage": "GA" + }, + "last_modifier_user_name": { + "description": "Username of the user who last saved changes to this query.", + "launch_stage": "GA" + }, + "lifecycle_state": { + "description": "Indicates whether the query is trashed.", + "ref": "sql.LifecycleState", + "launch_stage": "GA" + }, + "owner_user_name": { + "description": "Username of the user that owns the query.", + "launch_stage": "GA" + }, + "parameters": { + "description": "List of query parameter definitions.", + "launch_stage": "GA" + }, + "parent_path": { + "description": "Workspace path of the workspace folder containing the object.", + "launch_stage": "GA" + }, + "query_text": { + "description": "Text of the query to be run.", + "launch_stage": "GA" + }, + "run_as_mode": { + "description": "Sets the \"Run as\" role for the object.", + "ref": "sql.RunAsMode", + "launch_stage": "GA" + }, + "schema": { + "description": "Name of the schema where this query will be executed.", + "launch_stage": "GA" + }, + "tags": { + "launch_stage": "GA" + }, + "update_time": { + "description": "Timestamp when this query was last updated.", + "launch_stage": "GA" + }, + "warehouse_id": { + "description": "ID of the SQL warehouse attached to the query.", + "launch_stage": "GA" + } + } + }, + "sql.QueryBackedValue": { + "fields": { + "multi_values_options": { + "description": "If specified, allows multiple values to be selected for this parameter.", + "ref": "sql.MultiValuesOptions", + "launch_stage": "GA" + }, + "query_id": { + "description": "UUID of the query that provides the parameter values.", + "launch_stage": "GA" + }, + "values": { + "description": "List of selected query parameter values.", + "launch_stage": "GA" + } + } + }, + "sql.QueryEditContent": { + "fields": { + "data_source_id": { + "description": "Data source ID maps to the ID of the data source used by the resource and is distinct from the warehouse ID. [Learn more](https://docs.databricks.com/api/workspace/datasources/list)", + "launch_stage": "GA" + }, + "description": { + "description": "General description that conveys additional information about this query such as usage notes.", + "launch_stage": "GA" + }, + "name": { + "description": "The title of this query that appears in list views, widget headings, and on the query page.", + "launch_stage": "GA" + }, + "options": { + "description": "Exclusively used for storing a list parameter definitions. A parameter is an object with `title`, `name`, `type`, and `value` properties. The `value` field here is the default value. It can be overridden at runtime.", + "launch_stage": "GA" + }, + "query": { + "description": "The text of the query to be run.", + "launch_stage": "GA" + }, + "run_as_role": { + "description": "Sets the **Run as** role for the object. Must be set to one of `\"viewer\"` (signifying \"run as viewer\" behavior) or `\"owner\"` (signifying \"run as owner\" behavior)", + "ref": "sql.RunAsRole", + "launch_stage": "GA" + }, + "tags": { + "launch_stage": "GA" + } + } + }, + "sql.QueryFilter": { + "fields": { + "query_start_time_range": { + "description": "A range filter for query submitted time. The time range must be less than or equal to 30 days.", + "ref": "sql.TimeRange", + "launch_stage": "GA" + }, + "statement_ids": { + "description": "A list of statement IDs.", + "launch_stage": "GA" + }, + "statuses": { + "description": "A list of statuses (QUEUED, RUNNING, CANCELED, FAILED, FINISHED) to match query results. Corresponds to\nthe `status` field in the response.\nFiltering for multiple statuses is not recommended. Instead, opt to filter by a single status\nmultiple times and then combine the results.", + "launch_stage": "GA" + }, + "user_ids": { + "description": "A list of user IDs who ran the queries.", + "launch_stage": "GA" + }, + "warehouse_ids": { + "description": "A list of warehouse IDs.", + "launch_stage": "GA" + } + } + }, + "sql.QueryInfo": { + "fields": { + "cache_query_id": { + "description": "The ID of the cached query if this result retrieved from cache", + "launch_stage": "GA" + }, + "channel_used": { + "description": "SQL Warehouse channel information at the time of query execution", + "ref": "sql.ChannelInfo", + "launch_stage": "GA" + }, + "client_application": { + "description": "Client application that ran the statement. For example: Databricks SQL Editor, Tableau, and Power BI.\nThis field is derived from information provided by client applications. While values are expected to\nremain static over time, this cannot be guaranteed.", + "launch_stage": "GA" + }, + "duration": { + "description": "Total time of the statement execution. This value does not include the time taken to retrieve the results, which\ncan result in a discrepancy between this value and the start-to-finish wall-clock time.", + "launch_stage": "GA" + }, + "endpoint_id": { + "description": "Alias for `warehouse_id`.", + "deprecated": true, + "launch_stage": "GA" + }, + "error_message": { + "description": "Message describing why the query could not complete.", + "launch_stage": "GA" + }, + "executed_as_user_id": { + "description": "The ID of the user whose credentials were used to run the query.", + "launch_stage": "GA" + }, + "executed_as_user_name": { + "description": "The email address or username of the user whose credentials were used to run the query.", + "launch_stage": "GA" + }, + "execution_end_time_ms": { + "description": "The time execution of the query ended.", + "launch_stage": "GA" + }, + "is_final": { + "description": "Whether more updates for the query are expected.", + "launch_stage": "GA" + }, + "lookup_key": { + "description": "A key that can be used to look up query details.", + "launch_stage": "GA" + }, + "metrics": { + "description": "Metrics about query execution.", + "ref": "sql.QueryMetrics", + "launch_stage": "GA" + }, + "plans_state": { + "description": "Whether plans exist for the execution, or the reason why they are missing", + "ref": "sql.PlansState", + "launch_stage": "GA" + }, + "query_end_time_ms": { + "description": "The time the query ended.", + "launch_stage": "GA" + }, + "query_id": { + "description": "The query ID.", + "launch_stage": "GA" + }, + "query_source": { + "description": "A struct that contains key-value pairs representing Databricks entities that were involved in the execution\nof this statement, such as jobs, notebooks, or dashboards. This field only records Databricks entities.", + "ref": "sql.ExternalQuerySource", + "launch_stage": "GA" + }, + "query_start_time_ms": { + "description": "The time the query started.", + "launch_stage": "GA" + }, + "query_tags": { + "description": "A query execution can be optionally annotated with query tags", + "launch_stage": "PUBLIC_PREVIEW" + }, + "query_text": { + "description": "The text of the query.", + "launch_stage": "GA" + }, + "rows_produced": { + "description": "The number of results returned by the query.", + "launch_stage": "GA" + }, + "session_id": { + "description": "The spark session UUID that query ran on.\nThis is either the Spark Connect, DBSQL, or SDP session ID.", + "launch_stage": "GA" + }, + "spark_ui_url": { + "description": "URL to the Spark UI query plan.", + "launch_stage": "GA" + }, + "statement_type": { + "description": "Type of statement for this query", + "ref": "sql.QueryStatementType", + "launch_stage": "GA" + }, + "status": { + "description": "Query status with one the following values:\n\n- `QUEUED`: Query has been received and queued.\n- `RUNNING`: Query has started.\n- `CANCELED`: Query has been cancelled by the user.\n- `FAILED`: Query has failed.\n- `FINISHED`: Query has completed.", + "ref": "sql.QueryStatus", + "launch_stage": "GA" + }, + "user_id": { + "description": "The ID of the user who ran the query.", + "launch_stage": "GA" + }, + "user_name": { + "description": "The email address or username of the user who ran the query.", + "launch_stage": "GA" + }, + "warehouse_id": { + "description": "Warehouse ID.", + "launch_stage": "GA" + } + } + }, + "sql.QueryList": { + "fields": { + "count": { + "description": "The total number of queries.", + "launch_stage": "GA" + }, + "page": { + "description": "The page number that is currently displayed.", + "launch_stage": "GA" + }, + "page_size": { + "description": "The number of queries per page.", + "launch_stage": "GA" + }, + "results": { + "description": "List of queries returned.", + "launch_stage": "GA" + } + } + }, + "sql.QueryMetrics": { + "description": "A query metric that encapsulates a set of measurements for a single query.\nMetrics come from the driver and are stored in the history service database.", + "fields": { + "compilation_time_ms": { + "description": "Time spent loading metadata and optimizing the query, in milliseconds.", + "launch_stage": "GA" + }, + "execution_time_ms": { + "description": "Time spent executing the query, in milliseconds.", + "launch_stage": "GA" + }, + "network_sent_bytes": { + "description": "Total amount of data sent over the network between executor nodes during shuffle, in bytes.", + "launch_stage": "GA" + }, + "overloading_queue_start_timestamp": { + "description": "Timestamp of when the query was enqueued waiting while the warehouse was at max load.\nThis field is optional and will not appear if the query skipped the overloading queue.", + "launch_stage": "GA" + }, + "photon_total_time_ms": { + "description": "Total execution time for all individual Photon query engine tasks in the query, in milliseconds.", + "launch_stage": "GA" + }, + "projected_remaining_task_total_time_ms": { + "description": "projected remaining work to be done aggregated across all stages in the query, in milliseconds", + "launch_stage": "GA" + }, + "projected_remaining_wallclock_time_ms": { + "description": "projected lower bound on remaining total task time based on projected_remaining_task_total_time_ms / maximum concurrency", + "launch_stage": "GA" + }, + "provisioning_queue_start_timestamp": { + "description": "Timestamp of when the query was enqueued waiting for a cluster to be provisioned for the warehouse.\nThis field is optional and will not appear if the query skipped the provisioning queue.", + "launch_stage": "GA" + }, + "pruned_bytes": { + "description": "Total number of file bytes in all tables not read due to pruning", + "launch_stage": "GA" + }, + "pruned_files_count": { + "description": "Total number of files from all tables not read due to pruning", + "launch_stage": "GA" + }, + "query_compilation_start_timestamp": { + "description": "Timestamp of when the underlying compute started compilation of the query.", + "launch_stage": "GA" + }, + "read_bytes": { + "description": "Total size of data read by the query, in bytes.", + "launch_stage": "GA" + }, + "read_cache_bytes": { + "description": "Size of persistent data read from the cache, in bytes.", + "launch_stage": "GA" + }, + "read_files_bytes": { + "description": "Total number of file bytes in all tables read", + "launch_stage": "GA" + }, + "read_files_count": { + "description": "Number of files read after pruning", + "launch_stage": "GA" + }, + "read_partitions_count": { + "description": "Number of partitions read after pruning.", + "launch_stage": "GA" + }, + "read_remote_bytes": { + "description": "Size of persistent data read from cloud object storage on your cloud tenant, in bytes.", + "launch_stage": "GA" + }, + "remaining_task_count": { + "description": "number of remaining tasks to complete\nthis is based on the current status and could be bigger or smaller in the future based on future updates", + "launch_stage": "GA" + }, + "result_fetch_time_ms": { + "description": "Time spent fetching the query results after the execution finished, in milliseconds.", + "launch_stage": "GA" + }, + "result_from_cache": { + "description": "`true` if the query result was fetched from cache, `false` otherwise.", + "launch_stage": "GA" + }, + "rows_produced_count": { + "description": "Total number of rows returned by the query.", + "launch_stage": "GA" + }, + "rows_read_count": { + "description": "Total number of rows read by the query.", + "launch_stage": "GA" + }, + "runnable_tasks": { + "description": "number of remaining tasks to complete, calculated by autoscaler StatementAnalysis.scala\ndeprecated: use remaining_task_count instead", + "deprecated": true, + "launch_stage": "GA" + }, + "spill_to_disk_bytes": { + "description": "Size of data temporarily written to disk while executing the query, in bytes.", + "launch_stage": "GA" + }, + "task_time_over_time_range": { + "description": "sum of task times completed in a range of wall clock time, approximated to a configurable number of points\naggregated over all stages and jobs in the query (based on task_total_time_ms)", + "ref": "sql.TaskTimeOverRange", + "launch_stage": "GA" + }, + "task_total_time_ms": { + "description": "Sum of execution time for all of the query’s tasks, in milliseconds.", + "launch_stage": "GA" + }, + "total_time_ms": { + "description": "Total execution time of the query from the client’s point of view, in milliseconds.", + "launch_stage": "GA" + }, + "work_to_be_done": { + "description": "remaining work to be done across all stages in the query, calculated by autoscaler StatementAnalysis.scala, in milliseconds\ndeprecated: using projected_remaining_task_total_time_ms instead", + "deprecated": true, + "launch_stage": "GA" + }, + "write_remote_bytes": { + "description": "Size pf persistent data written to cloud object storage in your cloud tenant, in bytes.", + "launch_stage": "GA" + } + } + }, + "sql.QueryOptions": { + "fields": { + "catalog": { + "description": "The name of the catalog to execute this query in.", + "launch_stage": "GA" + }, + "moved_to_trash_at": { + "description": "The timestamp when this query was moved to trash. Only present when the `is_archived` property is `true`. Trashed items are deleted after thirty days.", + "launch_stage": "GA" + }, + "parameters": { + "launch_stage": "GA" + }, + "schema": { + "description": "The name of the schema to execute this query in.", + "launch_stage": "GA" + } + } + }, + "sql.QueryParameter": { + "fields": { + "date_range_value": { + "description": "Date-range query parameter value. Can only specify one of `dynamic_date_range_value` or `date_range_value`.", + "ref": "sql.DateRangeValue", + "launch_stage": "GA" + }, + "date_value": { + "description": "Date query parameter value. Can only specify one of `dynamic_date_value` or `date_value`.", + "ref": "sql.DateValue", + "launch_stage": "GA" + }, + "enum_value": { + "description": "Dropdown query parameter value.", + "ref": "sql.EnumValue", + "launch_stage": "GA" + }, + "name": { + "description": "Literal parameter marker that appears between double curly braces in the query text.", + "launch_stage": "GA" + }, + "numeric_value": { + "description": "Numeric query parameter value.", + "ref": "sql.NumericValue", + "launch_stage": "GA" + }, + "query_backed_value": { + "description": "Query-based dropdown query parameter value.", + "ref": "sql.QueryBackedValue", + "launch_stage": "GA" + }, + "text_value": { + "description": "Text query parameter value.", + "ref": "sql.TextValue", + "launch_stage": "GA" + }, + "title": { + "description": "Text displayed in the user-facing parameter widget in the UI.", + "launch_stage": "GA" + } + } + }, + "sql.QueryPostContent": { + "fields": { + "data_source_id": { + "description": "Data source ID maps to the ID of the data source used by the resource and is distinct from the warehouse ID. [Learn more](https://docs.databricks.com/api/workspace/datasources/list)", + "launch_stage": "GA" + }, + "description": { + "description": "General description that conveys additional information about this query such as usage notes.", + "launch_stage": "GA" + }, + "name": { + "description": "The title of this query that appears in list views, widget headings, and on the query page.", + "launch_stage": "GA" + }, + "options": { + "description": "Exclusively used for storing a list parameter definitions. A parameter is an object with `title`, `name`, `type`, and `value` properties. The `value` field here is the default value. It can be overridden at runtime.", + "launch_stage": "GA" + }, + "parent": { + "description": "The identifier of the workspace folder containing the object.", + "launch_stage": "GA" + }, + "query": { + "description": "The text of the query to be run.", + "launch_stage": "GA" + }, + "run_as_role": { + "description": "Sets the **Run as** role for the object. Must be set to one of `\"viewer\"` (signifying \"run as viewer\" behavior) or `\"owner\"` (signifying \"run as owner\" behavior)", + "ref": "sql.RunAsRole", + "launch_stage": "GA" + }, + "tags": { + "launch_stage": "GA" + } + } + }, + "sql.QueryStatementType": { + "enum": [ + "OTHER", + "ALTER", + "ANALYZE", + "COPY", + "CREATE", + "DELETE", + "DESCRIBE", + "DROP", + "EXPLAIN", + "GRANT", + "INSERT", + "MERGE", + "OPTIMIZE", + "REFRESH", + "REPLACE", + "REVOKE", + "SELECT", + "SET", + "SHOW", + "TRUNCATE", + "UPDATE", + "USE" + ], + "enum_launch_stages": { + "ALTER": "GA", + "ANALYZE": "GA", + "COPY": "GA", + "CREATE": "GA", + "DELETE": "GA", + "DESCRIBE": "GA", + "DROP": "GA", + "EXPLAIN": "GA", + "GRANT": "GA", + "INSERT": "GA", + "MERGE": "GA", + "OPTIMIZE": "GA", + "OTHER": "GA", + "REFRESH": "GA", + "REPLACE": "GA", + "REVOKE": "GA", + "SELECT": "GA", + "SET": "GA", + "SHOW": "GA", + "TRUNCATE": "GA", + "UPDATE": "GA", + "USE": "GA" + } + }, + "sql.QueryStatus": { + "description": "Statuses which are also used by OperationStatus in runtime.\nWhen adding a new QueryStatus, make sure to update com.databricks.sqlgateway.history.QueryStatusOrdering", + "enum": [ + "QUEUED", + "STARTED", + "COMPILING", + "COMPILED", + "RUNNING", + "CANCELED", + "FAILED", + "FINISHED" + ], + "enum_launch_stages": { + "CANCELED": "GA", + "COMPILED": "GA", + "COMPILING": "GA", + "FAILED": "GA", + "FINISHED": "GA", + "QUEUED": "GA", + "RUNNING": "GA", + "STARTED": "GA" + } + }, + "sql.QueryTag": { + "description": "* A query execution can be annotated with an optional key-value pair to\nallow users to attribute the executions by key and optional value to filter by.\nQueryTag is the user-facing representation.", + "fields": { + "key": { + "launch_stage": "GA" + }, + "value": { + "launch_stage": "GA" + } + } + }, + "sql.RepeatedEndpointConfPairs": { + "fields": { + "config_pair": { + "description": "Deprecated: Use configuration_pairs", + "deprecated": true, + "launch_stage": "GA" + }, + "configuration_pairs": { + "launch_stage": "GA" + } + } + }, + "sql.RestoreDashboardRequest": {}, + "sql.RestoreQueriesLegacyRequest": {}, + "sql.RestoreResponse": {}, + "sql.ResultData": { + "description": "Contains the result data of a single chunk when using `INLINE` disposition. When using\n`EXTERNAL_LINKS` disposition, the array `external_links` is used instead to provide\nshort-lived cloud-storage URLs to the result data\nin cloud storage. Exactly one of these alternatives is used. (While the `external_links`\narray prepares the API to return multiple links in a single response. Currently only a single\nlink is returned.)", + "fields": { + "byte_count": { + "description": "The number of bytes in the result chunk. This field is not available when using `INLINE`\ndisposition.", + "launch_stage": "GA" + }, + "chunk_index": { + "description": "The position within the sequence of result set chunks.", + "launch_stage": "GA" + }, + "data_array": { + "description": "The `JSON_ARRAY` format is an array of arrays of values, where each non-null value is\nformatted as a string. Null values are encoded as JSON `null`.", + "launch_stage": "GA" + }, + "external_links": { + "launch_stage": "GA" + }, + "next_chunk_index": { + "description": "When fetching, provides the `chunk_index` for the _next_ chunk. If absent, indicates there are no\nmore chunks. The next chunk can be fetched with a\n:method:statementexecution/getstatementresultchunkn request.", + "launch_stage": "GA" + }, + "next_chunk_internal_link": { + "description": "When fetching, provides a link to fetch the _next_ chunk. If absent, indicates there are no more\nchunks. This link is an absolute `path` to be joined with your `$DATABRICKS_HOST`, and should be\ntreated as an opaque link. This is an alternative to using `next_chunk_index`.", + "launch_stage": "GA" + }, + "row_count": { + "description": "The number of rows within the result chunk.", + "launch_stage": "GA" + }, + "row_offset": { + "description": "The starting row offset within the result set.", + "launch_stage": "GA" + } + } + }, + "sql.ResultManifest": { + "description": "The result manifest provides schema and metadata for the result set.", + "fields": { + "chunks": { + "description": "Array of result set chunk metadata.", + "launch_stage": "GA" + }, + "format": { + "ref": "sql.Format", + "launch_stage": "GA" + }, + "schema": { + "ref": "sql.ResultSchema", + "launch_stage": "GA" + }, + "total_byte_count": { + "description": "The total number of bytes in the result set. This field is not available when using `INLINE`\ndisposition.", + "launch_stage": "GA" + }, + "total_chunk_count": { + "description": "The total number of chunks that the result set has been divided into.", + "launch_stage": "GA" + }, + "total_row_count": { + "description": "The total number of rows in the result set.", + "launch_stage": "GA" + }, + "truncated": { + "description": "Indicates whether the result is truncated due to `row_limit` or `byte_limit`.", + "launch_stage": "GA" + } + } + }, + "sql.ResultSchema": { + "description": "The schema is an ordered list of column descriptions.", + "fields": { + "column_count": { + "launch_stage": "GA" + }, + "columns": { + "launch_stage": "GA" + } + } + }, + "sql.RunAsMode": { + "enum": [ + "OWNER", + "VIEWER" + ], + "enum_launch_stages": { + "OWNER": "GA", + "VIEWER": "GA" + } + }, + "sql.RunAsRole": { + "enum": [ + "owner", + "viewer" + ], + "enum_launch_stages": { + "owner": "GA", + "viewer": "GA" + } + }, + "sql.SchedulePauseStatus": { + "enum": [ + "UNPAUSED", + "PAUSED" + ], + "enum_launch_stages": { + "PAUSED": "GA", + "UNPAUSED": "GA" + } + }, + "sql.ServiceError": { + "fields": { + "error_code": { + "ref": "sql.ServiceErrorCode", + "launch_stage": "GA" + }, + "message": { + "description": "A brief summary of the error condition.", + "launch_stage": "GA" + } + } + }, + "sql.ServiceErrorCode": { + "enum": [ + "UNKNOWN", + "INTERNAL_ERROR", + "TEMPORARILY_UNAVAILABLE", + "IO_ERROR", + "BAD_REQUEST", + "SERVICE_UNDER_MAINTENANCE", + "WORKSPACE_TEMPORARILY_UNAVAILABLE", + "DEADLINE_EXCEEDED", + "CANCELLED", + "RESOURCE_EXHAUSTED", + "ABORTED", + "NOT_FOUND", + "ALREADY_EXISTS", + "UNAUTHENTICATED" + ], + "enum_launch_stages": { + "ABORTED": "GA", + "ALREADY_EXISTS": "GA", + "BAD_REQUEST": "GA", + "CANCELLED": "GA", + "DEADLINE_EXCEEDED": "GA", + "INTERNAL_ERROR": "GA", + "IO_ERROR": "GA", + "NOT_FOUND": "GA", + "RESOURCE_EXHAUSTED": "GA", + "SERVICE_UNDER_MAINTENANCE": "GA", + "TEMPORARILY_UNAVAILABLE": "GA", + "UNAUTHENTICATED": "GA", + "UNKNOWN": "GA", + "WORKSPACE_TEMPORARILY_UNAVAILABLE": "GA" + } + }, + "sql.SetRequest": { + "description": "Set object ACL", + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "sql.SetResponse": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "description": "An object's type and UUID, separated by a forward slash (/) character.", + "launch_stage": "GA" + }, + "object_type": { + "description": "A singular noun object type.", + "ref": "sql.ObjectType", + "launch_stage": "GA" + } + } + }, + "sql.SetWorkspaceWarehouseConfigRequest": { + "description": "Sets the workspace level warehouse configuration that is shared by all SQL warehouses in this workspace.\n\nThis is idempotent.", + "fields": { + "channel": { + "description": "Optional: Channel selection details", + "ref": "sql.Channel", + "launch_stage": "GA" + }, + "config_param": { + "description": "Deprecated: Use sql_configuration_parameters", + "ref": "sql.RepeatedEndpointConfPairs", + "deprecated": true, + "launch_stage": "GA" + }, + "data_access_config": { + "description": "Spark confs for external hive metastore configuration\nJSON serialized size must be less than \u003c= 512K", + "launch_stage": "GA" + }, + "enable_serverless_compute": { + "description": "Deprecated: only setting this to true is allowed.", + "deprecated": true, + "launch_stage": "GA" + }, + "enabled_warehouse_types": { + "description": "List of Warehouse Types allowed in this workspace (limits allowed value of\nthe type field in CreateWarehouse and EditWarehouse). Note: Some types\ncannot be disabled, they don't need to be specified\nin SetWorkspaceWarehouseConfig.\nNote: Disabling a type may cause existing warehouses to be converted to\nanother type. Used by frontend to save specific type availability in the\nwarehouse create and edit form UI.", + "launch_stage": "GA" + }, + "global_param": { + "description": "Deprecated: Use sql_configuration_parameters", + "ref": "sql.RepeatedEndpointConfPairs", + "deprecated": true, + "launch_stage": "GA" + }, + "google_service_account": { + "description": "GCP only: Google Service Account used to pass to cluster to access Google\nCloud Storage", + "launch_stage": "GA" + }, + "instance_profile_arn": { + "description": "AWS Only: The instance profile used to pass an IAM role to the SQL\nwarehouses. This configuration is also applied to the workspace's\nserverless compute for notebooks and jobs.", + "deprecated": true, + "launch_stage": "GA" + }, + "security_policy": { + "description": "Security policy for warehouses", + "ref": "sql.SetWorkspaceWarehouseConfigRequestSecurityPolicy", + "launch_stage": "GA" + }, + "sql_configuration_parameters": { + "description": "SQL configuration parameters", + "ref": "sql.RepeatedEndpointConfPairs", + "launch_stage": "GA" + } + } + }, + "sql.SetWorkspaceWarehouseConfigRequestSecurityPolicy": { + "description": "Security policy to be used for warehouses", + "enum": [ + "NONE", + "DATA_ACCESS_CONTROL", + "PASSTHROUGH" + ], + "enum_launch_stages": { + "DATA_ACCESS_CONTROL": "GA", + "NONE": "GA", + "PASSTHROUGH": "GA" + } + }, + "sql.SetWorkspaceWarehouseConfigResponse": {}, + "sql.SpotInstancePolicy": { + "description": "EndpointSpotInstancePolicy configures whether the endpoint should use spot\ninstances.\n\nThe breakdown of how the EndpointSpotInstancePolicy converts to per cloud\nconfigurations is:\n\n- AWS, COST_OPTIMIZED: On Demand Driver with Spot Executors.\n- AWS, RELIABILITY_OPTIMIZED: On Demand Driver and Executors.\n- AZURE, COST_OPTIMIZED: On Demand Driver and Executors.\n- AZURE, RELIABILITY_OPTIMIZED: On Demand Driver and Executors.", + "enum": [ + "POLICY_UNSPECIFIED", + "COST_OPTIMIZED", + "RELIABILITY_OPTIMIZED" + ], + "enum_launch_stages": { + "COST_OPTIMIZED": "GA", + "POLICY_UNSPECIFIED": "GA", + "RELIABILITY_OPTIMIZED": "GA" + } + }, + "sql.StartRequest": { + "description": "Starts a SQL warehouse.\nThis API is idempotent." + }, + "sql.StartWarehouseResponse": {}, + "sql.State": { + "description": "*\nState of a warehouse.", + "enum": [ + "STARTING", + "RUNNING", + "STOPPING", + "STOPPED", + "DELETING", + "DELETED" + ], + "enum_launch_stages": { + "DELETED": "GA", + "DELETING": "GA", + "RUNNING": "GA", + "STARTING": "GA", + "STOPPED": "GA", + "STOPPING": "GA" + } + }, + "sql.StatementParameterListItem": { + "fields": { + "name": { + "description": "The name of a parameter marker to be substituted in the statement.", + "launch_stage": "GA" + }, + "type": { + "description": "The data type, given as a string. For example: `INT`, `STRING`, `DECIMAL(10,2)`.\nIf no type is given the type is assumed to be `STRING`. Complex types, such as\n`ARRAY`, `MAP`, and `STRUCT` are not supported. For valid types, refer to the\nsection [Data types](https://docs.databricks.com/sql/language-manual/functions/cast.html) of the SQL language reference.", + "launch_stage": "GA" + }, + "value": { + "description": "The value to substitute, represented as a string. If omitted, the value is interpreted as NULL.", + "launch_stage": "GA" + } + } + }, + "sql.StatementResponse": { + "fields": { + "manifest": { + "ref": "sql.ResultManifest", + "launch_stage": "GA" + }, + "result": { + "ref": "sql.ResultData", + "launch_stage": "GA" + }, + "statement_id": { + "description": "The statement ID is returned upon successfully submitting a SQL statement, and is a required\nreference for all subsequent calls.", + "launch_stage": "GA" + }, + "status": { + "ref": "sql.StatementStatus", + "launch_stage": "GA" + } + } + }, + "sql.StatementState": { + "enum": [ + "PENDING", + "RUNNING", + "SUCCEEDED", + "FAILED", + "CANCELED", + "CLOSED" + ], + "enum_launch_stages": { + "CANCELED": "GA", + "CLOSED": "GA", + "FAILED": "GA", + "PENDING": "GA", + "RUNNING": "GA", + "SUCCEEDED": "GA" + } + }, + "sql.StatementStatus": { + "description": "The status response includes execution state and if relevant, error information.", + "fields": { + "error": { + "ref": "sql.ServiceError", + "launch_stage": "GA" + }, + "sql_state": { + "description": "SQLSTATE error code returned when the statement execution fails.\nOnly populated when the statement status is `FAILED`.", + "launch_stage": "GA" + }, + "state": { + "description": "Statement execution state:\n- `PENDING`: waiting for warehouse\n- `RUNNING`: running\n- `SUCCEEDED`: execution was successful, result data available for fetch\n- `FAILED`: execution failed; reason for failure described in accompanying error message\n- `CANCELED`: user canceled; can come from explicit cancel call, or timeout with\n`on_wait_timeout=CANCEL`\n- `CLOSED`: execution successful, and statement closed; result no longer available for fetch", + "ref": "sql.StatementState", + "launch_stage": "GA" + } + } + }, + "sql.Status": { + "enum": [ + "HEALTHY", + "DEGRADED", + "FAILED" + ], + "enum_launch_stages": { + "DEGRADED": "GA", + "FAILED": "GA", + "HEALTHY": "GA" + } + }, + "sql.StopRequest": { + "description": "Stops a SQL warehouse.\nThis API is idempotent." + }, + "sql.StopWarehouseResponse": {}, + "sql.Success": { + "fields": { + "message": { + "ref": "sql.SuccessMessage", + "launch_stage": "GA" + } + } + }, + "sql.SuccessMessage": { + "enum": [ + "Success" + ], + "enum_launch_stages": { + "Success": "GA" + } + }, + "sql.TaskTimeOverRange": { + "fields": { + "entries": { + "launch_stage": "GA" + }, + "interval": { + "description": "interval length for all entries (difference in start time and end time of an entry range)\nthe same for all entries\nstart time of first interval is query_start_time_ms", + "launch_stage": "GA" + } + } + }, + "sql.TaskTimeOverRangeEntry": { + "fields": { + "task_completed_time_ms": { + "description": "total task completion time in this time range, aggregated over all stages and jobs in the query", + "launch_stage": "GA" + } + } + }, + "sql.TerminationReason": { + "fields": { + "code": { + "description": "status code indicating why the cluster was terminated", + "ref": "sql.TerminationReasonCode", + "launch_stage": "GA" + }, + "parameters": { + "description": "list of parameters that provide additional information about why the cluster was terminated", + "launch_stage": "GA" + }, + "type": { + "description": "type of the termination", + "ref": "sql.TerminationReasonType", + "launch_stage": "GA" + } + } + }, + "sql.TerminationReasonCode": { + "description": "The status code indicating why the cluster was terminated.", + "enum": [ + "UNKNOWN", + "USER_REQUEST", + "JOB_FINISHED", + "INACTIVITY", + "CLOUD_PROVIDER_SHUTDOWN", + "COMMUNICATION_LOST", + "CLOUD_PROVIDER_LAUNCH_FAILURE", + "INIT_SCRIPT_FAILURE", + "SPARK_STARTUP_FAILURE", + "INVALID_ARGUMENT", + "UNEXPECTED_LAUNCH_FAILURE", + "INTERNAL_ERROR", + "INSTANCE_UNREACHABLE", + "REQUEST_REJECTED", + "TRIAL_EXPIRED", + "DRIVER_UNREACHABLE", + "SPARK_ERROR", + "DRIVER_UNRESPONSIVE", + "METASTORE_COMPONENT_UNHEALTHY", + "DBFS_COMPONENT_UNHEALTHY", + "EXECUTION_COMPONENT_UNHEALTHY", + "AZURE_RESOURCE_MANAGER_THROTTLING", + "AZURE_RESOURCE_PROVIDER_THROTTLING", + "NETWORK_CONFIGURATION_FAILURE", + "CONTAINER_LAUNCH_FAILURE", + "INSTANCE_POOL_CLUSTER_FAILURE", + "SKIPPED_SLOW_NODES", + "ATTACH_PROJECT_FAILURE", + "UPDATE_INSTANCE_PROFILE_FAILURE", + "DATABASE_CONNECTION_FAILURE", + "REQUEST_THROTTLED", + "SELF_BOOTSTRAP_FAILURE", + "GLOBAL_INIT_SCRIPT_FAILURE", + "SLOW_IMAGE_DOWNLOAD", + "INVALID_SPARK_IMAGE", + "NPIP_TUNNEL_TOKEN_FAILURE", + "HIVE_METASTORE_PROVISIONING_FAILURE", + "AZURE_INVALID_DEPLOYMENT_TEMPLATE", + "AZURE_UNEXPECTED_DEPLOYMENT_TEMPLATE_FAILURE", + "SUBNET_EXHAUSTED_FAILURE", + "BOOTSTRAP_TIMEOUT", + "STORAGE_DOWNLOAD_FAILURE", + "CONTROL_PLANE_REQUEST_FAILURE", + "BOOTSTRAP_TIMEOUT_CLOUD_PROVIDER_EXCEPTION", + "AWS_INSUFFICIENT_INSTANCE_CAPACITY_FAILURE", + "DOCKER_IMAGE_PULL_FAILURE", + "AZURE_VNET_CONFIGURATION_FAILURE", + "NPIP_TUNNEL_SETUP_FAILURE", + "AWS_AUTHORIZATION_FAILURE", + "NEPHOS_RESOURCE_MANAGEMENT", + "STS_CLIENT_SETUP_FAILURE", + "SECURITY_DAEMON_REGISTRATION_EXCEPTION", + "AWS_REQUEST_LIMIT_EXCEEDED", + "AWS_INSUFFICIENT_FREE_ADDRESSES_IN_SUBNET_FAILURE", + "AWS_UNSUPPORTED_FAILURE", + "AZURE_QUOTA_EXCEEDED_EXCEPTION", + "AZURE_OPERATION_NOT_ALLOWED_EXCEPTION", + "NFS_MOUNT_FAILURE", + "K8S_AUTOSCALING_FAILURE", + "K8S_DBR_CLUSTER_LAUNCH_TIMEOUT", + "SPARK_IMAGE_DOWNLOAD_FAILURE", + "AZURE_VM_EXTENSION_FAILURE", + "WORKSPACE_CANCELLED_ERROR", + "AWS_MAX_SPOT_INSTANCE_COUNT_EXCEEDED_FAILURE", + "TEMPORARILY_UNAVAILABLE", + "WORKER_SETUP_FAILURE", + "IP_EXHAUSTION_FAILURE", + "GCP_QUOTA_EXCEEDED", + "CLOUD_PROVIDER_RESOURCE_STOCKOUT", + "GCP_SERVICE_ACCOUNT_DELETED", + "AZURE_BYOK_KEY_PERMISSION_FAILURE", + "SPOT_INSTANCE_TERMINATION", + "AZURE_EPHEMERAL_DISK_FAILURE", + "ABUSE_DETECTED", + "IMAGE_PULL_PERMISSION_DENIED", + "WORKSPACE_CONFIGURATION_ERROR", + "SECRET_RESOLUTION_ERROR", + "UNSUPPORTED_INSTANCE_TYPE", + "CLOUD_PROVIDER_DISK_SETUP_FAILURE", + "SSH_BOOTSTRAP_FAILURE", + "AWS_INACCESSIBLE_KMS_KEY_FAILURE", + "INIT_CONTAINER_NOT_FINISHED", + "SPARK_IMAGE_DOWNLOAD_THROTTLED", + "SPARK_IMAGE_NOT_FOUND", + "CLUSTER_OPERATION_THROTTLED", + "CLUSTER_OPERATION_TIMEOUT", + "SERVERLESS_LONG_RUNNING_TERMINATED", + "AZURE_PACKED_DEPLOYMENT_PARTIAL_FAILURE", + "INVALID_WORKER_IMAGE_FAILURE", + "WORKSPACE_UPDATE", + "INVALID_AWS_PARAMETER", + "DRIVER_OUT_OF_DISK", + "DRIVER_OUT_OF_MEMORY", + "DRIVER_LAUNCH_TIMEOUT", + "DRIVER_UNEXPECTED_FAILURE", + "UNEXPECTED_POD_RECREATION", + "GCP_INACCESSIBLE_KMS_KEY_FAILURE", + "GCP_KMS_KEY_PERMISSION_DENIED", + "DRIVER_EVICTION", + "USER_INITIATED_VM_TERMINATION", + "GCP_IAM_TIMEOUT", + "AWS_RESOURCE_QUOTA_EXCEEDED", + "CLOUD_ACCOUNT_SETUP_FAILURE", + "AWS_INVALID_KEY_PAIR", + "DRIVER_POD_CREATION_FAILURE", + "MAINTENANCE_MODE", + "INTERNAL_CAPACITY_FAILURE", + "EXECUTOR_POD_UNSCHEDULED", + "STORAGE_DOWNLOAD_FAILURE_SLOW", + "STORAGE_DOWNLOAD_FAILURE_THROTTLED", + "DYNAMIC_SPARK_CONF_SIZE_EXCEEDED", + "AWS_INSTANCE_PROFILE_UPDATE_FAILURE", + "INSTANCE_POOL_NOT_FOUND", + "INSTANCE_POOL_MAX_CAPACITY_REACHED", + "AWS_INVALID_KMS_KEY_STATE", + "GCP_INSUFFICIENT_CAPACITY", + "GCP_API_RATE_QUOTA_EXCEEDED", + "GCP_RESOURCE_QUOTA_EXCEEDED", + "GCP_IP_SPACE_EXHAUSTED", + "GCP_SERVICE_ACCOUNT_ACCESS_DENIED", + "GCP_SERVICE_ACCOUNT_NOT_FOUND", + "GCP_FORBIDDEN", + "GCP_NOT_FOUND", + "RESOURCE_USAGE_BLOCKED", + "DATA_ACCESS_CONFIG_CHANGED", + "ACCESS_TOKEN_FAILURE", + "INVALID_INSTANCE_PLACEMENT_PROTOCOL", + "BUDGET_POLICY_RESOLUTION_FAILURE", + "IN_PENALTY_BOX", + "DISASTER_RECOVERY_REPLICATION", + "BOOTSTRAP_TIMEOUT_DUE_TO_MISCONFIG", + "INSTANCE_UNREACHABLE_DUE_TO_MISCONFIG", + "STORAGE_DOWNLOAD_FAILURE_DUE_TO_MISCONFIG", + "CONTROL_PLANE_REQUEST_FAILURE_DUE_TO_MISCONFIG", + "CLOUD_PROVIDER_LAUNCH_FAILURE_DUE_TO_MISCONFIG", + "GCP_SUBNET_NOT_READY", + "CLOUD_OPERATION_CANCELLED", + "CLOUD_PROVIDER_INSTANCE_NOT_LAUNCHED", + "GCP_TRUSTED_IMAGE_PROJECTS_VIOLATED", + "BUDGET_POLICY_LIMIT_ENFORCEMENT_ACTIVATED", + "EOS_SPARK_IMAGE", + "NO_MATCHED_K8S", + "LAZY_ALLOCATION_TIMEOUT", + "DRIVER_NODE_UNREACHABLE", + "SECRET_CREATION_FAILURE", + "POD_SCHEDULING_FAILURE", + "POD_ASSIGNMENT_FAILURE", + "ALLOCATION_TIMEOUT", + "ALLOCATION_TIMEOUT_NO_UNALLOCATED_CLUSTERS", + "ALLOCATION_TIMEOUT_NO_MATCHED_CLUSTERS", + "ALLOCATION_TIMEOUT_NO_READY_CLUSTERS", + "ALLOCATION_TIMEOUT_NO_WARMED_UP_CLUSTERS", + "ALLOCATION_TIMEOUT_NODE_DAEMON_NOT_READY", + "ALLOCATION_TIMEOUT_NO_HEALTHY_CLUSTERS", + "NETVISOR_SETUP_TIMEOUT", + "NO_MATCHED_K8S_TESTING_TAG", + "CLOUD_PROVIDER_RESOURCE_STOCKOUT_DUE_TO_MISCONFIG", + "GKE_BASED_CLUSTER_TERMINATION", + "ALLOCATION_TIMEOUT_NO_HEALTHY_AND_WARMED_UP_CLUSTERS", + "DOCKER_INVALID_OS_EXCEPTION", + "DOCKER_CONTAINER_CREATION_EXCEPTION", + "DOCKER_IMAGE_TOO_LARGE_FOR_INSTANCE_EXCEPTION", + "DNS_RESOLUTION_ERROR", + "GCP_DENIED_BY_ORG_POLICY", + "SECRET_PERMISSION_DENIED", + "NETWORK_CHECK_NIC_FAILURE", + "NETWORK_CHECK_DNS_SERVER_FAILURE", + "NETWORK_CHECK_STORAGE_FAILURE", + "NETWORK_CHECK_METADATA_ENDPOINT_FAILURE", + "NETWORK_CHECK_CONTROL_PLANE_FAILURE", + "NETWORK_CHECK_MULTIPLE_COMPONENTS_FAILURE", + "DRIVER_UNHEALTHY", + "USAGE_POLICY_ENTITLEMENT_DENIED", + "K8S_ACTIVE_POD_QUOTA_EXCEEDED", + "CLOUD_ACCOUNT_POD_QUOTA_EXCEEDED", + "NETWORK_CHECK_NIC_FAILURE_DUE_TO_MISCONFIG", + "NETWORK_CHECK_DNS_SERVER_FAILURE_DUE_TO_MISCONFIG", + "NETWORK_CHECK_STORAGE_FAILURE_DUE_TO_MISCONFIG", + "NETWORK_CHECK_METADATA_ENDPOINT_FAILURE_DUE_TO_MISCONFIG", + "NETWORK_CHECK_CONTROL_PLANE_FAILURE_DUE_TO_MISCONFIG", + "NETWORK_CHECK_MULTIPLE_COMPONENTS_FAILURE_DUE_TO_MISCONFIG", + "DBR_IMAGE_RESOLUTION_FAILURE", + "CONTROL_PLANE_CONNECTION_FAILURE", + "CONTROL_PLANE_CONNECTION_FAILURE_DUE_TO_MISCONFIG", + "RATE_LIMITED", + "MTLS_PORT_CONNECTIVITY_FAILURE", + "HIVEMETASTORE_CONNECTIVITY_FAILURE" + ], + "enum_launch_stages": { + "ABUSE_DETECTED": "GA", + "ACCESS_TOKEN_FAILURE": "GA", + "ALLOCATION_TIMEOUT": "GA", + "ALLOCATION_TIMEOUT_NODE_DAEMON_NOT_READY": "GA", + "ALLOCATION_TIMEOUT_NO_HEALTHY_AND_WARMED_UP_CLUSTERS": "GA", + "ALLOCATION_TIMEOUT_NO_HEALTHY_CLUSTERS": "GA", + "ALLOCATION_TIMEOUT_NO_MATCHED_CLUSTERS": "GA", + "ALLOCATION_TIMEOUT_NO_READY_CLUSTERS": "GA", + "ALLOCATION_TIMEOUT_NO_UNALLOCATED_CLUSTERS": "GA", + "ALLOCATION_TIMEOUT_NO_WARMED_UP_CLUSTERS": "GA", + "ATTACH_PROJECT_FAILURE": "GA", + "AWS_AUTHORIZATION_FAILURE": "GA", + "AWS_INACCESSIBLE_KMS_KEY_FAILURE": "GA", + "AWS_INSTANCE_PROFILE_UPDATE_FAILURE": "GA", + "AWS_INSUFFICIENT_FREE_ADDRESSES_IN_SUBNET_FAILURE": "GA", + "AWS_INSUFFICIENT_INSTANCE_CAPACITY_FAILURE": "GA", + "AWS_INVALID_KEY_PAIR": "GA", + "AWS_INVALID_KMS_KEY_STATE": "GA", + "AWS_MAX_SPOT_INSTANCE_COUNT_EXCEEDED_FAILURE": "GA", + "AWS_REQUEST_LIMIT_EXCEEDED": "GA", + "AWS_RESOURCE_QUOTA_EXCEEDED": "GA", + "AWS_UNSUPPORTED_FAILURE": "GA", + "AZURE_BYOK_KEY_PERMISSION_FAILURE": "GA", + "AZURE_EPHEMERAL_DISK_FAILURE": "GA", + "AZURE_INVALID_DEPLOYMENT_TEMPLATE": "GA", + "AZURE_OPERATION_NOT_ALLOWED_EXCEPTION": "GA", + "AZURE_PACKED_DEPLOYMENT_PARTIAL_FAILURE": "GA", + "AZURE_QUOTA_EXCEEDED_EXCEPTION": "GA", + "AZURE_RESOURCE_MANAGER_THROTTLING": "GA", + "AZURE_RESOURCE_PROVIDER_THROTTLING": "GA", + "AZURE_UNEXPECTED_DEPLOYMENT_TEMPLATE_FAILURE": "GA", + "AZURE_VM_EXTENSION_FAILURE": "GA", + "AZURE_VNET_CONFIGURATION_FAILURE": "GA", + "BOOTSTRAP_TIMEOUT": "GA", + "BOOTSTRAP_TIMEOUT_CLOUD_PROVIDER_EXCEPTION": "GA", + "BOOTSTRAP_TIMEOUT_DUE_TO_MISCONFIG": "GA", + "BUDGET_POLICY_LIMIT_ENFORCEMENT_ACTIVATED": "GA", + "BUDGET_POLICY_RESOLUTION_FAILURE": "GA", + "CLOUD_ACCOUNT_POD_QUOTA_EXCEEDED": "GA", + "CLOUD_ACCOUNT_SETUP_FAILURE": "GA", + "CLOUD_OPERATION_CANCELLED": "GA", + "CLOUD_PROVIDER_DISK_SETUP_FAILURE": "GA", + "CLOUD_PROVIDER_INSTANCE_NOT_LAUNCHED": "GA", + "CLOUD_PROVIDER_LAUNCH_FAILURE": "GA", + "CLOUD_PROVIDER_LAUNCH_FAILURE_DUE_TO_MISCONFIG": "GA", + "CLOUD_PROVIDER_RESOURCE_STOCKOUT": "GA", + "CLOUD_PROVIDER_RESOURCE_STOCKOUT_DUE_TO_MISCONFIG": "GA", + "CLOUD_PROVIDER_SHUTDOWN": "GA", + "CLUSTER_OPERATION_THROTTLED": "GA", + "CLUSTER_OPERATION_TIMEOUT": "GA", + "COMMUNICATION_LOST": "GA", + "CONTAINER_LAUNCH_FAILURE": "GA", + "CONTROL_PLANE_CONNECTION_FAILURE": "GA", + "CONTROL_PLANE_CONNECTION_FAILURE_DUE_TO_MISCONFIG": "GA", + "CONTROL_PLANE_REQUEST_FAILURE": "GA", + "CONTROL_PLANE_REQUEST_FAILURE_DUE_TO_MISCONFIG": "GA", + "DATABASE_CONNECTION_FAILURE": "GA", + "DATA_ACCESS_CONFIG_CHANGED": "GA", + "DBFS_COMPONENT_UNHEALTHY": "GA", + "DBR_IMAGE_RESOLUTION_FAILURE": "GA", + "DISASTER_RECOVERY_REPLICATION": "GA", + "DNS_RESOLUTION_ERROR": "GA", + "DOCKER_CONTAINER_CREATION_EXCEPTION": "GA", + "DOCKER_IMAGE_PULL_FAILURE": "GA", + "DOCKER_IMAGE_TOO_LARGE_FOR_INSTANCE_EXCEPTION": "GA", + "DOCKER_INVALID_OS_EXCEPTION": "GA", + "DRIVER_EVICTION": "GA", + "DRIVER_LAUNCH_TIMEOUT": "GA", + "DRIVER_NODE_UNREACHABLE": "GA", + "DRIVER_OUT_OF_DISK": "GA", + "DRIVER_OUT_OF_MEMORY": "GA", + "DRIVER_POD_CREATION_FAILURE": "GA", + "DRIVER_UNEXPECTED_FAILURE": "GA", + "DRIVER_UNHEALTHY": "GA", + "DRIVER_UNREACHABLE": "GA", + "DRIVER_UNRESPONSIVE": "GA", + "DYNAMIC_SPARK_CONF_SIZE_EXCEEDED": "GA", + "EOS_SPARK_IMAGE": "GA", + "EXECUTION_COMPONENT_UNHEALTHY": "GA", + "EXECUTOR_POD_UNSCHEDULED": "GA", + "GCP_API_RATE_QUOTA_EXCEEDED": "GA", + "GCP_DENIED_BY_ORG_POLICY": "GA", + "GCP_FORBIDDEN": "GA", + "GCP_IAM_TIMEOUT": "GA", + "GCP_INACCESSIBLE_KMS_KEY_FAILURE": "GA", + "GCP_INSUFFICIENT_CAPACITY": "GA", + "GCP_IP_SPACE_EXHAUSTED": "GA", + "GCP_KMS_KEY_PERMISSION_DENIED": "GA", + "GCP_NOT_FOUND": "GA", + "GCP_QUOTA_EXCEEDED": "GA", + "GCP_RESOURCE_QUOTA_EXCEEDED": "GA", + "GCP_SERVICE_ACCOUNT_ACCESS_DENIED": "GA", + "GCP_SERVICE_ACCOUNT_DELETED": "GA", + "GCP_SERVICE_ACCOUNT_NOT_FOUND": "GA", + "GCP_SUBNET_NOT_READY": "GA", + "GCP_TRUSTED_IMAGE_PROJECTS_VIOLATED": "GA", + "GKE_BASED_CLUSTER_TERMINATION": "GA", + "GLOBAL_INIT_SCRIPT_FAILURE": "GA", + "HIVEMETASTORE_CONNECTIVITY_FAILURE": "GA", + "HIVE_METASTORE_PROVISIONING_FAILURE": "GA", + "IMAGE_PULL_PERMISSION_DENIED": "GA", + "INACTIVITY": "GA", + "INIT_CONTAINER_NOT_FINISHED": "GA", + "INIT_SCRIPT_FAILURE": "GA", + "INSTANCE_POOL_CLUSTER_FAILURE": "GA", + "INSTANCE_POOL_MAX_CAPACITY_REACHED": "GA", + "INSTANCE_POOL_NOT_FOUND": "GA", + "INSTANCE_UNREACHABLE": "GA", + "INSTANCE_UNREACHABLE_DUE_TO_MISCONFIG": "GA", + "INTERNAL_CAPACITY_FAILURE": "GA", + "INTERNAL_ERROR": "GA", + "INVALID_ARGUMENT": "GA", + "INVALID_AWS_PARAMETER": "GA", + "INVALID_INSTANCE_PLACEMENT_PROTOCOL": "GA", + "INVALID_SPARK_IMAGE": "GA", + "INVALID_WORKER_IMAGE_FAILURE": "GA", + "IN_PENALTY_BOX": "GA", + "IP_EXHAUSTION_FAILURE": "GA", + "JOB_FINISHED": "GA", + "K8S_ACTIVE_POD_QUOTA_EXCEEDED": "GA", + "K8S_AUTOSCALING_FAILURE": "GA", + "K8S_DBR_CLUSTER_LAUNCH_TIMEOUT": "GA", + "LAZY_ALLOCATION_TIMEOUT": "GA", + "MAINTENANCE_MODE": "GA", + "METASTORE_COMPONENT_UNHEALTHY": "GA", + "MTLS_PORT_CONNECTIVITY_FAILURE": "GA", + "NEPHOS_RESOURCE_MANAGEMENT": "GA", + "NETVISOR_SETUP_TIMEOUT": "GA", + "NETWORK_CHECK_CONTROL_PLANE_FAILURE": "GA", + "NETWORK_CHECK_CONTROL_PLANE_FAILURE_DUE_TO_MISCONFIG": "GA", + "NETWORK_CHECK_DNS_SERVER_FAILURE": "GA", + "NETWORK_CHECK_DNS_SERVER_FAILURE_DUE_TO_MISCONFIG": "GA", + "NETWORK_CHECK_METADATA_ENDPOINT_FAILURE": "GA", + "NETWORK_CHECK_METADATA_ENDPOINT_FAILURE_DUE_TO_MISCONFIG": "GA", + "NETWORK_CHECK_MULTIPLE_COMPONENTS_FAILURE": "GA", + "NETWORK_CHECK_MULTIPLE_COMPONENTS_FAILURE_DUE_TO_MISCONFIG": "GA", + "NETWORK_CHECK_NIC_FAILURE": "GA", + "NETWORK_CHECK_NIC_FAILURE_DUE_TO_MISCONFIG": "GA", + "NETWORK_CHECK_STORAGE_FAILURE": "GA", + "NETWORK_CHECK_STORAGE_FAILURE_DUE_TO_MISCONFIG": "GA", + "NETWORK_CONFIGURATION_FAILURE": "GA", + "NFS_MOUNT_FAILURE": "GA", + "NO_MATCHED_K8S": "GA", + "NO_MATCHED_K8S_TESTING_TAG": "GA", + "NPIP_TUNNEL_SETUP_FAILURE": "GA", + "NPIP_TUNNEL_TOKEN_FAILURE": "GA", + "POD_ASSIGNMENT_FAILURE": "GA", + "POD_SCHEDULING_FAILURE": "GA", + "RATE_LIMITED": "GA", + "REQUEST_REJECTED": "GA", + "REQUEST_THROTTLED": "GA", + "RESOURCE_USAGE_BLOCKED": "GA", + "SECRET_CREATION_FAILURE": "GA", + "SECRET_PERMISSION_DENIED": "GA", + "SECRET_RESOLUTION_ERROR": "GA", + "SECURITY_DAEMON_REGISTRATION_EXCEPTION": "GA", + "SELF_BOOTSTRAP_FAILURE": "GA", + "SERVERLESS_LONG_RUNNING_TERMINATED": "GA", + "SKIPPED_SLOW_NODES": "GA", + "SLOW_IMAGE_DOWNLOAD": "GA", + "SPARK_ERROR": "GA", + "SPARK_IMAGE_DOWNLOAD_FAILURE": "GA", + "SPARK_IMAGE_DOWNLOAD_THROTTLED": "GA", + "SPARK_IMAGE_NOT_FOUND": "GA", + "SPARK_STARTUP_FAILURE": "GA", + "SPOT_INSTANCE_TERMINATION": "GA", + "SSH_BOOTSTRAP_FAILURE": "GA", + "STORAGE_DOWNLOAD_FAILURE": "GA", + "STORAGE_DOWNLOAD_FAILURE_DUE_TO_MISCONFIG": "GA", + "STORAGE_DOWNLOAD_FAILURE_SLOW": "GA", + "STORAGE_DOWNLOAD_FAILURE_THROTTLED": "GA", + "STS_CLIENT_SETUP_FAILURE": "GA", + "SUBNET_EXHAUSTED_FAILURE": "GA", + "TEMPORARILY_UNAVAILABLE": "GA", + "TRIAL_EXPIRED": "GA", + "UNEXPECTED_LAUNCH_FAILURE": "GA", + "UNEXPECTED_POD_RECREATION": "GA", + "UNKNOWN": "GA", + "UNSUPPORTED_INSTANCE_TYPE": "GA", + "UPDATE_INSTANCE_PROFILE_FAILURE": "GA", + "USAGE_POLICY_ENTITLEMENT_DENIED": "GA", + "USER_INITIATED_VM_TERMINATION": "GA", + "USER_REQUEST": "GA", + "WORKER_SETUP_FAILURE": "GA", + "WORKSPACE_CANCELLED_ERROR": "GA", + "WORKSPACE_CONFIGURATION_ERROR": "GA", + "WORKSPACE_UPDATE": "GA" + } + }, + "sql.TerminationReasonType": { + "description": "type of the termination", + "enum": [ + "SUCCESS", + "CLIENT_ERROR", + "SERVICE_FAULT", + "CLOUD_FAILURE" + ], + "enum_launch_stages": { + "CLIENT_ERROR": "GA", + "CLOUD_FAILURE": "GA", + "SERVICE_FAULT": "GA", + "SUCCESS": "GA" + } + }, + "sql.TextValue": { + "fields": { + "value": { + "launch_stage": "GA" + } + } + }, + "sql.TimeRange": { + "fields": { + "end_time_ms": { + "description": "The end time in milliseconds.", + "launch_stage": "GA" + }, + "start_time_ms": { + "description": "The start time in milliseconds.", + "launch_stage": "GA" + } + } + }, + "sql.TransferOwnershipObjectId": { + "fields": { + "new_owner": { + "description": "Email address for the new owner, who must exist in the workspace.", + "launch_stage": "GA" + } + } + }, + "sql.TransferOwnershipRequest": { + "fields": { + "new_owner": { + "description": "Email address for the new owner, who must exist in the workspace.", + "launch_stage": "GA" + } + } + }, + "sql.TrashAlertRequest": {}, + "sql.TrashAlertV2Request": { + "fields": { + "purge": { + "description": "Whether to permanently delete the alert. If not set, the alert will only be soft deleted.", + "launch_stage": "PRIVATE_PREVIEW", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "sql.TrashQueryRequest": {}, + "sql.UpdateAlertRequest": { + "fields": { + "alert": { + "ref": "sql.UpdateAlertRequestAlert", + "launch_stage": "GA" + }, + "auto_resolve_display_name": { + "description": "If true, automatically resolve alert display name conflicts. Otherwise, fail the request if the alert's display name conflicts with an existing alert's display name.", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "GA" + } + } + }, + "sql.UpdateAlertRequestAlert": { + "fields": { + "condition": { + "description": "Trigger conditions of the alert.", + "ref": "sql.AlertCondition", + "launch_stage": "GA" + }, + "custom_body": { + "description": "Custom body of alert notification, if it exists. See [here](https://docs.databricks.com/sql/user/alerts/index.html) for custom templating instructions.", + "launch_stage": "GA" + }, + "custom_subject": { + "description": "Custom subject of alert notification, if it exists. This can include email subject entries and Slack notification headers, for example. See [here](https://docs.databricks.com/sql/user/alerts/index.html) for custom templating instructions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "The display name of the alert.", + "launch_stage": "GA" + }, + "notify_on_ok": { + "description": "Whether to notify alert subscribers when alert returns back to normal.", + "launch_stage": "GA" + }, + "owner_user_name": { + "description": "The owner's username. This field is set to \"Unavailable\" if the user has been deleted.", + "launch_stage": "GA" + }, + "query_id": { + "description": "UUID of the query attached to the alert.", + "launch_stage": "GA" + }, + "seconds_to_retrigger": { + "description": "Number of seconds an alert must wait after being triggered to rearm itself. After rearming, it can be triggered again. If 0 or not specified, the alert will not be triggered again.", + "launch_stage": "GA" + } + } + }, + "sql.UpdateAlertV2Request": { + "fields": { + "alert": { + "ref": "sql.AlertV2", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "GA" + } + } + }, + "sql.UpdateDefaultWarehouseOverrideRequest": { + "fields": { + "allow_missing": { + "description": "If set to true, and the override is not found, a new override will be created.\nIn this situation, `update_mask` is ignored and all fields are applied.\nDefaults to false.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "default_warehouse_override": { + "description": "Required. The default warehouse override to update.\nThe name field must be set in the format: default-warehouse-overrides/{default_warehouse_override_id}\nThe default_warehouse_override_id can be a numeric user ID or the literal string \"me\" for the current user.", + "ref": "sql.DefaultWarehouseOverride", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Required. Field mask specifying which fields to update.\nOnly the fields specified in the mask will be updated.\nUse \"*\" to update all fields.\nWhen allow_missing is true, this field is ignored and all fields are applied.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "sql.UpdateQueryRequest": { + "fields": { + "auto_resolve_display_name": { + "description": "If true, automatically resolve alert display name conflicts. Otherwise, fail the request if the alert's display name conflicts with an existing alert's display name.", + "launch_stage": "GA" + }, + "query": { + "ref": "sql.UpdateQueryRequestQuery", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "GA" + } + } + }, + "sql.UpdateQueryRequestQuery": { + "fields": { + "apply_auto_limit": { + "description": "Whether to apply a 1000 row limit to the query result.", + "launch_stage": "GA" + }, + "catalog": { + "description": "Name of the catalog where this query will be executed.", + "launch_stage": "GA" + }, + "description": { + "description": "General description that conveys additional information about this query such as usage notes.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the query that appears in list views, widget headings, and on the query page.", + "launch_stage": "GA" + }, + "owner_user_name": { + "description": "Username of the user that owns the query.", + "launch_stage": "GA" + }, + "parameters": { + "description": "List of query parameter definitions.", + "launch_stage": "GA" + }, + "query_text": { + "description": "Text of the query to be run.", + "launch_stage": "GA" + }, + "run_as_mode": { + "description": "Sets the \"Run as\" role for the object.", + "ref": "sql.RunAsMode", + "launch_stage": "GA" + }, + "schema": { + "description": "Name of the schema where this query will be executed.", + "launch_stage": "GA" + }, + "tags": { + "launch_stage": "GA" + }, + "warehouse_id": { + "description": "ID of the SQL warehouse attached to the query.", + "launch_stage": "GA" + } + } + }, + "sql.UpdateResponse": {}, + "sql.UpdateVisualizationRequest": { + "fields": { + "update_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "visualization": { + "ref": "sql.UpdateVisualizationRequestVisualization", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sql.UpdateVisualizationRequestVisualization": { + "fields": { + "display_name": { + "description": "The display name of the visualization.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "serialized_options": { + "description": "The visualization options varies widely from one visualization type to the next and is unsupported. Databricks does not recommend modifying visualization options directly.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "serialized_query_plan": { + "description": "The visualization query plan varies widely from one visualization type to the next and is unsupported. Databricks does not recommend modifying the visualization query plan directly.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "type": { + "description": "The type of visualization: counter, table, funnel, and so on.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sql.UpdateWidgetRequest": { + "fields": { + "dashboard_id": { + "description": "Dashboard ID returned by :method:dashboards/create.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "options": { + "ref": "sql.WidgetOptions", + "launch_stage": "PRIVATE_PREVIEW" + }, + "text": { + "description": "If this is a textbox widget, the application displays this text. This field is ignored if the widget contains a visualization in the `visualization` field.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "visualization_id": { + "description": "Query Visualization ID returned by :method:queryvisualizations/create.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "width": { + "description": "Width of a widget", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sql.User": { + "fields": { + "email": { + "launch_stage": "GA" + }, + "id": { + "launch_stage": "GA" + }, + "name": { + "launch_stage": "GA" + } + } + }, + "sql.Visualization": { + "fields": { + "create_time": { + "description": "The timestamp indicating when the visualization was created.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "display_name": { + "description": "The display name of the visualization.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "id": { + "description": "UUID identifying the visualization.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "query_id": { + "description": "UUID of the query that the visualization is attached to.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "serialized_options": { + "description": "The visualization options varies widely from one visualization type to the next and is unsupported. Databricks does not recommend modifying visualization options directly.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "serialized_query_plan": { + "description": "The visualization query plan varies widely from one visualization type to the next and is unsupported. Databricks does not recommend modifying the visualization query plan directly.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "type": { + "description": "The type of visualization: counter, table, funnel, and so on.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "update_time": { + "description": "The timestamp indicating when the visualization was updated.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "sql.WarehouseAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "sql.WarehousePermissionLevel", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "sql.WarehouseAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "sql.WarehousePermission": { + "fields": { + "inherited": { + "launch_stage": "GA" + }, + "inherited_from_object": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "sql.WarehousePermissionLevel", + "launch_stage": "GA" + } + } + }, + "sql.WarehousePermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_MANAGE", + "IS_OWNER", + "CAN_USE", + "CAN_MONITOR", + "CAN_VIEW" + ] + }, + "sql.WarehousePermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "launch_stage": "GA" + }, + "object_type": { + "launch_stage": "GA" + } + } + }, + "sql.WarehousePermissionsDescription": { + "fields": { + "description": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "sql.WarehousePermissionLevel", + "launch_stage": "GA" + } + } + }, + "sql.WarehousePermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "sql.WarehouseTypePair": { + "description": "*\nConfiguration values to enable or disable the access to specific warehouse\ntypes in the workspace.", + "fields": { + "enabled": { + "description": "If set to false the specific warehouse type will not be allowed as a\nvalue for warehouse_type in CreateWarehouse and EditWarehouse", + "launch_stage": "GA" + }, + "warehouse_type": { + "ref": "sql.WarehouseTypePairWarehouseType", + "launch_stage": "GA" + } + } + }, + "sql.WarehouseTypePairWarehouseType": { + "enum": [ + "TYPE_UNSPECIFIED", + "CLASSIC", + "PRO", + "REALTIME" + ], + "enum_launch_stages": { + "CLASSIC": "GA", + "PRO": "GA", + "REALTIME": "PRIVATE_PREVIEW", + "TYPE_UNSPECIFIED": "GA" + } + }, + "sql.Widget": { + "fields": { + "id": { + "description": "The unique ID for this widget.", + "launch_stage": "GA" + }, + "options": { + "ref": "sql.WidgetOptions", + "launch_stage": "GA" + }, + "visualization": { + "description": "The visualization description API changes frequently and is unsupported. You can duplicate a visualization by copying description objects received _from the API_ and then using them to create a new one with a POST request to the same endpoint. Databricks does not recommend constructing ad-hoc visualizations entirely in JSON.", + "ref": "sql.LegacyVisualization", + "launch_stage": "GA" + }, + "width": { + "description": "Unused field.", + "launch_stage": "GA" + } + } + }, + "sql.WidgetOptions": { + "fields": { + "created_at": { + "description": "Timestamp when this object was created", + "launch_stage": "GA" + }, + "description": { + "description": "Custom description of the widget", + "launch_stage": "GA" + }, + "isHidden": { + "description": "Whether this widget is hidden on the dashboard.", + "launch_stage": "GA" + }, + "parameterMappings": { + "description": "How parameters used by the visualization in this widget relate to other widgets on the dashboard. Databricks does not recommend modifying this definition in JSON.", + "launch_stage": "GA" + }, + "position": { + "description": "Coordinates of this widget on a dashboard. This portion of the API changes frequently and is unsupported.", + "ref": "sql.WidgetPosition", + "launch_stage": "GA" + }, + "title": { + "description": "Custom title of the widget", + "launch_stage": "GA" + }, + "updated_at": { + "description": "Timestamp of the last time this object was updated.", + "launch_stage": "GA" + } + } + }, + "sql.WidgetPosition": { + "description": "Coordinates of this widget on a dashboard. This portion of the API changes frequently and is unsupported.", + "fields": { + "autoHeight": { + "description": "reserved for internal use", + "launch_stage": "GA" + }, + "col": { + "description": "column in the dashboard grid. Values start with 0", + "launch_stage": "GA" + }, + "row": { + "description": "row in the dashboard grid. Values start with 0", + "launch_stage": "GA" + }, + "sizeX": { + "description": "width of the widget measured in dashboard grid cells", + "launch_stage": "GA" + }, + "sizeY": { + "description": "height of the widget measured in dashboard grid cells", + "launch_stage": "GA" + } + } + }, + "supervisoragents.App": { + "description": "Databricks app. Supported app: custom mcp, custom agent.", + "fields": { + "name": { + "description": "App name", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.CreateExampleRequest": { + "fields": { + "example": { + "description": "The example to create under the parent Supervisor Agent.", + "ref": "supervisoragents.Example", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.CreateSupervisorAgentRequest": { + "fields": { + "supervisor_agent": { + "description": "The Supervisor Agent to create.", + "ref": "supervisoragents.SupervisorAgent", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.CreateToolRequest": { + "fields": { + "tool": { + "ref": "supervisoragents.Tool", + "launch_stage": "PUBLIC_BETA" + }, + "tool_id": { + "description": "The ID to use for the tool, which will become the final component of\nthe tool's resource name.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.DeleteExampleRequest": {}, + "supervisoragents.DeleteSupervisorAgentRequest": {}, + "supervisoragents.DeleteToolRequest": {}, + "supervisoragents.Example": { + "description": "An example associated with a Supervisor Agent.\nContains a question and guidelines for how the agent should respond.", + "fields": { + "example_id": { + "description": "The universally unique identifier (UUID) of the example.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "guidelines": { + "description": "Guidelines for answering the question.", + "launch_stage": "PUBLIC_BETA" + }, + "name": { + "description": "Full resource name:\nsupervisor-agents/{supervisor_agent_id}/examples/{example_id}", + "launch_stage": "PUBLIC_BETA" + }, + "question": { + "description": "The example question.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.GenieSpace": { + "fields": { + "id": { + "description": "Deprecated: use space_id instead. Still REQUIRED for backward compatibility\nuntil a future API version removes it.", + "deprecated": true, + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.GetExampleRequest": {}, + "supervisoragents.GetSupervisorAgentPermissionLevelsRequest": {}, + "supervisoragents.GetSupervisorAgentPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.GetSupervisorAgentPermissionsRequest": {}, + "supervisoragents.GetSupervisorAgentRequest": {}, + "supervisoragents.GetToolRequest": {}, + "supervisoragents.KnowledgeAssistant": { + "fields": { + "knowledge_assistant_id": { + "description": "The ID of the knowledge assistant.", + "launch_stage": "PUBLIC_BETA" + }, + "serving_endpoint_name": { + "description": "Deprecated: use knowledge_assistant_id instead.", + "deprecated": true, + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "supervisoragents.ListExamplesRequest": { + "fields": { + "page_size": { + "description": "The maximum number of examples to return.\nIf unspecified, at most 100 examples will be returned.\nThe maximum value is 100; values above 100 will be coerced to 100.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous `ListExamples` call.\nProvide this to retrieve the subsequent page.\nIf unspecified, the first page will be returned.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "supervisoragents.ListExamplesResponse": { + "description": "A list of Supervisor Agent examples.", + "fields": { + "examples": { + "launch_stage": "PUBLIC_BETA" + }, + "next_page_token": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.ListSupervisorAgentsRequest": { + "fields": { + "page_size": { + "description": "The maximum number of supervisor agents to return.\nIf unspecified, at most 100 supervisor agents will be returned.\nThe maximum value is 100; values above 100 will be coerced to 100.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "A page token, received from a previous `ListSupervisorAgents` call.\nProvide this to retrieve the subsequent page.\nIf unspecified, the first page will be returned.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "supervisoragents.ListSupervisorAgentsResponse": { + "fields": { + "next_page_token": { + "description": "A token that can be sent as `page_token` to retrieve the next page.\nIf this field is omitted, there are no subsequent pages.", + "launch_stage": "PUBLIC_BETA" + }, + "supervisor_agents": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.ListToolsRequest": { + "fields": { + "page_size": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "supervisoragents.ListToolsResponse": { + "fields": { + "next_page_token": { + "launch_stage": "PUBLIC_BETA" + }, + "tools": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.SupervisorAgent": { + "fields": { + "create_time": { + "description": "Creation timestamp.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "creator": { + "description": "The creator of the Supervisor Agent.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "description": "Description of what this agent can do (user-facing).", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "display_name": { + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "launch_stage": "PUBLIC_BETA" + }, + "endpoint_name": { + "description": "The name of the supervisor agent's serving endpoint.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "experiment_id": { + "description": "The MLflow experiment ID.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "id": { + "description": "Deprecated: Use supervisor_agent_id instead.", + "deprecated": true, + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "instructions": { + "description": "Optional natural-language instructions for the supervisor agent.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "The resource name of the SupervisorAgent.\nFormat: supervisor-agents/{supervisor_agent_id}", + "launch_stage": "PUBLIC_BETA" + }, + "supervisor_agent_id": { + "description": "The universally unique identifier (UUID) of the Supervisor Agent.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + } + } + }, + "supervisoragents.SupervisorAgentAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "PUBLIC_BETA" + }, + "permission_level": { + "ref": "supervisoragents.SupervisorAgentPermissionLevel", + "launch_stage": "PUBLIC_BETA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "PUBLIC_BETA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.SupervisorAgentAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "PUBLIC_BETA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "PUBLIC_BETA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "PUBLIC_BETA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "PUBLIC_BETA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.SupervisorAgentPermission": { + "fields": { + "inherited": { + "launch_stage": "PUBLIC_BETA" + }, + "inherited_from_object": { + "launch_stage": "PUBLIC_BETA" + }, + "permission_level": { + "ref": "supervisoragents.SupervisorAgentPermissionLevel", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.SupervisorAgentPermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_MANAGE", + "CAN_QUERY" + ] + }, + "supervisoragents.SupervisorAgentPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "PUBLIC_BETA" + }, + "object_id": { + "launch_stage": "PUBLIC_BETA" + }, + "object_type": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.SupervisorAgentPermissionsDescription": { + "fields": { + "description": { + "launch_stage": "PUBLIC_BETA" + }, + "permission_level": { + "ref": "supervisoragents.SupervisorAgentPermissionLevel", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.SupervisorAgentPermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.Tool": { + "fields": { + "app": { + "ref": "supervisoragents.App", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "description": { + "description": "Description of what this tool does (user-facing).", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "genie_space": { + "ref": "supervisoragents.GenieSpace", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "id": { + "description": "Deprecated: Use tool_id instead.", + "deprecated": true, + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "knowledge_assistant": { + "ref": "supervisoragents.KnowledgeAssistant", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "name": { + "description": "Full resource name:\nsupervisor-agents/{supervisor_agent_id}/tools/{tool_id}", + "launch_stage": "PUBLIC_BETA" + }, + "tool_id": { + "description": "User specified id of the Tool.", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "tool_type": { + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "launch_stage": "PUBLIC_BETA" + }, + "uc_connection": { + "ref": "supervisoragents.UcConnection", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "uc_function": { + "ref": "supervisoragents.UcFunction", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + }, + "volume": { + "ref": "supervisoragents.Volume", + "launch_stage": "PUBLIC_BETA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "supervisoragents.UcConnection": { + "description": "Databricks UC connection. Supported connection: external mcp server.", + "fields": { + "name": { + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.UcFunction": { + "fields": { + "name": { + "description": "Full uc function name", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.UpdateExampleRequest": { + "fields": { + "example": { + "ref": "supervisoragents.Example", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Comma-delimited list of fields to update on the example.\nAllowed values: `question`, `guidelines`.\nExamples:\n- `question`\n- `question,guidelines`", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.UpdateSupervisorAgentRequest": { + "fields": { + "supervisor_agent": { + "description": "The SupervisorAgent to update.", + "ref": "supervisoragents.SupervisorAgent", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Field mask for fields to be updated.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.UpdateToolRequest": { + "fields": { + "tool": { + "description": "The Tool to update.", + "ref": "supervisoragents.Tool", + "launch_stage": "PUBLIC_BETA" + }, + "update_mask": { + "description": "Field mask for fields to be updated.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "supervisoragents.Volume": { + "fields": { + "name": { + "description": "Full uc volume name", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "tags.CreateTagAssignmentRequest": { + "fields": { + "tag_assignment": { + "ref": "tags.TagAssignment", + "launch_stage": "GA" + } + } + }, + "tags.CreateTagPolicyRequest": { + "fields": { + "tag_policy": { + "ref": "tags.TagPolicy", + "launch_stage": "GA" + } + } + }, + "tags.DeleteTagAssignmentRequest": {}, + "tags.DeleteTagPolicyRequest": {}, + "tags.GetTagAssignmentRequest": {}, + "tags.GetTagPolicyRequest": {}, + "tags.ListTagAssignmentsRequest": { + "fields": { + "page_size": { + "description": "Optional. Maximum number of tag assignments to return in a single page", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "Pagination token to go to the next page of tag assignments. Requests first page if absent.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "tags.ListTagAssignmentsResponse": { + "fields": { + "next_page_token": { + "description": "Pagination token to request the next page of tag assignments", + "launch_stage": "GA" + }, + "tag_assignments": { + "launch_stage": "GA" + } + } + }, + "tags.ListTagPoliciesRequest": { + "fields": { + "page_size": { + "description": "The maximum number of results to return in this request. Fewer results may be returned than requested. If\nunspecified or set to 0, this defaults to 1000. The maximum value is 1000; values above 1000 will be coerced down\nto 1000.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "page_token": { + "description": "An optional page token received from a previous list tag policies call.", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "tags.ListTagPoliciesResponse": { + "fields": { + "next_page_token": { + "launch_stage": "GA" + }, + "tag_policies": { + "launch_stage": "GA" + } + } + }, + "tags.TagAssignment": { + "fields": { + "entity_id": { + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "entity_type": { + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "tag_key": { + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "tag_value": { + "description": "The value of the tag", + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + } + } + }, + "tags.TagPolicy": { + "fields": { + "create_time": { + "description": "Timestamp when the tag policy was created", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "description": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL" + ] + }, + "id": { + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "tag_key": { + "launch_stage": "GA", + "behaviors": [ + "IMMUTABLE" + ] + }, + "update_time": { + "description": "Timestamp when the tag policy was last updated", + "launch_stage": "GA", + "behaviors": [ + "OUTPUT_ONLY" + ] + }, + "values": { + "launch_stage": "GA", + "behaviors": [ + "OPTIONAL", + "UNORDERED_LIST" + ] + } + } + }, + "tags.UpdateTagAssignmentRequest": { + "fields": { + "tag_assignment": { + "ref": "tags.TagAssignment", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "GA" + } + } + }, + "tags.UpdateTagPolicyRequest": { + "fields": { + "tag_policy": { + "ref": "tags.TagPolicy", + "launch_stage": "GA" + }, + "update_mask": { + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "launch_stage": "GA" + } + } + }, + "tags.Value": { + "fields": { + "name": { + "launch_stage": "GA" + } + } + }, + "vectorsearch.ColumnInfo": { + "fields": { + "name": { + "description": "Name of the column.", + "launch_stage": "GA" + }, + "type_text": { + "description": "Data type of the column (e.g., \"string\", \"int\", \"array\u003cfloat\u003e\")", + "launch_stage": "GA" + } + } + }, + "vectorsearch.CreateEndpoint": { + "fields": { + "budget_policy_id": { + "description": "The budget policy id to be applied", + "launch_stage": "PUBLIC_PREVIEW" + }, + "endpoint_type": { + "description": "Type of endpoint", + "ref": "vectorsearch.EndpointType", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the AI Search endpoint", + "launch_stage": "GA" + }, + "target_qps": { + "description": "Target QPS for the endpoint. Mutually exclusive with num_replicas.\nThe actual replica count is calculated at index creation/sync time based on this value.\nBest-effort target; the system does not guarantee this QPS will be achieved.", + "launch_stage": "GA" + }, + "usage_policy_id": { + "description": "The usage policy id to be applied once we've migrated to usage policies", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "vectorsearch.CreateVectorIndexRequest": { + "fields": { + "delta_sync_index_spec": { + "description": "Specification for Delta Sync Index. Required if `index_type` is `DELTA_SYNC`.", + "ref": "vectorsearch.DeltaSyncVectorIndexSpecRequest", + "launch_stage": "GA" + }, + "direct_access_index_spec": { + "description": "Specification for Direct Vector Access Index. Required if `index_type` is `DIRECT_ACCESS`.", + "ref": "vectorsearch.DirectAccessVectorIndexSpec", + "launch_stage": "GA" + }, + "endpoint_name": { + "description": "Name of the endpoint to be used for serving the index", + "launch_stage": "GA" + }, + "index_subtype": { + "description": "The subtype of the index. Use `HYBRID` or `FULL_TEXT`. `VECTOR` is not supported.", + "ref": "vectorsearch.IndexSubtype", + "launch_stage": "PUBLIC_BETA" + }, + "index_type": { + "ref": "vectorsearch.VectorIndexType", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the index", + "launch_stage": "GA" + }, + "primary_key": { + "description": "Primary key of the index", + "launch_stage": "GA" + } + } + }, + "vectorsearch.CustomTag": { + "fields": { + "key": { + "description": "Key field for an AI Search endpoint tag.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "value": { + "description": "[Optional] Value field for an AI Search endpoint tag.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "vectorsearch.DeleteDataResult": { + "fields": { + "failed_primary_keys": { + "description": "List of primary keys for rows that failed to process.", + "launch_stage": "GA" + }, + "success_row_count": { + "description": "Count of successfully processed rows.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.DeleteDataStatus": { + "enum": [ + "SUCCESS", + "PARTIAL_SUCCESS", + "FAILURE" + ], + "enum_launch_stages": { + "FAILURE": "GA", + "PARTIAL_SUCCESS": "GA", + "SUCCESS": "GA" + } + }, + "vectorsearch.DeleteDataVectorIndexRequest": { + "fields": { + "primary_keys": { + "description": "List of primary keys for the data to be deleted.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.DeleteDataVectorIndexResponse": { + "fields": { + "result": { + "description": "Result of the upsert or delete operation.", + "ref": "vectorsearch.DeleteDataResult", + "launch_stage": "GA" + }, + "status": { + "description": "Status of the delete operation.", + "ref": "vectorsearch.DeleteDataStatus", + "launch_stage": "GA" + } + } + }, + "vectorsearch.DeleteEndpointRequest": {}, + "vectorsearch.DeleteEndpointResponse": {}, + "vectorsearch.DeleteIndexRequest": {}, + "vectorsearch.DeleteIndexResponse": {}, + "vectorsearch.DeltaSyncVectorIndexSpecRequest": { + "fields": { + "columns_to_index": { + "description": "[Optional] Alias for columns_to_sync. Select the columns to include in the vector index.\nIf you leave this field blank, all columns from the source table are included.\nThe primary key column and embedding source column or embedding vector column are always included.\nOnly one of columns_to_sync or columns_to_index may be specified.", + "launch_stage": "GA" + }, + "columns_to_sync": { + "description": "[Optional] Select the columns to sync with the vector index. If you leave this field blank, all columns\nfrom the source table are synced with the index. The primary key column and embedding source column or\nembedding vector column are always synced.", + "launch_stage": "GA" + }, + "embedding_source_columns": { + "description": "The columns that contain the embedding source.", + "launch_stage": "GA" + }, + "embedding_vector_columns": { + "description": "The columns that contain the embedding vectors.", + "launch_stage": "GA" + }, + "embedding_writeback_table": { + "description": "[Optional] Name of the Delta table to sync the vector index contents and computed embeddings to.", + "launch_stage": "GA" + }, + "pipeline_type": { + "description": "Pipeline execution mode.\n- `TRIGGERED`: If the pipeline uses the triggered execution mode, the system stops processing after successfully refreshing the source table in the pipeline once, ensuring the table is updated based on the data available when the update started.\n- `CONTINUOUS`: If the pipeline uses continuous execution, the pipeline processes new data as it arrives in the source table to keep vector index fresh.", + "ref": "vectorsearch.PipelineType", + "launch_stage": "GA" + }, + "source_table": { + "description": "The name of the source table.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.DeltaSyncVectorIndexSpecResponse": { + "fields": { + "columns_to_index": { + "description": "[Optional] Alias for columns_to_sync. Select the columns to include in the vector index.\nIf you leave this field blank, all columns from the source table are included.\nThe primary key column and embedding source column or embedding vector column are always included.\nOnly one of columns_to_sync or columns_to_index may be specified.", + "launch_stage": "GA" + }, + "columns_to_sync": { + "description": "[Optional] Select the columns to sync with the vector index. If you leave this field blank, all columns\nfrom the source table are synced with the index. The primary key column and embedding source column or\nembedding vector column are always synced.", + "launch_stage": "GA" + }, + "embedding_source_columns": { + "description": "The columns that contain the embedding source.", + "launch_stage": "GA" + }, + "embedding_vector_columns": { + "description": "The columns that contain the embedding vectors.", + "launch_stage": "GA" + }, + "embedding_writeback_table": { + "description": "[Optional] Name of the Delta table to sync the vector index contents and computed embeddings to.", + "launch_stage": "GA" + }, + "pipeline_id": { + "description": "The ID of the pipeline that is used to sync the index.", + "launch_stage": "GA" + }, + "pipeline_type": { + "description": "Pipeline execution mode.\n- `TRIGGERED`: If the pipeline uses the triggered execution mode, the system stops processing after successfully refreshing the source table in the pipeline once, ensuring the table is updated based on the data available when the update started.\n- `CONTINUOUS`: If the pipeline uses continuous execution, the pipeline processes new data as it arrives in the source table to keep vector index fresh.", + "ref": "vectorsearch.PipelineType", + "launch_stage": "GA" + }, + "source_table": { + "description": "The name of the source table.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.DirectAccessVectorIndexSpec": { + "fields": { + "embedding_source_columns": { + "description": "The columns that contain the embedding source. The format should be array[double].", + "launch_stage": "GA" + }, + "embedding_vector_columns": { + "description": "The columns that contain the embedding vectors. The format should be array[double].", + "launch_stage": "GA" + }, + "schema_json": { + "description": "The schema of the index in JSON format.\nSupported types are `integer`, `long`, `float`, `double`, `boolean`, `string`, `date`, `timestamp`.\nSupported types for vector column: `array\u003cfloat\u003e`, `array\u003cdouble\u003e`,`.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.EmbeddingSourceColumn": { + "fields": { + "embedding_model_endpoint_name": { + "description": "Name of the embedding model endpoint, used by default for both ingestion and querying.", + "launch_stage": "GA" + }, + "model_endpoint_name_for_query": { + "description": "Name of the embedding model endpoint which, if specified, is used for querying (not ingestion).", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the column", + "launch_stage": "GA" + } + } + }, + "vectorsearch.EmbeddingVectorColumn": { + "fields": { + "embedding_dimension": { + "description": "Dimension of the embedding vector", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the column", + "launch_stage": "GA" + } + } + }, + "vectorsearch.EndpointInfo": { + "fields": { + "budget_policy_id": { + "description": "The user-selected budget policy id for the endpoint.", + "launch_stage": "PUBLIC_PREVIEW" + }, + "creation_timestamp": { + "description": "Timestamp of endpoint creation", + "launch_stage": "GA" + }, + "creator": { + "description": "Creator of the endpoint", + "launch_stage": "GA" + }, + "custom_tags": { + "description": "The custom tags assigned to the endpoint", + "launch_stage": "PRIVATE_PREVIEW" + }, + "effective_budget_policy_id": { + "description": "The budget policy id applied to the endpoint", + "launch_stage": "PUBLIC_PREVIEW" + }, + "endpoint_status": { + "description": "Current status of the endpoint", + "ref": "vectorsearch.EndpointStatus", + "launch_stage": "GA" + }, + "endpoint_type": { + "description": "Type of endpoint", + "ref": "vectorsearch.EndpointType", + "launch_stage": "GA" + }, + "id": { + "description": "Unique identifier of the endpoint", + "launch_stage": "GA" + }, + "last_updated_timestamp": { + "description": "Timestamp of last update to the endpoint", + "launch_stage": "GA" + }, + "last_updated_user": { + "description": "User who last updated the endpoint", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the AI Search endpoint", + "launch_stage": "GA" + }, + "num_indexes": { + "description": "Number of indexes on the endpoint", + "launch_stage": "GA" + }, + "scaling_info": { + "description": "Scaling information for the endpoint", + "ref": "vectorsearch.EndpointScalingInfo", + "launch_stage": "GA" + } + } + }, + "vectorsearch.EndpointScalingInfo": { + "description": "Scaling information for a Standard endpoint: the current scaling state, the requested QPS\ntarget, and the progress of an in-progress scaling change.", + "fields": { + "requested_target_qps": { + "description": "The requested QPS target for the endpoint. Best-effort; the system does not\nguarantee this QPS will be achieved.", + "launch_stage": "GA" + }, + "state": { + "description": "The current state of the scaling change request.", + "ref": "vectorsearch.ScalingChangeState", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "vectorsearch.EndpointStatus": { + "description": "Status information of an endpoint", + "fields": { + "message": { + "description": "Additional status message", + "launch_stage": "GA" + }, + "state": { + "description": "Current state of the endpoint", + "ref": "vectorsearch.EndpointStatusState", + "launch_stage": "GA" + } + } + }, + "vectorsearch.EndpointStatusState": { + "description": "Current state of the endpoint", + "enum": [ + "PROVISIONING", + "ONLINE", + "OFFLINE", + "RED_STATE", + "YELLOW_STATE", + "DELETED" + ], + "enum_launch_stages": { + "DELETED": "GA", + "OFFLINE": "GA", + "ONLINE": "GA", + "PROVISIONING": "GA", + "RED_STATE": "GA", + "YELLOW_STATE": "GA" + } + }, + "vectorsearch.EndpointType": { + "description": "Type of endpoint.", + "enum": [ + "STORAGE_OPTIMIZED", + "STANDARD" + ], + "enum_launch_stages": { + "STANDARD": "GA", + "STORAGE_OPTIMIZED": "GA" + } + }, + "vectorsearch.FacetResultData": { + "description": "Facet aggregation rows returned by a query.", + "fields": { + "facet_array": { + "description": "Facet rows. Each row is `[facet_column_name, value_or_range, count]`.", + "launch_stage": "PUBLIC_BETA" + }, + "facet_row_count": { + "description": "Number of facet rows returned.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "vectorsearch.GetEndpointRequest": {}, + "vectorsearch.GetIndexRequest": { + "fields": { + "ensure_reranker_compatible": { + "description": "If true, the URL returned for the index is guaranteed to be compatible with the reranker.\nCurrently this means we return the CP URL regardless of how the index is being accessed.\nIf not set or set to false, the URL may still be compatible with the reranker depending on\nwhat URL we return.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.GetVectorSearchEndpointPermissionLevelsRequest": {}, + "vectorsearch.GetVectorSearchEndpointPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "GA" + } + } + }, + "vectorsearch.GetVectorSearchEndpointPermissionsRequest": {}, + "vectorsearch.IndexSubtype": { + "description": "The subtype of the AI Search index, determining the indexing and retrieval strategy.\n- `VECTOR`: Not supported. Use `HYBRID` instead.\n- `FULL_TEXT`: An index that uses full-text search without vector embeddings.\n- `HYBRID`: An index that uses vector embeddings for similarity search and hybrid search.", + "enum": [ + "VECTOR", + "FULL_TEXT", + "HYBRID" + ], + "enum_launch_stages": { + "FULL_TEXT": "PUBLIC_BETA", + "HYBRID": "PUBLIC_BETA", + "VECTOR": "PUBLIC_BETA" + }, + "enum_descriptions": { + "FULL_TEXT": "An index that uses full-text search without vector embeddings.", + "HYBRID": "An index that uses vector embeddings for similarity search and hybrid search.", + "VECTOR": "Not supported. Use `HYBRID` instead." + } + }, + "vectorsearch.ListEndpointResponse": { + "fields": { + "endpoints": { + "description": "An array of Endpoint objects", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "A token that can be used to get the next page of results. If not present, there are no more results to show.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.ListEndpointsRequest": { + "fields": { + "page_token": { + "description": "Token for pagination", + "launch_stage": "GA" + } + } + }, + "vectorsearch.ListIndexesRequest": { + "fields": { + "endpoint_name": { + "description": "Name of the endpoint", + "launch_stage": "GA" + }, + "page_token": { + "description": "Token for pagination", + "launch_stage": "GA" + } + } + }, + "vectorsearch.ListValue": { + "fields": { + "values": { + "description": "Repeated field of dynamically typed values.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.ListVectorIndexesResponse": { + "fields": { + "next_page_token": { + "description": "A token that can be used to get the next page of results. If not present, there are no more results to show.", + "launch_stage": "GA" + }, + "vector_indexes": { + "launch_stage": "GA" + } + } + }, + "vectorsearch.MapStringValueEntry": { + "description": "Key-value pair.", + "fields": { + "key": { + "description": "Column name.", + "launch_stage": "GA" + }, + "value": { + "description": "Column value, nullable.", + "ref": "vectorsearch.Value", + "launch_stage": "GA" + } + } + }, + "vectorsearch.Metric": { + "description": "Metric specification", + "fields": { + "labels": { + "description": "Metric labels", + "launch_stage": "GA" + }, + "name": { + "description": "Metric name", + "launch_stage": "GA" + }, + "percentile": { + "description": "Percentile for the metric", + "launch_stage": "GA" + } + } + }, + "vectorsearch.MetricLabel": { + "description": "Label for a metric", + "fields": { + "name": { + "description": "Label name", + "launch_stage": "GA" + }, + "value": { + "description": "Label value", + "launch_stage": "GA" + } + } + }, + "vectorsearch.MetricValue": { + "description": "Single metric value at a specific timestamp", + "fields": { + "timestamp": { + "description": "Timestamp of the metric value (milliseconds since epoch)", + "launch_stage": "GA" + }, + "value": { + "description": "Metric value", + "launch_stage": "GA" + } + } + }, + "vectorsearch.MetricValues": { + "description": "Collection of metric values for a specific metric", + "fields": { + "metric": { + "description": "Metric specification", + "ref": "vectorsearch.Metric", + "launch_stage": "GA" + }, + "values": { + "description": "Time series of metric values", + "launch_stage": "GA" + } + } + }, + "vectorsearch.MiniVectorIndex": { + "fields": { + "creator": { + "description": "The user who created the index.", + "launch_stage": "GA" + }, + "endpoint_id": { + "description": "ID of the endpoint associated with the index.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "endpoint_name": { + "description": "Name of the endpoint associated with the index", + "launch_stage": "GA" + }, + "index_subtype": { + "description": "The subtype of the index.", + "ref": "vectorsearch.IndexSubtype", + "launch_stage": "PUBLIC_BETA" + }, + "index_type": { + "ref": "vectorsearch.VectorIndexType", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the index", + "launch_stage": "GA" + }, + "primary_key": { + "description": "Primary key of the index", + "launch_stage": "GA" + } + } + }, + "vectorsearch.PatchEndpointBudgetPolicyRequest": { + "fields": { + "budget_policy_id": { + "description": "The budget policy id to be applied", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "vectorsearch.PatchEndpointBudgetPolicyResponse": { + "fields": { + "budget_policy_id": { + "launch_stage": "PUBLIC_PREVIEW" + }, + "effective_budget_policy_id": { + "description": "The budget policy applied to the AI Search endpoint.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "vectorsearch.PatchEndpointRequest": { + "fields": { + "target_qps": { + "description": "Target QPS for the endpoint. Best-effort; the system does not guarantee this QPS\nwill be achieved.", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "vectorsearch.PipelineType": { + "description": "Pipeline execution mode.\n- `TRIGGERED`: If the pipeline uses the triggered execution mode, the system stops processing after successfully refreshing the source table in the pipeline once, ensuring the table is updated based on the data available when the update started.\n- `CONTINUOUS`: If the pipeline uses continuous execution, the pipeline processes new data as it arrives in the source table to keep vector index fresh.", + "enum": [ + "TRIGGERED", + "CONTINUOUS" + ], + "enum_launch_stages": { + "CONTINUOUS": "GA", + "TRIGGERED": "GA" + }, + "enum_descriptions": { + "CONTINUOUS": "If the pipeline uses continuous execution, the pipeline processes new data as it arrives in the source table to keep vector index fresh.", + "TRIGGERED": "If the pipeline uses the triggered execution mode, the system stops processing after successfully refreshing the source table in the pipeline once, ensuring the table is updated based on the data available when the update started." + } + }, + "vectorsearch.QueryVectorIndexNextPageRequest": { + "description": "Request payload for getting next page of results.", + "fields": { + "endpoint_name": { + "description": "Name of the endpoint.", + "launch_stage": "GA" + }, + "page_token": { + "description": "Page token returned from previous `QueryVectorIndex` or `QueryVectorIndexNextPage` API.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.QueryVectorIndexRequest": { + "fields": { + "columns": { + "description": "List of column names to include in the response.", + "launch_stage": "GA" + }, + "columns_to_rerank": { + "description": "Column names used to retrieve data to send to the reranker.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "facets": { + "description": "Facets to compute over the matched results. Each entry has one of these forms:\n`\"\u003ccolumn\u003e\"` - top 10 distinct values by count\n`\"\u003ccolumn\u003e TOP \u003cn\u003e\"` - top n distinct values, where n \u003e 0\n`\"\u003ccolumn\u003e BUCKETS [[from,to],...]\"` - inclusive numeric ranges\n`TOP` and `BUCKETS` are case-insensitive. A column may appear at most once.", + "launch_stage": "PUBLIC_BETA" + }, + "filters_json": { + "description": "JSON string representing query filters.\n\nExample filters:\n\n- `{\"id \u003c\": 5}`: Filter for id less than 5.\n- `{\"id \u003e\": 5}`: Filter for id greater than 5.\n- `{\"id \u003c=\": 5}`: Filter for id less than equal to 5.\n- `{\"id \u003e=\": 5}`: Filter for id greater than equal to 5.\n- `{\"id\": 5}`: Filter for id equal to 5.", + "launch_stage": "GA" + }, + "num_results": { + "description": "Number of results to return. Defaults to 10.", + "launch_stage": "GA" + }, + "query_columns": { + "description": "Text columns to search for `query_text`. When empty, all text columns are searched.", + "launch_stage": "PUBLIC_BETA" + }, + "query_text": { + "description": "Query text. Required for Delta Sync Index using model endpoint.", + "launch_stage": "GA" + }, + "query_type": { + "description": "The query type to use. Choices are `ANN` and `HYBRID` and `FULL_TEXT`. Defaults to `ANN`.", + "launch_stage": "GA" + }, + "query_vector": { + "description": "Query vector. Required for Direct Vector Access Index and Delta Sync Index using self-managed vectors.", + "launch_stage": "GA" + }, + "reranker": { + "description": "If set, the top 50 results are reranked with the Databricks Reranker model before returning the `num_results` results to the user.\nThe setting `columns_to_rerank` selects which columns are used for reranking. For each datapoint, the columns selected are concatenated before\nbeing sent to the reranking model. See https://docs.databricks.com/aws/en/vector-search/query-vector-search#rerank for more information.", + "ref": "vectorsearch.RerankerConfig", + "launch_stage": "GA" + }, + "score_threshold": { + "description": "Threshold for the approximate nearest neighbor search. Defaults to 0.0.", + "launch_stage": "GA" + }, + "sort_columns": { + "description": "Sort results by column values instead of the default relevance ordering.\nEach clause has the form `\"\u003ccolumn\u003e ASC\"` or `\"\u003ccolumn\u003e DESC\"`, for example\n`[\"rating DESC\", \"price ASC\"]`.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "vectorsearch.QueryVectorIndexResponse": { + "fields": { + "facet_result": { + "description": "Facet aggregation rows returned by a query.", + "ref": "vectorsearch.FacetResultData", + "launch_stage": "PUBLIC_BETA" + }, + "manifest": { + "description": "Metadata about the result set.", + "ref": "vectorsearch.ResultManifest", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "[Optional] Token that can be used in `QueryVectorIndexNextPage` API to get next page of results.\nIf more than 1000 results satisfy the query, they are returned in groups of 1000.\nEmpty value means no more results. The maximum number of results that can be returned is 10,000.", + "launch_stage": "GA" + }, + "result": { + "description": "Data returned in the query result.", + "ref": "vectorsearch.ResultData", + "launch_stage": "GA" + } + } + }, + "vectorsearch.RerankerConfig": { + "fields": { + "model": { + "description": "Reranker identifier:\n- When model_type=BASE/UNSPECIFIED: must be \"databricks_reranker\".\n- When model_type=FINETUNED: the Model Serving endpoint name hosting a finetuned reranker.", + "launch_stage": "GA" + }, + "parameters": { + "description": "Parameters that control how the reranker processes the query results.", + "ref": "vectorsearch.RerankerConfigRerankerParameters", + "launch_stage": "GA" + } + } + }, + "vectorsearch.RerankerConfigRerankerParameters": { + "fields": { + "columns_to_rerank": { + "launch_stage": "GA" + } + } + }, + "vectorsearch.ResultData": { + "description": "Data returned in the query result.", + "fields": { + "data_array": { + "description": "Data rows returned in the query.", + "launch_stage": "GA" + }, + "row_count": { + "description": "Number of rows in the result set.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.ResultManifest": { + "description": "Metadata about the result set.", + "fields": { + "column_count": { + "description": "Number of columns in the result set.", + "launch_stage": "GA" + }, + "columns": { + "description": "Information about each column in the result set.", + "launch_stage": "GA" + }, + "facet_column_count": { + "description": "Number of columns in `facet_result`.", + "launch_stage": "PUBLIC_BETA" + }, + "facet_columns": { + "description": "Information about each column in `facet_result`.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "vectorsearch.RetrieveUserVisibleMetricsRequest": { + "description": "Request to retrieve user-visible metrics", + "fields": { + "end_time": { + "description": "End time for metrics query", + "launch_stage": "GA" + }, + "granularity_in_seconds": { + "description": "Granularity in seconds", + "launch_stage": "GA" + }, + "metrics": { + "description": "List of metrics to retrieve", + "launch_stage": "GA" + }, + "page_token": { + "description": "Token for pagination", + "launch_stage": "GA" + }, + "start_time": { + "description": "Start time for metrics query", + "launch_stage": "GA" + } + } + }, + "vectorsearch.RetrieveUserVisibleMetricsResponse": { + "description": "Response containing user-visible metrics", + "fields": { + "metric_values": { + "description": "Collection of metric values", + "launch_stage": "GA" + }, + "next_page_token": { + "description": "A token that can be used to get the next page of results. If not present, there are no more results to show.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.ScalingChangeState": { + "enum": [ + "SCALING_CHANGE_UNSPECIFIED", + "SCALING_CHANGE_APPLIED", + "SCALING_CHANGE_IN_PROGRESS" + ], + "enum_launch_stages": { + "SCALING_CHANGE_APPLIED": "PUBLIC_BETA", + "SCALING_CHANGE_IN_PROGRESS": "PUBLIC_BETA", + "SCALING_CHANGE_UNSPECIFIED": "PUBLIC_BETA" + } + }, + "vectorsearch.ScanVectorIndexRequest": { + "fields": { + "last_primary_key": { + "description": "Primary key of the last entry returned in the previous scan.", + "launch_stage": "GA" + }, + "num_results": { + "description": "Number of results to return. Defaults to 10.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.ScanVectorIndexResponse": { + "description": "Response to a scan vector index request.", + "fields": { + "data": { + "description": "List of data entries", + "launch_stage": "GA" + }, + "last_primary_key": { + "description": "Primary key of the last entry.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.Struct": { + "fields": { + "fields": { + "description": "Data entry, corresponding to a row in a vector index.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.SyncIndexRequest": {}, + "vectorsearch.SyncIndexResponse": {}, + "vectorsearch.UpdateEndpointCustomTagsRequest": { + "fields": { + "custom_tags": { + "description": "The new custom tags for the AI Search endpoint", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "vectorsearch.UpdateEndpointCustomTagsResponse": { + "fields": { + "custom_tags": { + "description": "All the custom tags that are applied to the AI Search endpoint.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "name": { + "description": "The name of the AI Search endpoint whose custom tags were updated.", + "launch_stage": "PRIVATE_PREVIEW" + } + } + }, + "vectorsearch.UpsertDataResult": { + "fields": { + "failed_primary_keys": { + "description": "List of primary keys for rows that failed to process.", + "launch_stage": "GA" + }, + "success_row_count": { + "description": "Count of successfully processed rows.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.UpsertDataStatus": { + "enum": [ + "SUCCESS", + "PARTIAL_SUCCESS", + "FAILURE" + ], + "enum_launch_stages": { + "FAILURE": "GA", + "PARTIAL_SUCCESS": "GA", + "SUCCESS": "GA" + } + }, + "vectorsearch.UpsertDataVectorIndexRequest": { + "fields": { + "inputs_json": { + "description": "JSON string representing the data to be upserted.", + "launch_stage": "GA" + } + } + }, + "vectorsearch.UpsertDataVectorIndexResponse": { + "fields": { + "result": { + "description": "Result of the upsert or delete operation.", + "ref": "vectorsearch.UpsertDataResult", + "launch_stage": "GA" + }, + "status": { + "description": "Status of the upsert operation.", + "ref": "vectorsearch.UpsertDataStatus", + "launch_stage": "GA" + } + } + }, + "vectorsearch.Value": { + "fields": { + "bool_value": { + "launch_stage": "GA" + }, + "list_value": { + "ref": "vectorsearch.ListValue", + "launch_stage": "GA" + }, + "number_value": { + "launch_stage": "GA" + }, + "string_value": { + "launch_stage": "GA" + }, + "struct_value": { + "ref": "vectorsearch.Struct", + "launch_stage": "GA" + } + } + }, + "vectorsearch.VectorIndex": { + "fields": { + "creator": { + "description": "The user who created the index.", + "launch_stage": "GA" + }, + "delta_sync_index_spec": { + "ref": "vectorsearch.DeltaSyncVectorIndexSpecResponse", + "launch_stage": "GA" + }, + "direct_access_index_spec": { + "ref": "vectorsearch.DirectAccessVectorIndexSpec", + "launch_stage": "GA" + }, + "endpoint_id": { + "description": "ID of the endpoint associated with the index.", + "launch_stage": "PRIVATE_PREVIEW" + }, + "endpoint_name": { + "description": "Name of the endpoint associated with the index", + "launch_stage": "GA" + }, + "index_subtype": { + "description": "The subtype of the index.", + "ref": "vectorsearch.IndexSubtype", + "launch_stage": "PUBLIC_BETA" + }, + "index_type": { + "ref": "vectorsearch.VectorIndexType", + "launch_stage": "GA" + }, + "name": { + "description": "Name of the index", + "launch_stage": "GA" + }, + "primary_key": { + "description": "Primary key of the index", + "launch_stage": "GA" + }, + "status": { + "ref": "vectorsearch.VectorIndexStatus", + "launch_stage": "GA" + } + } + }, + "vectorsearch.VectorIndexStatus": { + "fields": { + "index_url": { + "description": "Index API Url to be used to perform operations on the index", + "launch_stage": "GA" + }, + "indexed_row_count": { + "description": "Number of rows indexed", + "launch_stage": "GA" + }, + "message": { + "description": "Message associated with the index status", + "launch_stage": "GA" + }, + "ready": { + "description": "Whether the index is ready for search", + "launch_stage": "GA" + } + } + }, + "vectorsearch.VectorIndexType": { + "description": "There are 2 types of AI Search indexes:\n- `DELTA_SYNC`: An index that automatically syncs with a source Delta Table, automatically and incrementally updating the index as the underlying data in the Delta Table changes.\n- `DIRECT_ACCESS`: An index that supports direct read and write of vectors and metadata through our REST and SDK APIs. With this model, the user manages index updates.", + "enum": [ + "DELTA_SYNC", + "DIRECT_ACCESS" + ], + "enum_launch_stages": { + "DELTA_SYNC": "GA", + "DIRECT_ACCESS": "GA" + }, + "enum_descriptions": { + "DELTA_SYNC": "An index that automatically syncs with a source Delta Table, automatically and incrementally updating the index as the underlying data in the Delta Table changes.", + "DIRECT_ACCESS": "An index that supports direct read and write of vectors and metadata through our REST and SDK APIs. With this model, the user manages index updates." + } + }, + "vectorsearch.VectorSearchEndpointAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "vectorsearch.VectorSearchEndpointPermissionLevel", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "vectorsearch.VectorSearchEndpointAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "vectorsearch.VectorSearchEndpointPermission": { + "fields": { + "inherited": { + "launch_stage": "GA" + }, + "inherited_from_object": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "vectorsearch.VectorSearchEndpointPermissionLevel", + "launch_stage": "GA" + } + } + }, + "vectorsearch.VectorSearchEndpointPermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_CREATE", + "CAN_MANAGE", + "CAN_USE" + ] + }, + "vectorsearch.VectorSearchEndpointPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "launch_stage": "GA" + }, + "object_type": { + "launch_stage": "GA" + } + } + }, + "vectorsearch.VectorSearchEndpointPermissionsDescription": { + "fields": { + "description": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "vectorsearch.VectorSearchEndpointPermissionLevel", + "launch_stage": "GA" + } + } + }, + "vectorsearch.VectorSearchEndpointPermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "workspace.AclItem": { + "description": "An item representing an ACL rule applied to the given principal (user or group)\non the associated scope point.", + "fields": { + "permission": { + "description": "The permission level applied to the principal.", + "ref": "workspace.AclPermission", + "launch_stage": "GA" + }, + "principal": { + "description": "The principal in which the permission is applied.", + "launch_stage": "GA" + } + } + }, + "workspace.AclPermission": { + "description": "The ACL permission levels for Secret ACLs applied to secret scopes.", + "enum": [ + "READ", + "WRITE", + "MANAGE" + ], + "enum_launch_stages": { + "MANAGE": "GA", + "READ": "GA", + "WRITE": "GA" + } + }, + "workspace.AzureKeyVaultSecretScopeMetadata": { + "description": "The metadata of the Azure KeyVault for a secret scope of type `AZURE_KEYVAULT`", + "fields": { + "dns_name": { + "description": "The DNS of the KeyVault", + "launch_stage": "GA" + }, + "resource_id": { + "description": "The resource id of the azure KeyVault that user wants to associate the scope with.", + "launch_stage": "GA" + } + } + }, + "workspace.CreateCredentialsRequest": { + "fields": { + "git_email": { + "description": "The authenticating email associated with your Git provider user account.\nUsed for authentication with the remote repository and also sets the author \u0026 committer identity for commits.\nRequired for most Git providers except AWS CodeCommit.\nLearn more at https://docs.databricks.com/aws/en/repos/get-access-tokens-from-git-provider", + "launch_stage": "GA" + }, + "git_provider": { + "description": "Git provider. This field is case-insensitive. The available Git providers are `gitHub`,\n`bitbucketCloud`, `gitLab`, `azureDevOpsServices` (Azure DevOps Services, including\nMicrosoft Entra ID authentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket\nData Center), `gitLabEnterpriseEdition` (GitLab Self-Managed), and `awsCodeCommit`.", + "launch_stage": "GA" + }, + "git_username": { + "description": "The username provided with your Git provider account and associated with the\ncredential. For most Git providers it is only used to set the Git committer \u0026 author names for commits,\nhowever it may be required for authentication depending on your Git provider / token requirements.\nRequired for AWS CodeCommit.", + "launch_stage": "GA" + }, + "is_default_for_provider": { + "description": "if the credential is the default for the given provider", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "the name of the git credential, used for identification and ease of lookup", + "launch_stage": "PUBLIC_PREVIEW" + }, + "personal_access_token": { + "description": "The personal access token used to authenticate to the corresponding Git provider.\nFor certain providers, support may exist for other types of scoped access tokens.\n[Learn more](https://docs.databricks.com/repos/get-access-tokens-from-git-provider.html).", + "launch_stage": "GA" + }, + "principal_id": { + "description": "The ID of the service principal whose credentials will be modified. Only service principal managers can perform this action.", + "launch_stage": "GA" + } + } + }, + "workspace.CreateCredentialsResponse": { + "fields": { + "credential_id": { + "description": "ID of the credential object in the workspace.", + "launch_stage": "GA" + }, + "git_email": { + "description": "The authenticating email associated with your Git provider user account.\nUsed for authentication with the remote repository and also sets the author \u0026 committer identity for commits.\nRequired for most Git providers except AWS CodeCommit.\nLearn more at https://docs.databricks.com/aws/en/repos/get-access-tokens-from-git-provider", + "launch_stage": "GA" + }, + "git_provider": { + "description": "The Git provider associated with the credential.", + "launch_stage": "GA" + }, + "git_username": { + "description": "The username provided with your Git provider account and associated with the\ncredential. For most Git providers it is only used to set the Git committer \u0026 author names for commits,\nhowever it may be required for authentication depending on your Git provider / token requirements.\nRequired for AWS CodeCommit.", + "launch_stage": "GA" + }, + "is_default_for_provider": { + "description": "if the credential is the default for the given provider", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "the name of the git credential, used for identification and ease of lookup", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "workspace.CreateRepoRequest": { + "fields": { + "git_credential_id": { + "description": "Git credential ID to use when cloning the repository. The Git credential must be\nconfigured for the current user.", + "launch_stage": "GA" + }, + "path": { + "description": "Desired path for the repo in the workspace. Almost any path in the workspace can be chosen.\nIf repo is created in `/Repos`, path must be in the format `/Repos/{folder}/{repo-name}`.", + "launch_stage": "GA" + }, + "provider": { + "description": "Git provider. This field is case-insensitive. The available Git providers are `gitHub`,\n`bitbucketCloud`, `gitLab`, `azureDevOpsServices` (Azure DevOps Services, including\nMicrosoft Entra ID authentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket\nData Center), `gitLabEnterpriseEdition` (GitLab Self-Managed), and `awsCodeCommit`.", + "launch_stage": "GA" + }, + "sparse_checkout": { + "description": "If specified, the repo will be created with sparse checkout enabled. You cannot enable/disable\nsparse checkout after the repo is created.", + "ref": "workspace.SparseCheckout", + "launch_stage": "GA" + }, + "url": { + "description": "URL of the Git repository to be linked.", + "launch_stage": "GA" + } + } + }, + "workspace.CreateRepoResponse": { + "fields": { + "branch": { + "description": "Branch that the Git folder (repo) is checked out to.", + "launch_stage": "GA" + }, + "head_commit_id": { + "description": "SHA-1 hash representing the commit ID of the current HEAD of the Git folder (repo).", + "launch_stage": "GA" + }, + "id": { + "description": "ID of the Git folder (repo) object in the workspace.", + "launch_stage": "GA" + }, + "path": { + "description": "Path of the Git folder (repo) in the workspace.", + "launch_stage": "GA" + }, + "provider": { + "description": "Git provider of the linked Git repository, e.g. `gitHub`, `azureDevOpsServices`,\n`bitbucketServer` (Bitbucket Data Center), `gitLabEnterpriseEdition` (GitLab\nSelf-Managed), or `awsCodeCommit`.", + "launch_stage": "GA" + }, + "sparse_checkout": { + "description": "Sparse checkout settings for the Git folder (repo).", + "ref": "workspace.SparseCheckout", + "launch_stage": "GA" + }, + "url": { + "description": "URL of the linked Git repository.", + "launch_stage": "GA" + } + } + }, + "workspace.CreateScope": { + "fields": { + "backend_azure_keyvault": { + "description": "The metadata for the secret scope if the type is ``AZURE_KEYVAULT``", + "ref": "workspace.AzureKeyVaultSecretScopeMetadata", + "launch_stage": "GA" + }, + "initial_manage_principal": { + "description": "The principal that is initially granted ``MANAGE`` permission to the created scope.", + "launch_stage": "GA" + }, + "scope": { + "description": "Scope name requested by the user. Scope names are unique.", + "launch_stage": "GA" + }, + "scope_backend_type": { + "description": "The backend type the scope will be created with. If not specified, will default to ``DATABRICKS``", + "ref": "workspace.ScopeBackendType", + "launch_stage": "GA" + } + } + }, + "workspace.CredentialInfo": { + "fields": { + "credential_id": { + "description": "ID of the credential object in the workspace.", + "launch_stage": "GA" + }, + "git_email": { + "description": "The authenticating email associated with your Git provider user account.\nUsed for authentication with the remote repository and also sets the author \u0026 committer identity for commits.\nRequired for most Git providers except AWS CodeCommit.\nLearn more at https://docs.databricks.com/aws/en/repos/get-access-tokens-from-git-provider", + "launch_stage": "GA" + }, + "git_provider": { + "description": "The Git provider associated with the credential. One of `gitHub`, `bitbucketCloud`,\n`gitLab`, `azureDevOpsServices` (Azure DevOps Services, including Microsoft Entra ID\nauthentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket Data Center),\n`gitLabEnterpriseEdition` (GitLab Self-Managed), or `awsCodeCommit`.", + "launch_stage": "GA" + }, + "git_username": { + "description": "The username provided with your Git provider account and associated with the\ncredential. For most Git providers it is only used to set the Git committer \u0026 author names for commits,\nhowever it may be required for authentication depending on your Git provider / token requirements.\nRequired for AWS CodeCommit.", + "launch_stage": "GA" + }, + "is_default_for_provider": { + "description": "if the credential is the default for the given provider", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "the name of the git credential, used for identification and ease of lookup", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "workspace.Delete": { + "fields": { + "path": { + "description": "The absolute path of the notebook or directory.", + "launch_stage": "GA" + }, + "recursive": { + "description": "The flag that specifies whether to delete the object recursively. It is `false` by default.\nPlease note this deleting directory is not atomic. If it fails in the middle, some of objects\nunder this directory may be deleted and cannot be undone.", + "launch_stage": "GA" + } + } + }, + "workspace.DeleteAcl": { + "fields": { + "principal": { + "description": "The principal to remove an existing ACL from.", + "launch_stage": "GA" + }, + "scope": { + "description": "The name of the scope to remove permissions from.", + "launch_stage": "GA" + } + } + }, + "workspace.DeleteCredentialsRequest": { + "fields": { + "principal_id": { + "description": "The ID of the service principal whose credentials will be modified. Only service principal managers can perform this action.", + "launch_stage": "GA" + } + } + }, + "workspace.DeleteCredentialsResponse": {}, + "workspace.DeleteRepoRequest": {}, + "workspace.DeleteRepoResponse": {}, + "workspace.DeleteResponse": {}, + "workspace.DeleteScope": { + "fields": { + "scope": { + "description": "Name of the scope to delete.", + "launch_stage": "GA" + } + } + }, + "workspace.DeleteSecret": { + "fields": { + "key": { + "description": "Name of the secret to delete.", + "launch_stage": "GA" + }, + "scope": { + "description": "The name of the scope that contains the secret to delete.", + "launch_stage": "GA" + } + } + }, + "workspace.DeleteSecretResponse": {}, + "workspace.DirectoryInfo": { + "description": "Additional metadata about a directory.", + "fields": { + "is_git_folder": { + "description": "Whether the directory is a Git folder, whose contents are version-controlled by a remote Git\nrepository. How a Git folder is represented depends on whether it has Git CLI access:\n\n- A Git folder with Git CLI access has an object type of ``DIRECTORY``, with this field set\nto ``true``.\n- A standard Git folder, which does not have Git CLI access, has an object type of ``REPO``\nand does not include this field.\n- A directory that is not Git-backed has this field set to ``false``.\n\nUse this field together with ``object_type`` to identify every Git folder in a workspace.", + "launch_stage": "PUBLIC_BETA" + } + } + }, + "workspace.ExportFormat": { + "description": "The format for workspace import and export.", + "enum": [ + "SOURCE", + "HTML", + "JUPYTER", + "DBC", + "R_MARKDOWN", + "AUTO", + "RAW" + ], + "enum_launch_stages": { + "AUTO": "GA", + "DBC": "GA", + "HTML": "GA", + "JUPYTER": "GA", + "RAW": "GA", + "R_MARKDOWN": "GA", + "SOURCE": "GA" + } + }, + "workspace.ExportRequest": { + "fields": { + "format": { + "description": "This specifies the format of the exported file. By default, this is `SOURCE`.\n\nThe value is case sensitive.\n\n- `SOURCE`: The notebook is exported as source code. Directory exports will not include non-notebook entries.\n- `HTML`: The notebook is exported as an HTML file.\n- `JUPYTER`: The notebook is exported as a Jupyter/IPython Notebook file.\n- `DBC`: The notebook is exported in Databricks archive format. Directory exports will not include non-notebook entries.\n- `R_MARKDOWN`: The notebook is exported to R Markdown format.\n- `AUTO`: The object or directory is exported depending on the objects type. Directory exports will include notebooks and workspace files.", + "ref": "workspace.ExportFormat", + "launch_stage": "GA" + }, + "path": { + "description": "The absolute path of the object or directory. Exporting a directory is only supported for the `DBC`, `SOURCE`, and `AUTO` format.", + "launch_stage": "GA" + } + } + }, + "workspace.ExportResponse": { + "description": "The request field `direct_download` determines whether a JSON response or binary contents are returned by this endpoint.", + "fields": { + "content": { + "description": "The base64-encoded content.\nIf the limit (10MB) is exceeded, exception with error code **MAX_NOTEBOOK_SIZE_EXCEEDED** is thrown.", + "launch_stage": "GA" + }, + "file_type": { + "description": "The file type of the exported file.", + "launch_stage": "GA" + } + } + }, + "workspace.GetAclRequest": { + "fields": { + "principal": { + "description": "The principal to fetch ACL information for.", + "launch_stage": "GA" + }, + "scope": { + "description": "The name of the scope to fetch ACL information from.", + "launch_stage": "GA" + } + } + }, + "workspace.GetCredentialsRequest": { + "fields": { + "principal_id": { + "description": "The ID of the service principal whose credentials will be modified. Only service principal managers can perform this action.", + "launch_stage": "GA" + } + } + }, + "workspace.GetCredentialsResponse": { + "fields": { + "credential_id": { + "description": "ID of the credential object in the workspace.", + "launch_stage": "GA" + }, + "git_email": { + "description": "The authenticating email associated with your Git provider user account.\nUsed for authentication with the remote repository and also sets the author \u0026 committer identity for commits.\nRequired for most Git providers except AWS CodeCommit.\nLearn more at https://docs.databricks.com/aws/en/repos/get-access-tokens-from-git-provider", + "launch_stage": "GA" + }, + "git_provider": { + "description": "The Git provider associated with the credential.", + "launch_stage": "GA" + }, + "git_username": { + "description": "The username provided with your Git provider account and associated with the\ncredential. For most Git providers it is only used to set the Git committer \u0026 author names for commits,\nhowever it may be required for authentication depending on your Git provider / token requirements.\nRequired for AWS CodeCommit.", + "launch_stage": "GA" + }, + "is_default_for_provider": { + "description": "if the credential is the default for the given provider", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "the name of the git credential, used for identification and ease of lookup", + "launch_stage": "PUBLIC_PREVIEW" + } + } + }, + "workspace.GetRepoPermissionLevelsRequest": {}, + "workspace.GetRepoPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "GA" + } + } + }, + "workspace.GetRepoPermissionsRequest": {}, + "workspace.GetRepoRequest": {}, + "workspace.GetRepoResponse": { + "fields": { + "branch": { + "description": "Branch that the local version of the repo is checked out to.", + "launch_stage": "GA" + }, + "git_cli_enabled": { + "description": "Whether the Git CLI is enabled for this Git folder (repo). When true, Git commands\ncan be run directly against this Git folder using the Git CLI.", + "launch_stage": "PUBLIC_BETA" + }, + "head_commit_id": { + "description": "SHA-1 hash representing the commit ID of the current HEAD of the repo.", + "launch_stage": "GA" + }, + "id": { + "description": "ID of the Git folder (repo) object in the workspace.", + "launch_stage": "GA" + }, + "path": { + "description": "Path of the Git folder (repo) in the workspace.", + "launch_stage": "GA" + }, + "provider": { + "description": "Git provider of the linked Git repository, e.g. `gitHub`, `azureDevOpsServices`,\n`bitbucketServer` (Bitbucket Data Center), `gitLabEnterpriseEdition` (GitLab\nSelf-Managed), or `awsCodeCommit`.", + "launch_stage": "GA" + }, + "sparse_checkout": { + "description": "Sparse checkout settings for the Git folder (repo).", + "ref": "workspace.SparseCheckout", + "launch_stage": "GA" + }, + "url": { + "description": "URL of the linked Git repository.", + "launch_stage": "GA" + } + } + }, + "workspace.GetSecretRequest": { + "fields": { + "key": { + "description": "Name of the secret to fetch value information.", + "launch_stage": "GA" + }, + "scope": { + "description": "The name of the scope that contains the secret.", + "launch_stage": "GA" + } + } + }, + "workspace.GetSecretResponse": { + "fields": { + "key": { + "description": "A unique name to identify the secret.", + "launch_stage": "GA" + }, + "value": { + "description": "The value of the secret in its byte representation.", + "launch_stage": "GA" + } + } + }, + "workspace.GetStatusRequest": { + "fields": { + "path": { + "description": "The absolute path of the notebook or directory.", + "launch_stage": "GA" + } + } + }, + "workspace.GetWorkspaceObjectPermissionLevelsRequest": {}, + "workspace.GetWorkspaceObjectPermissionLevelsResponse": { + "fields": { + "permission_levels": { + "description": "Specific permission levels", + "launch_stage": "GA" + } + } + }, + "workspace.GetWorkspaceObjectPermissionsRequest": {}, + "workspace.Import": { + "fields": { + "content": { + "description": "The base64-encoded content. This has a limit of 10 MB.\n\nIf the limit (10MB) is exceeded, exception with error code **MAX_NOTEBOOK_SIZE_EXCEEDED** is thrown.\nThis parameter might be absent, and instead a posted file is used.", + "launch_stage": "GA" + }, + "format": { + "description": "This specifies the format of the file to be imported.\n\nThe value is case sensitive.\n\n- `AUTO`: The item is imported depending on an analysis of the item's extension and\nthe header content provided in the request. If the item is imported as a notebook,\nthen the item's extension is automatically removed.\n- `SOURCE`: The notebook or directory is imported as source code.\n- `HTML`: The notebook is imported as an HTML file.\n- `JUPYTER`: The notebook is imported as a Jupyter/IPython Notebook file.\n- `DBC`: The notebook is imported in Databricks archive format. Required for directories.\n- `R_MARKDOWN`: The notebook is imported from R Markdown format.", + "ref": "workspace.ImportFormat", + "launch_stage": "GA" + }, + "language": { + "description": "The language of the object. This value is set only if the object type is `NOTEBOOK`.", + "ref": "workspace.Language", + "launch_stage": "GA" + }, + "overwrite": { + "description": "The flag that specifies whether to overwrite existing object. It is `false` by default.\nFor `DBC` format, `overwrite` is not supported since it may contain a directory.", + "launch_stage": "GA" + }, + "path": { + "description": "The absolute path of the object or directory. Importing a directory is only supported for the `DBC` and `SOURCE` formats.", + "launch_stage": "GA" + } + } + }, + "workspace.ImportFormat": { + "description": "The format for workspace import and export.", + "enum": [ + "SOURCE", + "HTML", + "JUPYTER", + "DBC", + "R_MARKDOWN", + "AUTO", + "RAW" + ], + "enum_launch_stages": { + "AUTO": "GA", + "DBC": "GA", + "HTML": "GA", + "JUPYTER": "GA", + "RAW": "GA", + "R_MARKDOWN": "GA", + "SOURCE": "GA" + } + }, + "workspace.ImportResponse": {}, + "workspace.Language": { + "description": "The language of notebook.", + "enum": [ + "SCALA", + "PYTHON", + "SQL", + "R" + ], + "enum_launch_stages": { + "PYTHON": "GA", + "R": "GA", + "SCALA": "GA", + "SQL": "GA" + } + }, + "workspace.ListAclsRequest": { + "fields": { + "scope": { + "description": "The name of the scope to fetch ACL information from.", + "launch_stage": "GA" + } + } + }, + "workspace.ListAclsResponse": { + "fields": { + "items": { + "description": "The associated ACLs rule applied to principals in the given scope.", + "launch_stage": "GA" + } + } + }, + "workspace.ListCredentialsRequest": { + "fields": { + "principal_id": { + "description": "The ID of the service principal whose credentials will be listed. Only service principal managers can perform this action.", + "launch_stage": "GA" + } + } + }, + "workspace.ListCredentialsResponse": { + "fields": { + "credentials": { + "description": "List of credentials.", + "launch_stage": "GA" + } + } + }, + "workspace.ListReposRequest": { + "fields": { + "next_page_token": { + "description": "Token used to get the next page of results. If not specified, returns the first page of\nresults as well as a next page token if there are more results.", + "launch_stage": "GA" + }, + "path_prefix": { + "description": "Filters repos that have paths starting with the given path prefix.\nIf not provided or when provided an effectively empty prefix (`/` or `/Workspace`)\nGit folders (repos) from `/Workspace/Repos` will be served.", + "launch_stage": "GA" + } + } + }, + "workspace.ListReposResponse": { + "fields": { + "next_page_token": { + "description": "Token that can be specified as a query parameter to the `GET /repos` endpoint to retrieve\nthe next page of results.", + "launch_stage": "GA" + }, + "repos": { + "description": "List of Git folders (repos).", + "launch_stage": "GA" + } + } + }, + "workspace.ListResponse": { + "fields": { + "objects": { + "description": "List of objects.", + "launch_stage": "GA" + } + } + }, + "workspace.ListScopesRequest": {}, + "workspace.ListScopesResponse": { + "fields": { + "scopes": { + "description": "The available secret scopes.", + "launch_stage": "GA" + } + } + }, + "workspace.ListSecretsRequest": { + "fields": { + "scope": { + "description": "The name of the scope to list secrets within.", + "launch_stage": "GA" + } + } + }, + "workspace.ListSecretsResponse": { + "fields": { + "secrets": { + "description": "Metadata information of all secrets contained within the given scope.", + "launch_stage": "GA" + } + } + }, + "workspace.ListWorkspaceRequest": { + "fields": { + "notebooks_modified_after": { + "description": "UTC timestamp in milliseconds", + "launch_stage": "GA" + }, + "path": { + "description": "The absolute path of the notebook or directory.", + "launch_stage": "GA" + } + } + }, + "workspace.Mkdirs": { + "fields": { + "path": { + "description": "The absolute path of the directory. If the parent directories do not exist, it will also create them.\nIf the directory already exists, this command will do nothing and succeed.", + "launch_stage": "GA" + } + } + }, + "workspace.MkdirsResponse": {}, + "workspace.ObjectInfo": { + "description": "The information of the object in workspace. It will be returned by ``list`` and ``get-status``.", + "fields": { + "created_at": { + "description": "Only applicable to files. The creation UTC timestamp.", + "launch_stage": "GA" + }, + "directory_info": { + "description": "Additional metadata about the directory. Only set for objects of type ``DIRECTORY``.", + "ref": "workspace.DirectoryInfo", + "launch_stage": "PUBLIC_BETA" + }, + "language": { + "description": "The language of the object. This value is set only if the object type is ``NOTEBOOK``. For Jupyter (.ipynb) notebooks, this is always ``PYTHON``.", + "ref": "workspace.Language", + "launch_stage": "GA" + }, + "modified_at": { + "description": "Only applicable to files, the last modified UTC timestamp.", + "launch_stage": "GA" + }, + "object_id": { + "description": "Unique identifier for the object.", + "launch_stage": "GA" + }, + "object_type": { + "description": "The type of the object in workspace.\n\n- `NOTEBOOK`: document that contains runnable code, visualizations, and explanatory text.\n- `DIRECTORY`: directory\n- `LIBRARY`: library\n- `FILE`: file\n- `REPO`: repository\n- `DASHBOARD`: Lakeview dashboard", + "ref": "workspace.ObjectType", + "launch_stage": "GA" + }, + "path": { + "description": "The absolute path of the object.", + "launch_stage": "GA" + }, + "resource_id": { + "description": "A unique identifier for the object that is consistent across all Databricks APIs.", + "launch_stage": "GA" + }, + "size": { + "description": "Only applicable to files. The file size in bytes can be returned.", + "launch_stage": "GA" + } + } + }, + "workspace.ObjectType": { + "description": "The type of the object in workspace.", + "enum": [ + "NOTEBOOK", + "DIRECTORY", + "LIBRARY", + "FILE", + "REPO", + "DASHBOARD" + ], + "enum_launch_stages": { + "DASHBOARD": "GA", + "DIRECTORY": "GA", + "FILE": "GA", + "LIBRARY": "GA", + "NOTEBOOK": "GA", + "REPO": "GA" + } + }, + "workspace.PutAcl": { + "fields": { + "permission": { + "description": "The permission level applied to the principal.", + "ref": "workspace.AclPermission", + "launch_stage": "GA" + }, + "principal": { + "description": "The principal in which the permission is applied.", + "launch_stage": "GA" + }, + "scope": { + "description": "The name of the scope to apply permissions to.", + "launch_stage": "GA" + } + } + }, + "workspace.PutSecret": { + "fields": { + "bytes_value": { + "description": "If specified, value will be stored as bytes.", + "launch_stage": "GA" + }, + "key": { + "description": "A unique name to identify the secret.", + "launch_stage": "GA" + }, + "scope": { + "description": "The name of the scope to which the secret will be associated with.", + "launch_stage": "GA" + }, + "string_value": { + "description": "If specified, note that the value will be stored in UTF-8 (MB4) form.", + "launch_stage": "GA" + } + } + }, + "workspace.RepoAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "workspace.RepoPermissionLevel", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "workspace.RepoAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "workspace.RepoInfo": { + "description": "Git folder (repo) information.", + "fields": { + "branch": { + "description": "Name of the current git branch of the git folder (repo).", + "launch_stage": "GA" + }, + "head_commit_id": { + "description": "Current git commit id of the git folder (repo).", + "launch_stage": "GA" + }, + "id": { + "description": "Id of the git folder (repo) in the Workspace.", + "launch_stage": "GA" + }, + "path": { + "description": "Root path of the git folder (repo) in the Workspace.", + "launch_stage": "GA" + }, + "provider": { + "description": "Git provider of the remote git repository, e.g. `gitHub`, `azureDevOpsServices`,\n`bitbucketServer` (Bitbucket Data Center), `gitLabEnterpriseEdition` (GitLab\nSelf-Managed), or `awsCodeCommit`.", + "launch_stage": "GA" + }, + "sparse_checkout": { + "description": "Sparse checkout config for the git folder (repo).", + "ref": "workspace.SparseCheckout", + "launch_stage": "GA" + }, + "url": { + "description": "URL of the remote git repository.", + "launch_stage": "GA" + } + } + }, + "workspace.RepoPermission": { + "fields": { + "inherited": { + "launch_stage": "GA" + }, + "inherited_from_object": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "workspace.RepoPermissionLevel", + "launch_stage": "GA" + } + } + }, + "workspace.RepoPermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_MANAGE", + "CAN_EDIT", + "CAN_RUN", + "CAN_READ" + ] + }, + "workspace.RepoPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "launch_stage": "GA" + }, + "object_type": { + "launch_stage": "GA" + } + } + }, + "workspace.RepoPermissionsDescription": { + "fields": { + "description": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "workspace.RepoPermissionLevel", + "launch_stage": "GA" + } + } + }, + "workspace.RepoPermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + }, + "workspace.ScopeBackendType": { + "description": "The types of secret scope backends in the Secret Manager. Azure KeyVault backed secret scopes\nwill be supported in a later release.", + "enum": [ + "DATABRICKS", + "AZURE_KEYVAULT" + ], + "enum_launch_stages": { + "AZURE_KEYVAULT": "GA", + "DATABRICKS": "GA" + } + }, + "workspace.SecretMetadata": { + "description": "The metadata about a secret. Returned when listing secrets. Does not contain the\nactual secret value.", + "fields": { + "key": { + "description": "A unique name to identify the secret.", + "launch_stage": "GA" + }, + "last_updated_timestamp": { + "description": "The last updated timestamp (in milliseconds) for the secret.", + "launch_stage": "GA" + } + } + }, + "workspace.SecretScope": { + "description": "An organizational resource for storing secrets. Secret scopes can be\ndifferent types (Databricks-managed, Azure KeyVault backed, etc), and ACLs\ncan be applied to control permissions for all secrets within a scope.", + "fields": { + "backend_type": { + "description": "The type of secret scope backend.", + "ref": "workspace.ScopeBackendType", + "launch_stage": "GA" + }, + "keyvault_metadata": { + "description": "The metadata for the secret scope if the type is ``AZURE_KEYVAULT``", + "ref": "workspace.AzureKeyVaultSecretScopeMetadata", + "launch_stage": "GA" + }, + "name": { + "description": "A unique name to identify the secret scope.", + "launch_stage": "GA" + } + } + }, + "workspace.SparseCheckout": { + "description": "Sparse checkout configuration, it contains options like cone patterns.", + "fields": { + "patterns": { + "description": "List of sparse checkout cone patterns, see\n[cone mode handling](https://git-scm.com/docs/git-sparse-checkout#_internalscone_mode_handling)\nfor details.", + "launch_stage": "GA" + } + } + }, + "workspace.SparseCheckoutUpdate": { + "description": "Sparse checkout configuration, it contains options like cone patterns.", + "fields": { + "patterns": { + "description": "List of sparse checkout cone patterns, see\n[cone mode handling](https://git-scm.com/docs/git-sparse-checkout#_internalscone_mode_handling)\nfor details.", + "launch_stage": "GA" + } + } + }, + "workspace.UpdateCredentialsRequest": { + "fields": { + "git_email": { + "description": "The authenticating email associated with your Git provider user account.\nUsed for authentication with the remote repository and also sets the author \u0026 committer identity for commits.\nRequired for most Git providers except AWS CodeCommit.\nLearn more at https://docs.databricks.com/aws/en/repos/get-access-tokens-from-git-provider", + "launch_stage": "GA" + }, + "git_provider": { + "description": "Git provider. This field is case-insensitive. The available Git providers are `gitHub`,\n`bitbucketCloud`, `gitLab`, `azureDevOpsServices` (Azure DevOps Services, including\nMicrosoft Entra ID authentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket\nData Center), `gitLabEnterpriseEdition` (GitLab Self-Managed), and `awsCodeCommit`.", + "launch_stage": "GA" + }, + "git_username": { + "description": "The username provided with your Git provider account and associated with the\ncredential. For most Git providers it is only used to set the Git committer \u0026 author names for commits,\nhowever it may be required for authentication depending on your Git provider / token requirements.\nRequired for AWS CodeCommit.", + "launch_stage": "GA" + }, + "is_default_for_provider": { + "description": "if the credential is the default for the given provider", + "launch_stage": "PUBLIC_PREVIEW" + }, + "name": { + "description": "the name of the git credential, used for identification and ease of lookup", + "launch_stage": "PUBLIC_PREVIEW" + }, + "personal_access_token": { + "description": "The personal access token used to authenticate to the corresponding Git provider.\nFor certain providers, support may exist for other types of scoped access tokens.\n[Learn more](https://docs.databricks.com/repos/get-access-tokens-from-git-provider.html).", + "launch_stage": "GA" + }, + "principal_id": { + "description": "The ID of the service principal whose credentials will be modified. Only service principal managers can perform this action.", + "launch_stage": "GA" + } + } + }, + "workspace.UpdateCredentialsResponse": {}, + "workspace.UpdateRepoRequest": { + "fields": { + "branch": { + "description": "Branch that the local version of the repo is checked out to.", + "launch_stage": "GA" + }, + "dangerously_force_discard_all": { + "description": "WARNING: DESTRUCTIVE AND IRREVERSIBLE. If true, permanently deletes ALL uncommitted\nchanges in the Git folder — staged, unstaged, and untracked files — before updating.\nLost data CANNOT be recovered.\n\nNEVER use this on Git folders where users author or edit files. This flag is intended\nONLY for automated jobs that treat the Git folder as a read-only mirror of a remote\nbranch and need to force-sync it. If any user has uncommitted work in the Git folder,\nthat work will be permanently destroyed without warning.\n\nLocal commits that have been made but not yet pushed to the remote are preserved.", + "launch_stage": "PUBLIC_BETA" + }, + "git_credential_id": { + "description": "Git credential ID to use for this update operation. The Git credential must be\nconfigured for the current user.", + "launch_stage": "GA" + }, + "sparse_checkout": { + "description": "If specified, update the sparse checkout settings. The update will fail if sparse checkout is\nnot enabled for the repo.", + "ref": "workspace.SparseCheckoutUpdate", + "launch_stage": "GA" + }, + "tag": { + "description": "Tag that the local version of the repo is checked out to. Updating the repo to a tag puts\nthe repo in a detached HEAD state. Before committing new changes, you must update the repo to\na branch instead of the detached HEAD.", + "launch_stage": "GA" + } + } + }, + "workspace.UpdateRepoResponse": {}, + "workspace.WorkspaceObjectAccessControlRequest": { + "fields": { + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "permission_level": { + "ref": "workspace.WorkspaceObjectPermissionLevel", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "application ID of a service principal", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "workspace.WorkspaceObjectAccessControlResponse": { + "fields": { + "all_permissions": { + "description": "All permissions.", + "launch_stage": "GA" + }, + "display_name": { + "description": "Display name of the user or service principal.", + "launch_stage": "GA" + }, + "group_name": { + "description": "name of the group", + "launch_stage": "GA" + }, + "service_principal_name": { + "description": "Name of the service principal.", + "launch_stage": "GA" + }, + "user_name": { + "description": "name of the user", + "launch_stage": "GA" + } + } + }, + "workspace.WorkspaceObjectPermission": { + "fields": { + "inherited": { + "launch_stage": "GA" + }, + "inherited_from_object": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "workspace.WorkspaceObjectPermissionLevel", + "launch_stage": "GA" + } + } + }, + "workspace.WorkspaceObjectPermissionLevel": { + "description": "Permission level", + "enum": [ + "CAN_MANAGE", + "CAN_EDIT", + "CAN_RUN", + "CAN_READ" + ] + }, + "workspace.WorkspaceObjectPermissions": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + }, + "object_id": { + "launch_stage": "GA" + }, + "object_type": { + "launch_stage": "GA" + } + } + }, + "workspace.WorkspaceObjectPermissionsDescription": { + "fields": { + "description": { + "launch_stage": "GA" + }, + "permission_level": { + "ref": "workspace.WorkspaceObjectPermissionLevel", + "launch_stage": "GA" + } + } + }, + "workspace.WorkspaceObjectPermissionsRequest": { + "fields": { + "access_control_list": { + "launch_stage": "GA" + } + } + } + }, + "commands": { + "services": [ + { + "id": "iam.AccessControl", + "name": "AccessControl", + "description": "Rule based Access Control for Databricks Resources.", + "package": { + "name": "iam" + }, + "is_hidden_cli": true, + "docs_group": "iam", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "methods": [ + { + "name": "CheckPolicy", + "description": "Check access policy to a resource.", + "summary": "Check access policy to a resource.", + "path": "/api/2.0/access-control/check-policy-v2", + "can_use_json": true, + "must_use_json": true, + "is_crud_read": true, + "is_hidden_cli": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CheckPolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "actor", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "Actor", + "is_object": true + } + }, + { + "name": "permission", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "resource", + "description": "Ex: (servicePrincipal/use, accounts/\u003caccount-id\u003e/servicePrincipals/\u003csp-id\u003e)\nEx: (servicePrincipal.ruleSet/update, accounts/\u003caccount-id\u003e/servicePrincipals/\u003csp-id\u003e/ruleSets/default)", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "consistency_token", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "ConsistencyToken", + "is_object": true + } + }, + { + "name": "authz_identity", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "RequestAuthzIdentity", + "enum": [ + { + "content": "REQUEST_AUTHZ_IDENTITY_SERVICE_IDENTITY" + }, + { + "content": "REQUEST_AUTHZ_IDENTITY_USER_CONTEXT" + } + ] + } + } + ], + "required_in_url_fields": [ + { + "name": "actor", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "Actor", + "is_object": true + } + }, + { + "name": "permission", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "resource", + "description": "Ex: (servicePrincipal/use, accounts/\u003caccount-id\u003e/servicePrincipals/\u003csp-id\u003e)\nEx: (servicePrincipal.ruleSet/update, accounts/\u003caccount-id\u003e/servicePrincipals/\u003csp-id\u003e/ruleSets/default)", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "consistency_token", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "ConsistencyToken", + "is_object": true + } + }, + { + "name": "authz_identity", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "RequestAuthzIdentity", + "enum": [ + { + "content": "REQUEST_AUTHZ_IDENTITY_SERVICE_IDENTITY" + }, + { + "content": "REQUEST_AUTHZ_IDENTITY_USER_CONTEXT" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "CheckPolicyResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "consistency_token", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ConsistencyToken", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "consistency_token", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ConsistencyToken", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "actor", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "Actor", + "is_object": true + } + }, + { + "name": "authz_identity", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "RequestAuthzIdentity", + "enum": [ + { + "content": "REQUEST_AUTHZ_IDENTITY_SERVICE_IDENTITY" + }, + { + "content": "REQUEST_AUTHZ_IDENTITY_USER_CONTEXT" + } + ] + } + }, + { + "name": "consistency_token", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "ConsistencyToken", + "is_object": true + } + }, + { + "name": "permission", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "resource", + "description": "Ex: (servicePrincipal/use, accounts/\u003caccount-id\u003e/servicePrincipals/\u003csp-id\u003e)\nEx: (servicePrincipal.ruleSet/update, accounts/\u003caccount-id\u003e/servicePrincipals/\u003csp-id\u003e/ruleSets/default)", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "resource_info", + "is_query": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ResourceInfo", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "iam.AccountAccessControl", + "name": "AccountAccessControl", + "description": "These APIs manage access rules on resources in an account. Currently, only grant rules are\nsupported. A grant rule specifies a role assigned to a set of principals. A list of rules\nattached to a resource is called a rule set.", + "package": { + "name": "iam" + }, + "is_accounts": true, + "docs_group": "iam", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "methods": [ + { + "name": "GetAssignableRolesForResource", + "description": "Gets all the roles that can be granted on an account level resource. A role is grantable if the rule set on the\nresource can contain an access rule of the role.", + "summary": "Get assignable roles for a resource.", + "path": "/api/2.0/preview/accounts/{account_id}/access-control/assignable-roles", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetAssignableRolesForResourceRequest", + "is_object": true, + "required_fields": [ + { + "name": "resource", + "description": "The resource name for which assignable roles will be listed.\n\nExamples | Summary\n:--- | :---\n`resource=accounts/\u003cACCOUNT_ID\u003e` | A resource name for the account.\n`resource=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e` | A resource name for the group.\n`resource=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSP_ID\u003e` | A resource name for the service principal.\n`resource=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e` | A resource name for the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "resource", + "description": "The resource name for which assignable roles will be listed.\n\nExamples | Summary\n:--- | :---\n`resource=accounts/\u003cACCOUNT_ID\u003e` | A resource name for the account.\n`resource=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e` | A resource name for the group.\n`resource=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSP_ID\u003e` | A resource name for the service principal.\n`resource=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e` | A resource name for the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetAssignableRolesForResourceResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "resource", + "description": "The resource name for which assignable roles will be listed.\n\nExamples | Summary\n:--- | :---\n`resource=accounts/\u003cACCOUNT_ID\u003e` | A resource name for the account.\n`resource=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e` | A resource name for the group.\n`resource=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSP_ID\u003e` | A resource name for the service principal.\n`resource=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e` | A resource name for the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "resource", + "description": "The resource name for which assignable roles will be listed.\n\nExamples | Summary\n:--- | :---\n`resource=accounts/\u003cACCOUNT_ID\u003e` | A resource name for the account.\n`resource=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e` | A resource name for the group.\n`resource=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSP_ID\u003e` | A resource name for the service principal.\n`resource=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e` | A resource name for the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetRuleSet", + "description": "Get a rule set by its name. A rule set is always attached to a resource and contains a list of access rules on the\nsaid resource. Currently only a default rule set for each resource is supported.", + "summary": "Get a rule set.", + "path": "/api/2.0/preview/accounts/{account_id}/access-control/rule-sets", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetRuleSetRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The ruleset name associated with the request.\n\nExamples | Summary\n:--- | :---\n`name=accounts/\u003cACCOUNT_ID\u003e/ruleSets/default` | A name for a rule set on the account.\n`name=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e/ruleSets/default` | A name for a rule set on the group.\n`name=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSERVICE_PRINCIPAL_APPLICATION_ID\u003e/ruleSets/default` | A name for a rule set on the service principal.\n`name=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e/ruleSets/default` | A name for a rule set on the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Etag used for versioning. The response is at least as fresh as the eTag provided. Etag is used for optimistic\nconcurrency control as a way to help prevent simultaneous updates of a rule set from overwriting each other. It is\nstrongly suggested that systems make use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set\nupdates in order to avoid race conditions that is get an etag from a GET rule set request, and pass it with the\nPUT update request to identify the rule set version you are updating.\n\nExamples | Summary\n:--- | :---\n`etag=` | An empty etag can only be used in GET to indicate no freshness requirements.\n`etag=RENUAAABhSweA4NvVmmUYdiU717H3Tgy0UJdor3gE4a+mq/oj9NjAf8ZsQ==` | An etag encoded a specific version of the rule set to get or to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The ruleset name associated with the request.\n\nExamples | Summary\n:--- | :---\n`name=accounts/\u003cACCOUNT_ID\u003e/ruleSets/default` | A name for a rule set on the account.\n`name=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e/ruleSets/default` | A name for a rule set on the group.\n`name=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSERVICE_PRINCIPAL_APPLICATION_ID\u003e/ruleSets/default` | A name for a rule set on the service principal.\n`name=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e/ruleSets/default` | A name for a rule set on the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Etag used for versioning. The response is at least as fresh as the eTag provided. Etag is used for optimistic\nconcurrency control as a way to help prevent simultaneous updates of a rule set from overwriting each other. It is\nstrongly suggested that systems make use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set\nupdates in order to avoid race conditions that is get an etag from a GET rule set request, and pass it with the\nPUT update request to identify the rule set version you are updating.\n\nExamples | Summary\n:--- | :---\n`etag=` | An empty etag can only be used in GET to indicate no freshness requirements.\n`etag=RENUAAABhSweA4NvVmmUYdiU717H3Tgy0UJdor3gE4a+mq/oj9NjAf8ZsQ==` | An etag encoded a specific version of the rule set to get or to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RuleSetResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the rule set.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Identifies the version of the rule set returned.\nEtag used for versioning. The response is at least as fresh as the eTag provided.\nEtag is used for optimistic concurrency control as a way to help prevent simultaneous\nupdates of a rule set from overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set updates in\norder to avoid race conditions that is get an etag from a GET rule set request, and pass it\nwith the PUT update request to identify the rule set version you are updating.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the rule set.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Identifies the version of the rule set returned.\nEtag used for versioning. The response is at least as fresh as the eTag provided.\nEtag is used for optimistic concurrency control as a way to help prevent simultaneous\nupdates of a rule set from overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set updates in\norder to avoid race conditions that is get an etag from a GET rule set request, and pass it\nwith the PUT update request to identify the rule set version you are updating.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "Etag used for versioning. The response is at least as fresh as the eTag provided. Etag is used for optimistic\nconcurrency control as a way to help prevent simultaneous updates of a rule set from overwriting each other. It is\nstrongly suggested that systems make use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set\nupdates in order to avoid race conditions that is get an etag from a GET rule set request, and pass it with the\nPUT update request to identify the rule set version you are updating.\n\nExamples | Summary\n:--- | :---\n`etag=` | An empty etag can only be used in GET to indicate no freshness requirements.\n`etag=RENUAAABhSweA4NvVmmUYdiU717H3Tgy0UJdor3gE4a+mq/oj9NjAf8ZsQ==` | An etag encoded a specific version of the rule set to get or to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The ruleset name associated with the request.\n\nExamples | Summary\n:--- | :---\n`name=accounts/\u003cACCOUNT_ID\u003e/ruleSets/default` | A name for a rule set on the account.\n`name=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e/ruleSets/default` | A name for a rule set on the group.\n`name=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSERVICE_PRINCIPAL_APPLICATION_ID\u003e/ruleSets/default` | A name for a rule set on the service principal.\n`name=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e/ruleSets/default` | A name for a rule set on the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The ruleset name associated with the request.\n\nExamples | Summary\n:--- | :---\n`name=accounts/\u003cACCOUNT_ID\u003e/ruleSets/default` | A name for a rule set on the account.\n`name=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e/ruleSets/default` | A name for a rule set on the group.\n`name=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSERVICE_PRINCIPAL_APPLICATION_ID\u003e/ruleSets/default` | A name for a rule set on the service principal.\n`name=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e/ruleSets/default` | A name for a rule set on the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Etag used for versioning. The response is at least as fresh as the eTag provided. Etag is used for optimistic\nconcurrency control as a way to help prevent simultaneous updates of a rule set from overwriting each other. It is\nstrongly suggested that systems make use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set\nupdates in order to avoid race conditions that is get an etag from a GET rule set request, and pass it with the\nPUT update request to identify the rule set version you are updating.\n\nExamples | Summary\n:--- | :---\n`etag=` | An empty etag can only be used in GET to indicate no freshness requirements.\n`etag=RENUAAABhSweA4NvVmmUYdiU717H3Tgy0UJdor3gE4a+mq/oj9NjAf8ZsQ==` | An etag encoded a specific version of the rule set to get or to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateRuleSet", + "description": "Replace the rules of a rule set. First, use get to read the current version of the rule set before modifying it.\nThis pattern helps prevent conflicts between concurrent updates.", + "summary": "Update a rule set.", + "path": "/api/2.0/preview/accounts/{account_id}/access-control/rule-sets", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateRuleSetRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the rule set.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_set", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RuleSetUpdateRequest", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the rule set.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_set", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RuleSetUpdateRequest", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "RuleSetResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the rule set.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Identifies the version of the rule set returned.\nEtag used for versioning. The response is at least as fresh as the eTag provided.\nEtag is used for optimistic concurrency control as a way to help prevent simultaneous\nupdates of a rule set from overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set updates in\norder to avoid race conditions that is get an etag from a GET rule set request, and pass it\nwith the PUT update request to identify the rule set version you are updating.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the rule set.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Identifies the version of the rule set returned.\nEtag used for versioning. The response is at least as fresh as the eTag provided.\nEtag is used for optimistic concurrency control as a way to help prevent simultaneous\nupdates of a rule set from overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set updates in\norder to avoid race conditions that is get an etag from a GET rule set request, and pass it\nwith the PUT update request to identify the rule set version you are updating.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the rule set.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_set", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RuleSetUpdateRequest", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "iam.AccountAccessControlProxy", + "name": "AccountAccessControlProxy", + "description": "These APIs manage access rules on resources in an account. Currently, only grant rules are\nsupported. A grant rule specifies a role assigned to a set of principals. A list of rules\nattached to a resource is called a rule set. A workspace must belong to an account for these\nAPIs to work", + "package": { + "name": "iam" + }, + "docs_group": "iam", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "methods": [ + { + "name": "GetAssignableRolesForResource", + "description": "Gets all the roles that can be granted on an account level resource. A role is grantable if the rule set on the\nresource can contain an access rule of the role.", + "summary": "Get assignable roles for a resource.", + "path": "/api/2.0/preview/accounts/access-control/assignable-roles", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetAssignableRolesForResourceRequest", + "is_object": true, + "required_fields": [ + { + "name": "resource", + "description": "The resource name for which assignable roles will be listed.\n\nExamples | Summary\n:--- | :---\n`resource=accounts/\u003cACCOUNT_ID\u003e` | A resource name for the account.\n`resource=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e` | A resource name for the group.\n`resource=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSP_ID\u003e` | A resource name for the service principal.\n`resource=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e` | A resource name for the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "resource", + "description": "The resource name for which assignable roles will be listed.\n\nExamples | Summary\n:--- | :---\n`resource=accounts/\u003cACCOUNT_ID\u003e` | A resource name for the account.\n`resource=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e` | A resource name for the group.\n`resource=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSP_ID\u003e` | A resource name for the service principal.\n`resource=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e` | A resource name for the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetAssignableRolesForResourceResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "resource", + "description": "The resource name for which assignable roles will be listed.\n\nExamples | Summary\n:--- | :---\n`resource=accounts/\u003cACCOUNT_ID\u003e` | A resource name for the account.\n`resource=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e` | A resource name for the group.\n`resource=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSP_ID\u003e` | A resource name for the service principal.\n`resource=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e` | A resource name for the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "resource", + "description": "The resource name for which assignable roles will be listed.\n\nExamples | Summary\n:--- | :---\n`resource=accounts/\u003cACCOUNT_ID\u003e` | A resource name for the account.\n`resource=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e` | A resource name for the group.\n`resource=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSP_ID\u003e` | A resource name for the service principal.\n`resource=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e` | A resource name for the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetRuleSet", + "description": "Get a rule set by its name. A rule set is always attached to a resource and contains a list of access rules on the\nsaid resource. Currently only a default rule set for each resource is supported.", + "summary": "Get a rule set.", + "path": "/api/2.0/preview/accounts/access-control/rule-sets", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetRuleSetRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The ruleset name associated with the request.\n\nExamples | Summary\n:--- | :---\n`name=accounts/\u003cACCOUNT_ID\u003e/ruleSets/default` | A name for a rule set on the account.\n`name=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e/ruleSets/default` | A name for a rule set on the group.\n`name=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSERVICE_PRINCIPAL_APPLICATION_ID\u003e/ruleSets/default` | A name for a rule set on the service principal.\n`name=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e/ruleSets/default` | A name for a rule set on the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Etag used for versioning. The response is at least as fresh as the eTag provided. Etag is used for optimistic\nconcurrency control as a way to help prevent simultaneous updates of a rule set from overwriting each other. It is\nstrongly suggested that systems make use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set\nupdates in order to avoid race conditions that is get an etag from a GET rule set request, and pass it with the\nPUT update request to identify the rule set version you are updating.\n\nExamples | Summary\n:--- | :---\n`etag=` | An empty etag can only be used in GET to indicate no freshness requirements.\n`etag=RENUAAABhSweA4NvVmmUYdiU717H3Tgy0UJdor3gE4a+mq/oj9NjAf8ZsQ==` | An etag encoded a specific version of the rule set to get or to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The ruleset name associated with the request.\n\nExamples | Summary\n:--- | :---\n`name=accounts/\u003cACCOUNT_ID\u003e/ruleSets/default` | A name for a rule set on the account.\n`name=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e/ruleSets/default` | A name for a rule set on the group.\n`name=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSERVICE_PRINCIPAL_APPLICATION_ID\u003e/ruleSets/default` | A name for a rule set on the service principal.\n`name=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e/ruleSets/default` | A name for a rule set on the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Etag used for versioning. The response is at least as fresh as the eTag provided. Etag is used for optimistic\nconcurrency control as a way to help prevent simultaneous updates of a rule set from overwriting each other. It is\nstrongly suggested that systems make use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set\nupdates in order to avoid race conditions that is get an etag from a GET rule set request, and pass it with the\nPUT update request to identify the rule set version you are updating.\n\nExamples | Summary\n:--- | :---\n`etag=` | An empty etag can only be used in GET to indicate no freshness requirements.\n`etag=RENUAAABhSweA4NvVmmUYdiU717H3Tgy0UJdor3gE4a+mq/oj9NjAf8ZsQ==` | An etag encoded a specific version of the rule set to get or to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RuleSetResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the rule set.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Identifies the version of the rule set returned.\nEtag used for versioning. The response is at least as fresh as the eTag provided.\nEtag is used for optimistic concurrency control as a way to help prevent simultaneous\nupdates of a rule set from overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set updates in\norder to avoid race conditions that is get an etag from a GET rule set request, and pass it\nwith the PUT update request to identify the rule set version you are updating.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the rule set.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Identifies the version of the rule set returned.\nEtag used for versioning. The response is at least as fresh as the eTag provided.\nEtag is used for optimistic concurrency control as a way to help prevent simultaneous\nupdates of a rule set from overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set updates in\norder to avoid race conditions that is get an etag from a GET rule set request, and pass it\nwith the PUT update request to identify the rule set version you are updating.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "Etag used for versioning. The response is at least as fresh as the eTag provided. Etag is used for optimistic\nconcurrency control as a way to help prevent simultaneous updates of a rule set from overwriting each other. It is\nstrongly suggested that systems make use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set\nupdates in order to avoid race conditions that is get an etag from a GET rule set request, and pass it with the\nPUT update request to identify the rule set version you are updating.\n\nExamples | Summary\n:--- | :---\n`etag=` | An empty etag can only be used in GET to indicate no freshness requirements.\n`etag=RENUAAABhSweA4NvVmmUYdiU717H3Tgy0UJdor3gE4a+mq/oj9NjAf8ZsQ==` | An etag encoded a specific version of the rule set to get or to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The ruleset name associated with the request.\n\nExamples | Summary\n:--- | :---\n`name=accounts/\u003cACCOUNT_ID\u003e/ruleSets/default` | A name for a rule set on the account.\n`name=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e/ruleSets/default` | A name for a rule set on the group.\n`name=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSERVICE_PRINCIPAL_APPLICATION_ID\u003e/ruleSets/default` | A name for a rule set on the service principal.\n`name=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e/ruleSets/default` | A name for a rule set on the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The ruleset name associated with the request.\n\nExamples | Summary\n:--- | :---\n`name=accounts/\u003cACCOUNT_ID\u003e/ruleSets/default` | A name for a rule set on the account.\n`name=accounts/\u003cACCOUNT_ID\u003e/groups/\u003cGROUP_ID\u003e/ruleSets/default` | A name for a rule set on the group.\n`name=accounts/\u003cACCOUNT_ID\u003e/servicePrincipals/\u003cSERVICE_PRINCIPAL_APPLICATION_ID\u003e/ruleSets/default` | A name for a rule set on the service principal.\n`name=accounts/\u003cACCOUNT_ID\u003e/tagPolicies/\u003cTAG_POLICY_ID\u003e/ruleSets/default` | A name for a rule set on the tag policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Etag used for versioning. The response is at least as fresh as the eTag provided. Etag is used for optimistic\nconcurrency control as a way to help prevent simultaneous updates of a rule set from overwriting each other. It is\nstrongly suggested that systems make use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set\nupdates in order to avoid race conditions that is get an etag from a GET rule set request, and pass it with the\nPUT update request to identify the rule set version you are updating.\n\nExamples | Summary\n:--- | :---\n`etag=` | An empty etag can only be used in GET to indicate no freshness requirements.\n`etag=RENUAAABhSweA4NvVmmUYdiU717H3Tgy0UJdor3gE4a+mq/oj9NjAf8ZsQ==` | An etag encoded a specific version of the rule set to get or to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateRuleSet", + "description": "Replace the rules of a rule set. First, use get to read the current version of the rule set before modifying it.\nThis pattern helps prevent conflicts between concurrent updates.", + "summary": "Update a rule set.", + "path": "/api/2.0/preview/accounts/access-control/rule-sets", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateRuleSetRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the rule set.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_set", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RuleSetUpdateRequest", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the rule set.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_set", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RuleSetUpdateRequest", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "RuleSetResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the rule set.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Identifies the version of the rule set returned.\nEtag used for versioning. The response is at least as fresh as the eTag provided.\nEtag is used for optimistic concurrency control as a way to help prevent simultaneous\nupdates of a rule set from overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set updates in\norder to avoid race conditions that is get an etag from a GET rule set request, and pass it\nwith the PUT update request to identify the rule set version you are updating.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the rule set.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Identifies the version of the rule set returned.\nEtag used for versioning. The response is at least as fresh as the eTag provided.\nEtag is used for optimistic concurrency control as a way to help prevent simultaneous\nupdates of a rule set from overwriting each other. It is strongly suggested that systems\nmake use of the etag in the read -\u003e modify -\u003e write pattern to perform rule set updates in\norder to avoid race conditions that is get an etag from a GET rule set request, and pass it\nwith the PUT update request to identify the rule set version you are updating.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the rule set.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_set", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RuleSetUpdateRequest", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "agentbricks.AgentBricks", + "name": "AgentBricks", + "description": "The Custom LLMs service manages state and powers the UI for the Custom LLM product.", + "package": { + "name": "agentbricks" + }, + "is_hidden_cli": true, + "docs_group": "agentbricks", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "methods": [ + { + "name": "CancelOptimize", + "description": "Cancel a Custom LLM Optimization Run.", + "summary": "Cancel a Custom LLM Optimization Run.", + "path": "/api/2.0/custom-llms/{id}/optimize/cancel", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CancelCustomLlmOptimizationRunRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateCustomLlm", + "description": "Create a Custom LLM.", + "summary": "Create a Custom LLM.", + "path": "/api/2.0/custom-llms", + "can_use_json": true, + "is_crud_create": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateCustomLlmRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the custom LLM. Only alphanumeric characters and dashes allowed.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instructions", + "description": "Instructions for the custom LLM to follow", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the custom LLM. Only alphanumeric characters and dashes allowed.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instructions", + "description": "Instructions for the custom LLM to follow", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CustomLlm", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the custom LLM", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instructions", + "description": "Instructions for the custom LLM to follow", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the custom LLM", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instructions", + "description": "Instructions for the custom LLM to follow", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "agent_artifact_path", + "description": "This will soon be deprecated!!\nOptional: UC path for agent artifacts. If you are using a dataset that you only have read permissions,\nplease provide a destination path where you have write permissions. Please provide this in catalog.schema format.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "datasets", + "description": "Datasets used for training and evaluating the model, not for inference.\nCurrently, only 1 dataset is accepted.", + "is_request_body_field": true, + "entity": { + "pascal_name": "DatasetList", + "array_value": { + "pascal_name": "Dataset", + "is_object": true + } + } + }, + { + "name": "guidelines", + "description": "Guidelines for the custom LLM to adhere to", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "instructions", + "description": "Instructions for the custom LLM to follow", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the custom LLM. Only alphanumeric characters and dashes allowed.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the custom LLM. Only alphanumeric characters and dashes allowed.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instructions", + "description": "Instructions for the custom LLM to follow", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteCustomLlm", + "description": "Delete a Custom LLM.", + "summary": "Delete a Custom LLM.", + "path": "/api/2.0/custom-llms/{id}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteCustomLlmRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "The id of the custom llm", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "The id of the custom llm", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "The id of the custom llm", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "The id of the custom llm", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetCustomLlm", + "description": "Get a Custom LLM.", + "summary": "Get a Custom LLM.", + "path": "/api/2.0/custom-llms/{id}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetCustomLlmRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "The id of the custom llm", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "The id of the custom llm", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CustomLlm", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the custom LLM", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instructions", + "description": "Instructions for the custom LLM to follow", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the custom LLM", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instructions", + "description": "Instructions for the custom LLM to follow", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "id", + "description": "The id of the custom llm", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "The id of the custom llm", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "StartOptimize", + "description": "Start a Custom LLM Optimization Run.", + "summary": "Start a Custom LLM Optimization Run.", + "path": "/api/2.0/custom-llms/{id}/optimize", + "is_crud_create": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "StartCustomLlmOptimizationRunRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "The Id of the tile.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "The Id of the tile.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CustomLlm", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the custom LLM", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instructions", + "description": "Instructions for the custom LLM to follow", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the custom LLM", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instructions", + "description": "Instructions for the custom LLM to follow", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "id", + "description": "The Id of the tile.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "The Id of the tile.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateCustomLlm", + "description": "Update a Custom LLM.", + "summary": "Update a Custom LLM.", + "path": "/api/2.0/custom-llms/{id}", + "can_use_json": true, + "must_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateCustomLlmRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "description": "The id of the custom llm", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_llm", + "description": "The CustomLlm containing the fields which should be updated.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomLlm", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of the CustomLlm fields to update. These should correspond to the values (or lack thereof) present in `custom_llm`.\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "The id of the custom llm", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "custom_llm", + "description": "The CustomLlm containing the fields which should be updated.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomLlm", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of the CustomLlm fields to update. These should correspond to the values (or lack thereof) present in `custom_llm`.\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CustomLlm", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the custom LLM", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instructions", + "description": "Instructions for the custom LLM to follow", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the custom LLM", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instructions", + "description": "Instructions for the custom LLM to follow", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "custom_llm", + "description": "The CustomLlm containing the fields which should be updated.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomLlm", + "is_object": true + } + }, + { + "name": "id", + "description": "The id of the custom llm", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of the CustomLlm fields to update. These should correspond to the values (or lack thereof) present in `custom_llm`.\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "The id of the custom llm", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "agentkit.AgentKit", + "name": "AgentKit", + "description": "APIs for managing agent memory and durable session state. This interface is under active development and may change.", + "package": { + "name": "agentkit" + }, + "docs_group": "agentbricks", + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "list": { + "request": { + "pascal_name": "ListManagedMemoryEntriesRequest" + } + }, + "methods": [ + { + "name": "AppendSessionItems", + "description": "Appends items to a session.", + "summary": "Append items to a session.", + "path": "/api/2.0/agents/{parent=session-stores/*/sessions/*}/items:append", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "AppendSessionItemsRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "items", + "description": "Items to append atomically in request order. Concurrent append requests are serialized into one\ncommitted order without exposing a numeric sequence in the public contract.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SessionItemList", + "array_value": { + "pascal_name": "SessionItem", + "is_object": true + } + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "items", + "description": "Items to append atomically in request order. Concurrent append requests are serialized into one\ncommitted order without exposing a numeric sequence in the public contract.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SessionItemList", + "array_value": { + "pascal_name": "SessionItem", + "is_object": true + } + } + } + ] + }, + "response": { + "pascal_name": "AppendSessionItemsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "items", + "description": "Items to append atomically in request order. Concurrent append requests are serialized into one\ncommitted order without exposing a numeric sequence in the public contract.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SessionItemList", + "array_value": { + "pascal_name": "SessionItem", + "is_object": true + } + } + }, + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ClearSessionItems", + "description": "Clears all items from a session.", + "summary": "Clear items from a session.", + "path": "/api/2.0/agents/{parent=session-stores/*/sessions/*}/items:clear", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ClearSessionItemsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ClearSessionItemsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateMemory", + "description": "Creates a memory entry using exclusive-create semantics. Callers may choose the entry\nID; the service generates one when it is omitted. Returns `ALREADY_EXISTS` when an entry with\nthe same actor, session, and path already exists. Omitted `session_id` is its own uniqueness\nkey: two omitted-session entries with the same actor and path conflict, but an omitted-session\nentry does not conflict with a session-scoped entry at the same actor and path.", + "summary": "Create a memory entry.", + "path": "/api/2.0/agents/{parent=memory-stores/*}/entries", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateManagedMemoryEntryRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "Memory store that will contain the entry, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "managed_memory_entry", + "description": "The memory entry to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryEntry", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Memory store that will contain the entry, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "managed_memory_entry", + "description": "The memory entry to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryEntry", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "managed_memory_entry", + "description": "The memory entry to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryEntry", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "ManagedMemoryEntry", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "managed_memory_entry", + "description": "The memory entry to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryEntry", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "managed_memory_entry_id", + "description": "Optional caller-selected memory entry ID. The service generates an ID when omitted.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Memory store that will contain the entry, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "Optional free-form memory content.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Time when the entry was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "description", + "description": "Human-readable description of the memory entry.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name in the form\n`memory-stores/{managed_memory_store_id}/entries/{managed_memory_entry_id}`.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "session_id", + "description": "Optional identifier for the session associated with this memory entry. When omitted, the\nentry applies across the actor's sessions.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "Which writer created this entry. Caller sets this on Create; immutable after creation.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryEntrySourceType", + "enum": [ + { + "content": "MANAGED_MEMORY_ENTRY_SOURCE_TYPE_AGENT" + }, + { + "content": "MANAGED_MEMORY_ENTRY_SOURCE_TYPE_DREAMER" + } + ] + } + }, + { + "name": "update_time", + "description": "Time when the entry was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Memory store that will contain the entry, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateMemoryStore", + "description": "Creates a memory store in the caller's workspace.", + "summary": "Create a memory store.", + "path": "/api/2.0/agents/memory-stores", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateManagedMemoryStoreRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "managed_memory_store", + "description": "The memory store to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryStore", + "is_object": true + } + }, + { + "name": "managed_memory_store_id", + "description": "Caller-provided, workspace-unique memory store ID. It must be 3-56 characters, begin\nwith a lowercase letter, contain only lowercase letters, digits, and hyphens, and end with a\nletter or digit.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "managed_memory_store_id", + "description": "Caller-provided, workspace-unique memory store ID. It must be 3-56 characters, begin\nwith a lowercase letter, contain only lowercase letters, digits, and hyphens, and end with a\nletter or digit.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "managed_memory_store", + "description": "The memory store to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryStore", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "managed_memory_store", + "description": "The memory store to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryStore", + "is_object": true + } + }, + "response": { + "pascal_name": "ManagedMemoryStore", + "is_object": true + }, + "all_fields": [ + { + "name": "managed_memory_store", + "description": "The memory store to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryStore", + "is_object": true + } + }, + { + "name": "managed_memory_store_id", + "description": "Caller-provided, workspace-unique memory store ID. It must be 3-56 characters, begin\nwith a lowercase letter, contain only lowercase letters, digits, and hyphens, and end with a\nletter or digit.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Time when the store was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "creator_user_id", + "description": "Workspace-local user ID of the authenticated principal that created the store. This is\nimmutable server-set attribution and does not grant access; authorization is evaluated from\nthe authenticated request context.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Human-readable description of the memory store.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Deprecated compatibility alias for the caller-provided memory store ID. Canonical\nclients provide the ID through `CreateMemoryStoreRequest.managed_memory_store_id` and use\n`name` as the resource identifier.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name in the form `memory-stores/{managed_memory_store_id}`.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner_user_id", + "description": "Deprecated alias for `creator_user_id`. This identifies the original creator, not a\ntransferable owner. Use `creator_user_id` instead.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_backend", + "description": "Service-managed storage backing this memory store.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "StorageBackend", + "is_object": true + } + }, + { + "name": "update_time", + "description": "Time when the store was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "workspace_id", + "description": "Workspace that owns the memory store.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "managed_memory_store_id", + "description": "Caller-provided, workspace-unique memory store ID. It must be 3-56 characters, begin\nwith a lowercase letter, contain only lowercase letters, digits, and hyphens, and end with a\nletter or digit.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateSession", + "description": "Creates a session within a session store.", + "summary": "Create a session.", + "path": "/api/2.0/agents/{parent=session-stores/*}/sessions", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateSessionRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session store, in the form\n`session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "session", + "description": "The session to create. `actor_id` is required. A session with `parent_session_id` is a child and\nmust use its parent's `actor_id`. Independent forks are created only through `ForkSession`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Session", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session store, in the form\n`session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "session", + "description": "The session to create. `actor_id` is required. A session with `parent_session_id` is a child and\nmust use its parent's `actor_id`. Independent forks are created only through `ForkSession`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Session", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "session", + "description": "The session to create. `actor_id` is required. A session with `parent_session_id` is a child and\nmust use its parent's `actor_id`. Independent forks are created only through `ForkSession`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Session", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Session", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session store, in the form\n`session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "session", + "description": "The session to create. `actor_id` is required. A session with `parent_session_id` is a child and\nmust use its parent's `actor_id`. Independent forks are created only through `ForkSession`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Session", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "session_id", + "description": "Optional caller-selected session ID. The service generates a UUID when this field is omitted.\nThe ID must be unique; a collision returns `ALREADY_EXISTS`.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Time when the session was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "last_activity_time", + "description": "Time when the session's item history was last mutated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "metadata", + "description": "Mutable caller-defined string labels.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}/sessions/{session_id}`.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent_session_id", + "description": "Immediate parent session ID. Set only at creation for child sessions, immutable thereafter, and\nrestricted to the same store.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "root_session_id", + "description": "Top-level session ID in the spawn tree. This equals `session_id` for a root or fork and is\ninherited transitively by child sessions.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "session_id", + "description": "Unique session ID. The service generates a UUID unless the caller supplies\n`CreateSessionRequest.session_id`.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Time when session resource fields last changed.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Resource name of the containing session store, in the form\n`session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateSessionStore", + "description": "Creates a session store.", + "summary": "Create a session store.", + "path": "/api/2.0/agents/session-stores", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateSessionStoreRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "session_store", + "description": "The session store to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SessionStore", + "is_object": true + } + }, + { + "name": "session_store_id", + "description": "Caller-provided, workspace-unique session store ID. It must be 3-55 characters, begin with a\nlowercase letter, and contain only lowercase letters, digits, and hyphens.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "session_store_id", + "description": "Caller-provided, workspace-unique session store ID. It must be 3-55 characters, begin with a\nlowercase letter, and contain only lowercase letters, digits, and hyphens.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "session_store", + "description": "The session store to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SessionStore", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "session_store", + "description": "The session store to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SessionStore", + "is_object": true + } + }, + "response": { + "pascal_name": "SessionStore", + "is_object": true + }, + "all_fields": [ + { + "name": "session_store", + "description": "The session store to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SessionStore", + "is_object": true + } + }, + { + "name": "session_store_id", + "description": "Caller-provided, workspace-unique session store ID. It must be 3-55 characters, begin with a\nlowercase letter, and contain only lowercase letters, digits, and hyphens.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Time when the store was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "creator_user_id", + "description": "Workspace-local user ID of the authenticated principal that created the store. This is\nimmutable server-set attribution and does not grant access; authorization is evaluated from\nthe authenticated request context.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Human-readable description of the session store.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metadata", + "description": "Mutable caller-defined string labels.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}`.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Time when the store was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "session_store_id", + "description": "Caller-provided, workspace-unique session store ID. It must be 3-55 characters, begin with a\nlowercase letter, and contain only lowercase letters, digits, and hyphens.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteMemory", + "description": "Deletes a memory entry by resource name. Returns `NOT_FOUND` when the entry does not\nexist in the caller's workspace.", + "summary": "Delete a memory entry by resource name.", + "path": "/api/2.0/agents/{name=memory-stores/*/entries/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteManagedMemoryEntryRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name in the form\n`memory-stores/{managed_memory_store_id}/entries/{managed_memory_entry_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name in the form\n`memory-stores/{managed_memory_store_id}/entries/{managed_memory_entry_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name in the form\n`memory-stores/{managed_memory_store_id}/entries/{managed_memory_entry_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name in the form\n`memory-stores/{managed_memory_store_id}/entries/{managed_memory_entry_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteMemoryStore", + "description": "Deletes a memory store by resource name. Returns `NOT_FOUND` when the store does not\nexist in the caller's workspace.", + "summary": "Delete a memory store by resource name.", + "path": "/api/2.0/agents/{name=memory-stores/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteManagedMemoryStoreRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name in the form `memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name in the form `memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name in the form `memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name in the form `memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteSession", + "description": "Deletes a session, its items, and any descendant sessions recursively. Independently retained\nmemory is not deleted.", + "summary": "Delete a session.", + "path": "/api/2.0/agents/{name=session-stores/*/sessions/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteSessionRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteSessionStore", + "description": "Deletes a session store, its sessions and items, and its service-managed storage. Memory entries\nretained by a separate Memory Store are not deleted.", + "summary": "Delete a session store.", + "path": "/api/2.0/agents/{name=session-stores/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteSessionStoreRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ExtractMemories", + "description": "Synchronously extracts memories from a single session into the given memory store, returning\nthe entries that were written.", + "summary": "Extract memories from a session.", + "path": "/api/2.0/agents/{session_store=session-stores/*}/sessions/{session_id}/extractions", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ExtractMemoriesRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "session_store", + "description": "Session store containing the session, in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "session_id", + "description": "Identifier of the session whose transcript is distilled into memories.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "memory_store", + "description": "Memory store the extracted entries are written to, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "session_store", + "description": "Session store containing the session, in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "session_id", + "description": "Identifier of the session whose transcript is distilled into memories.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "memory_store", + "description": "Memory store the extracted entries are written to, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExtractMemoriesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "dry_run", + "description": "When true, extract and return the entries without writing them to the memory store. Defaults\nto false, which persists the extracted entries and returns them.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "instructions", + "description": "Instructions steering what is extracted from the session.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "memory_store", + "description": "Memory store the extracted entries are written to, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "session_id", + "description": "Identifier of the session whose transcript is distilled into memories.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "session_store", + "description": "Session store containing the session, in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "session_store", + "description": "Session store containing the session, in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "session_id", + "description": "Identifier of the session whose transcript is distilled into memories.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "memory_store", + "description": "Memory store the extracted entries are written to, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ForkSession", + "description": "Forks a session into an independent top-level copy.", + "summary": "Fork a session.", + "path": "/api/2.0/agents/{parent=session-stores/*}/sessions:fork", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ForkSessionRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session store, in the form\n`session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_session_id", + "description": "ID of the session to copy.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the forked session.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session store, in the form\n`session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "source_session_id", + "description": "ID of the session to copy.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the forked session.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ForkSessionResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the forked session.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metadata", + "description": "Optional metadata for the fork.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "parent", + "description": "Resource name of the containing session store, in the form\n`session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "session_id", + "description": "Optional unique ID for the forked session. A collision returns `ALREADY_EXISTS`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_session_id", + "description": "ID of the session to copy.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "up_to_item_id", + "description": "Optional last item ID to copy through, inclusively. When omitted, the fork atomically copies\nall items committed before the fork operation begins.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Resource name of the containing session store, in the form\n`session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_session_id", + "description": "ID of the session to copy.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the forked session.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetMemory", + "description": "Retrieves a memory entry by resource name. `view` controls whether the response\nincludes memory content. Returns `NOT_FOUND` when the entry does not exist in the caller's\nworkspace.", + "summary": "Get a memory entry by resource name.", + "path": "/api/2.0/agents/{name=memory-stores/*/entries/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetManagedMemoryEntryRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name in the form\n`memory-stores/{managed_memory_store_id}/entries/{managed_memory_entry_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name in the form\n`memory-stores/{managed_memory_store_id}/entries/{managed_memory_entry_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ManagedMemoryEntry", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name in the form\n`memory-stores/{managed_memory_store_id}/entries/{managed_memory_entry_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "view", + "description": "Controls whether the response includes memory content. Defaults to `FULL`.", + "is_query": true, + "entity": { + "pascal_name": "ManagedMemoryEntryView", + "enum": [ + { + "content": "MANAGED_MEMORY_ENTRY_VIEW_BASIC" + }, + { + "content": "MANAGED_MEMORY_ENTRY_VIEW_FULL" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name in the form\n`memory-stores/{managed_memory_store_id}/entries/{managed_memory_entry_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetMemoryStore", + "description": "Retrieves a memory store by resource name. Returns `NOT_FOUND` when the store does not\nexist in the caller's workspace.", + "summary": "Get a memory store by resource name.", + "path": "/api/2.0/agents/{name=memory-stores/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetManagedMemoryStoreRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name in the form `memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name in the form `memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ManagedMemoryStore", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name in the form `memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name in the form `memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSession", + "description": "Gets a session by resource name.", + "summary": "Get a session.", + "path": "/api/2.0/agents/{name=session-stores/*/sessions/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetSessionRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Session", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSessionStore", + "description": "Gets a session store by resource name.", + "summary": "Get a session store.", + "path": "/api/2.0/agents/{name=session-stores/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetSessionStoreRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SessionStore", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListMemories", + "description": "Lists memory entries for one actor. An exact `path` filters entries across sessions,\nignoring session metadata. Otherwise, `session_id` and `path_prefix` restrict the actor\npartition. `view` controls whether each returned entry includes memory content.", + "summary": "List memory entries.", + "path": "/api/2.0/agents/{parent=memory-stores/*}/entries", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListManagedMemoryEntriesRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "Memory store whose entries are listed, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose entries are listed.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Memory store whose entries are listed, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose entries are listed.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListManagedMemoryEntriesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose entries are listed.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Maximum number of entries to return. The service may return fewer entries than requested.\nDefaults to 10; must be between 1 and 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token from a previous ListManagedMemoryEntries response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Memory store whose entries are listed, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "path_prefix", + "description": "Optional path prefix used to restrict entries within the actor partition.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "session_id", + "description": "Optional session identifier. When set, only entries with this exact `session_id` are\nreturned. Omitted-session (cross-session) entries are not included. Ignored when path is set.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "view", + "description": "Controls whether each returned entry includes memory content. Defaults to `FULL`.", + "is_query": true, + "entity": { + "pascal_name": "ManagedMemoryEntryView", + "enum": [ + { + "content": "MANAGED_MEMORY_ENTRY_VIEW_BASIC" + }, + { + "content": "MANAGED_MEMORY_ENTRY_VIEW_FULL" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Memory store whose entries are listed, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose entries are listed.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token from a previous ListManagedMemoryEntries response.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListMemoryStores", + "description": "Lists memory stores in the caller's workspace.", + "summary": "List memory stores.", + "path": "/api/2.0/agents/memory-stores", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListManagedMemoryStoresRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListManagedMemoryStoresResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Maximum number of stores to return. The service may return fewer stores than requested.\nDefaults to 10; must be between 1 and 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token from a previous ListManagedMemoryStores response.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token from a previous ListManagedMemoryStores response.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListSessionItems", + "description": "Lists items in a session.", + "summary": "List session items.", + "path": "/api/2.0/agents/{parent=session-stores/*/sessions/*}/items", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListSessionItemsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListSessionItemsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "order_by", + "description": "Sort order. Supported values are `create_time asc` and `create_time desc`. The default is\n`create_time desc`, which returns the most recently appended items first. Equal timestamps are\nresolved by committed append order in the requested direction.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Maximum number of items to return. Defaults to 10; must be between 1 and 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Token returned by a previous list request.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Token returned by a previous list request.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListSessionStores", + "description": "Lists session stores.", + "summary": "List session stores.", + "path": "/api/2.0/agents/session-stores", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListSessionStoresRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListSessionStoresResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Maximum number of session stores to return. Defaults to 10; must be between 1 and 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Token returned by a previous list request.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Token returned by a previous list request.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListSessions", + "description": "Lists sessions within a session store.", + "summary": "List sessions.", + "path": "/api/2.0/agents/{parent=session-stores/*}/sessions", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListSessionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session store, in the form\n`session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session store, in the form\n`session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListSessionsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter", + "description": "Filter expression. Supported fields include `actor_id` and `metadata`; for example,\n`actor_id = \"support-customer-123\"`.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "order_by", + "description": "Sort order. Defaults to `last_activity_time desc`. Page-token continuation is exactly-once when\nordering by `create_time` (immutable); ordering by `last_activity_time` is best-effort, because\nthat value changes as a session gains activity, so a session updated between page requests may\nbe repeated or skipped. To enumerate every session exactly once, order by `create_time`.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Maximum number of sessions to return. Defaults to 10; must be between 1 and 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Token returned by a previous list request.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Resource name of the containing session store, in the form\n`session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Resource name of the containing session store, in the form\n`session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Token returned by a previous list request.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "PopSessionItem", + "description": "Pops the newest item from a session.", + "summary": "Pop an item from a session.", + "path": "/api/2.0/agents/{parent=session-stores/*/sessions/*}/items:pop", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "PopSessionItemRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PopSessionItemResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Resource name of the containing session, in the form\n`session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SearchMemories", + "description": "Searches memory entries by text query for one actor. Returns matching entries and\nscores ranked by relevance; `view` controls whether each returned entry includes content.", + "summary": "Search memory entries.", + "path": "/api/2.0/agents/{parent=memory-stores/*}/entries:search", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "SearchManagedMemoryEntriesRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "Memory store whose entries are searched, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose entries are searched.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query", + "description": "Free-form search query.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Memory store whose entries are searched, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose entries are searched.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query", + "description": "Free-form search query.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SearchManagedMemoryEntriesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose entries are searched.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "limit", + "description": "Deprecated alias for `page_size`. When both fields are set, their values must match.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_size", + "description": "Maximum number of relevance-ranked entries to return. Defaults to 10 and must be between 1 and\n100.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Reserved for pagination compatibility. The server currently ignores this field because Search\nreturns a ranked top-N result set.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Memory store whose entries are searched, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "path_prefix", + "description": "Optional absolute, case-sensitive path prefix used to restrict searched entries within the\nactor partition. The prefix must begin with `/` and must not contain empty, `.` or `..`\nsegments.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query", + "description": "Free-form search query.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "session_id", + "description": "Optional session identifier. When set, only entries with this exact `session_id` are\nsearched. Omitted-session (cross-session) entries are not included.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "view", + "description": "Controls whether each returned entry includes memory content. Search scores are always\nreturned. Defaults to `FULL`.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryEntryView", + "enum": [ + { + "content": "MANAGED_MEMORY_ENTRY_VIEW_BASIC" + }, + { + "content": "MANAGED_MEMORY_ENTRY_VIEW_FULL" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Memory store whose entries are searched, in the form\n`memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose entries are searched.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query", + "description": "Free-form search query.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Reserved for pagination compatibility. The server currently ignores this field because Search\nreturns a ranked top-N result set.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateMemory", + "description": "Updates selected mutable fields on a memory entry. Identity fields are immutable.", + "summary": "Update a memory entry.", + "path": "/api/2.0/agents/{name=memory-stores/*/entries/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateManagedMemoryEntryRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name in the form\n`memory-stores/{managed_memory_store_id}/entries/{managed_memory_entry_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "managed_memory_entry", + "description": "The memory entry to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryEntry", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Only `content` and `description` may be updated.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name in the form\n`memory-stores/{managed_memory_store_id}/entries/{managed_memory_entry_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Only `content` and `description` may be updated.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "managed_memory_entry", + "description": "The memory entry to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryEntry", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "managed_memory_entry", + "description": "The memory entry to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryEntry", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "ManagedMemoryEntry", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "managed_memory_entry", + "description": "The memory entry to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryEntry", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "name", + "description": "Resource name in the form\n`memory-stores/{managed_memory_store_id}/entries/{managed_memory_entry_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Only `content` and `description` may be updated.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "Optional free-form memory content.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Time when the entry was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "description", + "description": "Human-readable description of the memory entry.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name in the form\n`memory-stores/{managed_memory_store_id}/entries/{managed_memory_entry_id}`.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "session_id", + "description": "Optional identifier for the session associated with this memory entry. When omitted, the\nentry applies across the actor's sessions.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "Which writer created this entry. Caller sets this on Create; immutable after creation.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryEntrySourceType", + "enum": [ + { + "content": "MANAGED_MEMORY_ENTRY_SOURCE_TYPE_AGENT" + }, + { + "content": "MANAGED_MEMORY_ENTRY_SOURCE_TYPE_DREAMER" + } + ] + } + }, + { + "name": "update_time", + "description": "Time when the entry was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name in the form\n`memory-stores/{managed_memory_store_id}/entries/{managed_memory_entry_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Only `content` and `description` may be updated.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "actor_id", + "description": "Customer-provided identifier for the actor whose memory this entry represents.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute, case-sensitive path identifying the entry within its actor and optional session.\nPaths must begin with `/` and must not contain empty, `.` or `..` segments.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateMemoryStore", + "description": "Updates a memory store's description and metadata.", + "summary": "Update a memory store.", + "path": "/api/2.0/agents/{name=memory-stores/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateManagedMemoryStoreRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name in the form `memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "managed_memory_store", + "description": "The memory store to update. `name` is taken from the URL.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryStore", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Only `description` and `metadata` may be updated. Selecting `metadata` replaces the entire map.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name in the form `memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Only `description` and `metadata` may be updated. Selecting `metadata` replaces the entire map.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "managed_memory_store", + "description": "The memory store to update. `name` is taken from the URL.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryStore", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "managed_memory_store", + "description": "The memory store to update. `name` is taken from the URL.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryStore", + "is_object": true + } + }, + "response": { + "pascal_name": "ManagedMemoryStore", + "is_object": true + }, + "all_fields": [ + { + "name": "managed_memory_store", + "description": "The memory store to update. `name` is taken from the URL.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ManagedMemoryStore", + "is_object": true + } + }, + { + "name": "name", + "description": "Resource name in the form `memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Only `description` and `metadata` may be updated. Selecting `metadata` replaces the entire map.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "create_time", + "description": "Time when the store was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "creator_user_id", + "description": "Workspace-local user ID of the authenticated principal that created the store. This is\nimmutable server-set attribution and does not grant access; authorization is evaluated from\nthe authenticated request context.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Human-readable description of the memory store.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Deprecated compatibility alias for the caller-provided memory store ID. Canonical\nclients provide the ID through `CreateMemoryStoreRequest.managed_memory_store_id` and use\n`name` as the resource identifier.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name in the form `memory-stores/{managed_memory_store_id}`.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner_user_id", + "description": "Deprecated alias for `creator_user_id`. This identifies the original creator, not a\ntransferable owner. Use `creator_user_id` instead.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_backend", + "description": "Service-managed storage backing this memory store.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "StorageBackend", + "is_object": true + } + }, + { + "name": "update_time", + "description": "Time when the store was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "workspace_id", + "description": "Workspace that owns the memory store.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name in the form `memory-stores/{managed_memory_store_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Only `description` and `metadata` may be updated. Selecting `metadata` replaces the entire map.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ] + }, + { + "name": "UpdateSession", + "description": "Updates a session's mutable fields.", + "summary": "Update a session.", + "path": "/api/2.0/agents/{name=session-stores/*/sessions/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateSessionRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "session", + "description": "Session to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Session", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Only `metadata` is mutable; any other path returns\n`INVALID_PARAMETER_VALUE`.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Only `metadata` is mutable; any other path returns\n`INVALID_PARAMETER_VALUE`.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "session", + "description": "Session to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Session", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "session", + "description": "Session to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Session", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Session", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "session", + "description": "Session to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Session", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "update_mask", + "description": "Fields to update. Only `metadata` is mutable; any other path returns\n`INVALID_PARAMETER_VALUE`.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Time when the session was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "last_activity_time", + "description": "Time when the session's item history was last mutated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "metadata", + "description": "Mutable caller-defined string labels.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}/sessions/{session_id}`.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent_session_id", + "description": "Immediate parent session ID. Set only at creation for child sessions, immutable thereafter, and\nrestricted to the same store.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "root_session_id", + "description": "Top-level session ID in the spawn tree. This equals `session_id` for a root or fork and is\ninherited transitively by child sessions.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "session_id", + "description": "Unique session ID. The service generates a UUID unless the caller supplies\n`CreateSessionRequest.session_id`.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Time when session resource fields last changed.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}/sessions/{session_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Only `metadata` is mutable; any other path returns\n`INVALID_PARAMETER_VALUE`.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "actor_id", + "description": "Opaque caller-provided identifier for the application actor associated with the session.\n\nThis is application data and has no Databricks authentication or authorization semantics.\nUse the same value as the Managed Memory Entry `actor_id` when storing memories associated\nwith this actor. Every session must set it. A child session must use the same value as its parent.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateSessionStore", + "description": "Updates a session store's description and metadata.", + "summary": "Update a session store.", + "path": "/api/2.0/agents/{name=session-stores/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateSessionStoreRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "session_store", + "description": "Session store to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SessionStore", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Only `description` and `metadata` are mutable; any other\npath returns `INVALID_PARAMETER_VALUE`.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Only `description` and `metadata` are mutable; any other\npath returns `INVALID_PARAMETER_VALUE`.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "session_store", + "description": "Session store to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SessionStore", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "session_store", + "description": "Session store to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SessionStore", + "is_object": true + } + }, + "response": { + "pascal_name": "SessionStore", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "session_store", + "description": "Session store to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SessionStore", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Only `description` and `metadata` are mutable; any other\npath returns `INVALID_PARAMETER_VALUE`.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "create_time", + "description": "Time when the store was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "creator_user_id", + "description": "Workspace-local user ID of the authenticated principal that created the store. This is\nimmutable server-set attribution and does not grant access; authorization is evaluated from\nthe authenticated request context.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Human-readable description of the session store.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metadata", + "description": "Mutable caller-defined string labels.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}`.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Time when the store was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name in the form `session-stores/{session_store_id}`.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Only `description` and `metadata` are mutable; any other\npath returns `INVALID_PARAMETER_VALUE`.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ] + } + ] + }, + { + "id": "aifunctions.AiFunctions", + "name": "AiFunctions", + "description": "Transform and enrich data with AI on Databricks.", + "package": { + "name": "aifunctions" + }, + "docs_group": "aifunctions", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "AiClassify", + "description": "Classifies content according to a set of provided labels. For REST API requests, the default rate limit is 1,200 requests per minute per workspace. Contact your Databricks account team to request a higher limit.", + "summary": "Classify text into labels.", + "path": "/api/2.0/ai-functions/ai-classify", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "AiClassifyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "content", + "description": "The content to classify. It accepts a plain string or the response object of [ai_parse_document](:method:AiFunctions/AiParseDocument).", + "required": true, + "is_request_body_field": true, + "entity": {} + }, + { + "name": "labels", + "description": "The label set to classify as. Either a JSON array of label strings (e.g. [\"spam\", \"not_spam\"]), or a JSON object mapping each label to a description (e.g. {\"spam\": \"unsolicited bulk message\", \"not_spam\": \"a legitimate message\"}). Accepts 2 to 500 labels, each 1 to 100 characters.", + "required": true, + "is_request_body_field": true, + "entity": {} + } + ], + "required_request_body_fields": [ + { + "name": "content", + "description": "The content to classify. It accepts a plain string or the response object of [ai_parse_document](:method:AiFunctions/AiParseDocument).", + "required": true, + "is_request_body_field": true, + "entity": {} + }, + { + "name": "labels", + "description": "The label set to classify as. Either a JSON array of label strings (e.g. [\"spam\", \"not_spam\"]), or a JSON object mapping each label to a description (e.g. {\"spam\": \"unsolicited bulk message\", \"not_spam\": \"a legitimate message\"}). Accepts 2 to 500 labels, each 1 to 100 characters.", + "required": true, + "is_request_body_field": true, + "entity": {} + } + ] + }, + "response": { + "pascal_name": "AiClassifyResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "content", + "description": "The content to classify. It accepts a plain string or the response object of [ai_parse_document](:method:AiFunctions/AiParseDocument).", + "required": true, + "is_request_body_field": true, + "entity": {} + }, + { + "name": "labels", + "description": "The label set to classify as. Either a JSON array of label strings (e.g. [\"spam\", \"not_spam\"]), or a JSON object mapping each label to a description (e.g. {\"spam\": \"unsolicited bulk message\", \"not_spam\": \"a legitimate message\"}). Accepts 2 to 500 labels, each 1 to 100 characters.", + "required": true, + "is_request_body_field": true, + "entity": {} + }, + { + "name": "options", + "description": "Function options. Omitted fields fall back to their documented defaults.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AiClassifyOptions", + "is_object": true + } + } + ] + }, + { + "name": "AiDecide", + "description": "Turn text and structured data into decisions your application can use. Define questions and criteria to choose an option, estimate a probability, or assign a score given a provided state.", + "summary": "Get fast structured decisions.", + "path": "/api/2.0/ai-functions/ai-decide", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "AiDecideRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "state", + "description": "A string, JSON object, or array containing the content, related context, and examples needed to answer the provided questions. For example, provide a support message, a conversation, or records describing the current state of an application. All questions receive this same state.", + "required": true, + "is_request_body_field": true, + "entity": {} + }, + { + "name": "questions", + "description": "A JSON object mapping question IDs to their definitions. Each ID must contain non-whitespace text; its answer is returned with the same ID in `response.answers`.\n\nEach definition is an object with the required fields `type` and `instructions`. The `criteria` field is optional for the type `noul` but is required for the types `choice` and `score`.\n\nThe `instructions` field describes the judgment to make and can be a string, object, or array. Use an object or array to include supporting context alongside the instructions.\n\nThe `type` can be one of:\n\n- `choice`: Selects one option from a defined set. Requires `criteria` to be an object mapping 1 to 255 nonempty option names to descriptions. The criteria description can be a string, object, array, or null when the name needs no additional detail. For example:\n\n```json\n{\n\"team\": {\n\"type\": \"choice\",\n\"instructions\": \"Which team should handle this ticket?\",\n\"criteria\": {\n\"billing\": \"Payments, charges, and refunds\",\n\"technical_support\": null\n}\n}\n}\n```\n\n- `noul`: Estimates the probability that the answer to a true-or-false question is true. `criteria` can take the fields `true` or `false`, or both, with descriptions that are strings, objects, or arrays. Omit `criteria` to use the question alone. The instructions or at least one criteria description must contain non-whitespace text, a nonempty object, or a nonempty array. For example, both of the following are valid:\n\n```json\n{\n\"escalate\": {\n\"type\": \"noul\",\n\"instructions\": \"Does this ticket need escalation?\",\n\"criteria\": {\n\"true\": \"Suspected fraud or an exception to standard policy\",\n\"false\": \"A routine issue frontline support can resolve\"\n}\n}\n}\n```\n\nor\n\n```json\n{\n\"escalate\": {\n\"type\": \"noul\",\n\"instructions\": \"Does this ticket need escalation?\"\n}\n}\n```\n\n- `score`: Rates the state on an ordered scale. Requires `criteria` to be an array of 2 to 10 level descriptions, ordered from low to high. Descriptions must contain non-whitespace text, a nonempty object, or a nonempty array. Array positions define levels starting at 0. For example:\n\n```json\n{\n\"urgency\": {\n\"type\": \"score\",\n\"instructions\": \"How urgent is this ticket?\",\n\"criteria\": [\n\"Routine: can wait a few days\",\n\"Time-sensitive: needs attention today\",\n\"Critical: needs immediate action\"\n]\n}\n}\n```", + "required": true, + "is_request_body_field": true, + "entity": {} + } + ], + "required_request_body_fields": [ + { + "name": "state", + "description": "A string, JSON object, or array containing the content, related context, and examples needed to answer the provided questions. For example, provide a support message, a conversation, or records describing the current state of an application. All questions receive this same state.", + "required": true, + "is_request_body_field": true, + "entity": {} + }, + { + "name": "questions", + "description": "A JSON object mapping question IDs to their definitions. Each ID must contain non-whitespace text; its answer is returned with the same ID in `response.answers`.\n\nEach definition is an object with the required fields `type` and `instructions`. The `criteria` field is optional for the type `noul` but is required for the types `choice` and `score`.\n\nThe `instructions` field describes the judgment to make and can be a string, object, or array. Use an object or array to include supporting context alongside the instructions.\n\nThe `type` can be one of:\n\n- `choice`: Selects one option from a defined set. Requires `criteria` to be an object mapping 1 to 255 nonempty option names to descriptions. The criteria description can be a string, object, array, or null when the name needs no additional detail. For example:\n\n```json\n{\n\"team\": {\n\"type\": \"choice\",\n\"instructions\": \"Which team should handle this ticket?\",\n\"criteria\": {\n\"billing\": \"Payments, charges, and refunds\",\n\"technical_support\": null\n}\n}\n}\n```\n\n- `noul`: Estimates the probability that the answer to a true-or-false question is true. `criteria` can take the fields `true` or `false`, or both, with descriptions that are strings, objects, or arrays. Omit `criteria` to use the question alone. The instructions or at least one criteria description must contain non-whitespace text, a nonempty object, or a nonempty array. For example, both of the following are valid:\n\n```json\n{\n\"escalate\": {\n\"type\": \"noul\",\n\"instructions\": \"Does this ticket need escalation?\",\n\"criteria\": {\n\"true\": \"Suspected fraud or an exception to standard policy\",\n\"false\": \"A routine issue frontline support can resolve\"\n}\n}\n}\n```\n\nor\n\n```json\n{\n\"escalate\": {\n\"type\": \"noul\",\n\"instructions\": \"Does this ticket need escalation?\"\n}\n}\n```\n\n- `score`: Rates the state on an ordered scale. Requires `criteria` to be an array of 2 to 10 level descriptions, ordered from low to high. Descriptions must contain non-whitespace text, a nonempty object, or a nonempty array. Array positions define levels starting at 0. For example:\n\n```json\n{\n\"urgency\": {\n\"type\": \"score\",\n\"instructions\": \"How urgent is this ticket?\",\n\"criteria\": [\n\"Routine: can wait a few days\",\n\"Time-sensitive: needs attention today\",\n\"Critical: needs immediate action\"\n]\n}\n}\n```", + "required": true, + "is_request_body_field": true, + "entity": {} + } + ] + }, + "response": { + "pascal_name": "AiDecideResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "options", + "description": "Function options. Omitted fields fall back to their documented defaults.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AiDecideOptions", + "is_object": true + } + }, + { + "name": "questions", + "description": "A JSON object mapping question IDs to their definitions. Each ID must contain non-whitespace text; its answer is returned with the same ID in `response.answers`.\n\nEach definition is an object with the required fields `type` and `instructions`. The `criteria` field is optional for the type `noul` but is required for the types `choice` and `score`.\n\nThe `instructions` field describes the judgment to make and can be a string, object, or array. Use an object or array to include supporting context alongside the instructions.\n\nThe `type` can be one of:\n\n- `choice`: Selects one option from a defined set. Requires `criteria` to be an object mapping 1 to 255 nonempty option names to descriptions. The criteria description can be a string, object, array, or null when the name needs no additional detail. For example:\n\n```json\n{\n\"team\": {\n\"type\": \"choice\",\n\"instructions\": \"Which team should handle this ticket?\",\n\"criteria\": {\n\"billing\": \"Payments, charges, and refunds\",\n\"technical_support\": null\n}\n}\n}\n```\n\n- `noul`: Estimates the probability that the answer to a true-or-false question is true. `criteria` can take the fields `true` or `false`, or both, with descriptions that are strings, objects, or arrays. Omit `criteria` to use the question alone. The instructions or at least one criteria description must contain non-whitespace text, a nonempty object, or a nonempty array. For example, both of the following are valid:\n\n```json\n{\n\"escalate\": {\n\"type\": \"noul\",\n\"instructions\": \"Does this ticket need escalation?\",\n\"criteria\": {\n\"true\": \"Suspected fraud or an exception to standard policy\",\n\"false\": \"A routine issue frontline support can resolve\"\n}\n}\n}\n```\n\nor\n\n```json\n{\n\"escalate\": {\n\"type\": \"noul\",\n\"instructions\": \"Does this ticket need escalation?\"\n}\n}\n```\n\n- `score`: Rates the state on an ordered scale. Requires `criteria` to be an array of 2 to 10 level descriptions, ordered from low to high. Descriptions must contain non-whitespace text, a nonempty object, or a nonempty array. Array positions define levels starting at 0. For example:\n\n```json\n{\n\"urgency\": {\n\"type\": \"score\",\n\"instructions\": \"How urgent is this ticket?\",\n\"criteria\": [\n\"Routine: can wait a few days\",\n\"Time-sensitive: needs attention today\",\n\"Critical: needs immediate action\"\n]\n}\n}\n```", + "required": true, + "is_request_body_field": true, + "entity": {} + }, + { + "name": "state", + "description": "A string, JSON object, or array containing the content, related context, and examples needed to answer the provided questions. For example, provide a support message, a conversation, or records describing the current state of an application. All questions receive this same state.", + "required": true, + "is_request_body_field": true, + "entity": {} + } + ] + }, + { + "name": "AiExtract", + "description": "Extracts structured data from text and documents according to a provided schema. For REST API requests, the default rate limit is 120 requests per minute per workspace. Contact your Databricks account team to request a higher limit.", + "summary": "Extract structured data from text.", + "path": "/api/2.0/ai-functions/ai-extract", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "AiExtractRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "content", + "description": "The text to extract from. It accepts a plain string or the response object of [ai_parse_document](:method:AiFunctions/AiParseDocument).", + "required": true, + "is_request_body_field": true, + "entity": {} + }, + { + "name": "schema", + "description": "The extraction schema defining the fields to extract. Either a JSON array of field names, assumed to be strings (e.g. [\"company\", \"valuation\"]), or a JSON object mapping each field to its type/description/nullability (e.g. {\"company\": {\"type\": \"string\", \"description\": \"the company name\"}}). Accepts up to 256 fields, 12 levels of nesting, and 500 enum values. Supported field types are string, integer, number, boolean, and enum.", + "required": true, + "is_request_body_field": true, + "entity": {} + } + ], + "required_request_body_fields": [ + { + "name": "content", + "description": "The text to extract from. It accepts a plain string or the response object of [ai_parse_document](:method:AiFunctions/AiParseDocument).", + "required": true, + "is_request_body_field": true, + "entity": {} + }, + { + "name": "schema", + "description": "The extraction schema defining the fields to extract. Either a JSON array of field names, assumed to be strings (e.g. [\"company\", \"valuation\"]), or a JSON object mapping each field to its type/description/nullability (e.g. {\"company\": {\"type\": \"string\", \"description\": \"the company name\"}}). Accepts up to 256 fields, 12 levels of nesting, and 500 enum values. Supported field types are string, integer, number, boolean, and enum.", + "required": true, + "is_request_body_field": true, + "entity": {} + } + ] + }, + "response": { + "pascal_name": "AiExtractResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "content", + "description": "The text to extract from. It accepts a plain string or the response object of [ai_parse_document](:method:AiFunctions/AiParseDocument).", + "required": true, + "is_request_body_field": true, + "entity": {} + }, + { + "name": "options", + "description": "Function options. Omitted fields fall back to their documented defaults.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AiExtractOptions", + "is_object": true + } + }, + { + "name": "schema", + "description": "The extraction schema defining the fields to extract. Either a JSON array of field names, assumed to be strings (e.g. [\"company\", \"valuation\"]), or a JSON object mapping each field to its type/description/nullability (e.g. {\"company\": {\"type\": \"string\", \"description\": \"the company name\"}}). Accepts up to 256 fields, 12 levels of nesting, and 500 enum values. Supported field types are string, integer, number, boolean, and enum.", + "required": true, + "is_request_body_field": true, + "entity": {} + } + ] + }, + { + "name": "AiParseDocument", + "description": "Parse structured content from unstructured documents.", + "summary": "Parse documents into structured content.", + "path": "/api/2.0/ai-functions/ai-parse-document", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "AiParseDocumentRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "content", + "description": "The document to parse. The REST API accepts a Unity Catalog volume path to the source file or a base64 data URL containing the file bytes (for example, data:application/pdf;base64,\u003cencoded-file-bytes\u003e or data:image/jpeg;base64,\u003cencoded-file-bytes\u003e). Supported formats: PDF, DOCX, DOC, PPTX, PPT, JPG, JPEG, PNG, TIFF. Accepts up to 100 pages and 100 MB per document.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "content", + "description": "The document to parse. The REST API accepts a Unity Catalog volume path to the source file or a base64 data URL containing the file bytes (for example, data:application/pdf;base64,\u003cencoded-file-bytes\u003e or data:image/jpeg;base64,\u003cencoded-file-bytes\u003e). Supported formats: PDF, DOCX, DOC, PPTX, PPT, JPG, JPEG, PNG, TIFF. Accepts up to 100 pages and 100 MB per document.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AiParseDocumentResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "content", + "description": "The document to parse. The REST API accepts a Unity Catalog volume path to the source file or a base64 data URL containing the file bytes (for example, data:application/pdf;base64,\u003cencoded-file-bytes\u003e or data:image/jpeg;base64,\u003cencoded-file-bytes\u003e). Supported formats: PDF, DOCX, DOC, PPTX, PPT, JPG, JPEG, PNG, TIFF. Accepts up to 100 pages and 100 MB per document.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "Function options. Omitted fields fall back to their documented defaults.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AiParseDocumentOptions", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "content", + "description": "The document to parse. The REST API accepts a Unity Catalog volume path to the source file or a base64 data URL containing the file bytes (for example, data:application/pdf;base64,\u003cencoded-file-bytes\u003e or data:image/jpeg;base64,\u003cencoded-file-bytes\u003e). Supported formats: PDF, DOCX, DOC, PPTX, PPT, JPG, JPEG, PNG, TIFF. Accepts up to 100 pages and 100 MB per document.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.AiGateway", + "name": "AiGateway", + "description": "Govern AI workloads in Unity Catalog. This API manages the Unity Catalog securables that bring centralized access control, lineage, and auditing to AI-serving entities: model services (governed access to foundation models and external LLMs), model provider services (governed resources for external model providers), and MCP services (governed Model Context Protocol servers).", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListMcpServicesRequest" + } + }, + "methods": [ + { + "name": "CreateMcpService", + "description": "Creates an MCP service in a Unity Catalog schema. An MCP (Model Context\nProtocol) service is a governed securable that registers an MCP server and\nexposes its tools for discovery, access control, and invocation. Specify\nits name in `mcp_service_id`.\n\nYou must be the owner of the parent schema or have the `CREATE_SERVICE`\nand `USE_SCHEMA` privileges on the parent schema and `USE_CATALOG` on the\nparent catalog. You also need `USE_CONNECTION` on the connection the MCP\nservice references.", + "summary": "Create an MCP service.", + "path": "/api/2.1/unity-catalog/mcp-services", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateMcpServiceRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "mcp_service", + "description": "The MCP service to create. Do not set `name`; the server derives it from\n`parent` and `mcp_service_id`. `source_connection` is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "McpService", + "is_object": true + } + }, + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "mcp_service_id", + "description": "Name for the MCP service, e.g. \"my_mcp_service\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "mcp_service_id", + "description": "Name for the MCP service, e.g. \"my_mcp_service\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "mcp_service", + "description": "The MCP service to create. Do not set `name`; the server derives it from\n`parent` and `mcp_service_id`. `source_connection` is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "McpService", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "mcp_service", + "description": "The MCP service to create. Do not set `name`; the server derives it from\n`parent` and `mcp_service_id`. `source_connection` is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "McpService", + "is_object": true + } + }, + "response": { + "pascal_name": "McpService", + "is_object": true + }, + "all_fields": [ + { + "name": "mcp_service", + "description": "The MCP service to create. Do not set `name`; the server derives it from\n`parent` and `mcp_service_id`. `source_connection` is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "McpService", + "is_object": true + } + }, + { + "name": "mcp_service_id", + "description": "Name for the MCP service, e.g. \"my_mcp_service\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "User-provided description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "config", + "description": "Connection, tool selectors, and rate limits. Required on Create. On Update,\nprovide this field when `update_mask` contains `config` or one of its\nsubpaths.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "McpServiceConfig", + "is_object": true + } + }, + { + "name": "create_time", + "description": "Time the MCP service was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "Creator identity.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_owner", + "description": "Owner of the MCP service.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Optimistic concurrency token returned on every read. To make an Update or\nDelete conditional, pass the last-read value in that request's `etag`\nfield. In REST responses, this value is a base64 string; URL-encode it when\nsetting the `etag` query parameter.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "Metastore hosting the MCP service.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`mcp_service_id`; required and immutable on Update/Get/Delete.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Time the MCP service was last modified.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "Identity of the last updater.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "mcp_service_id", + "description": "Name for the MCP service, e.g. \"my_mcp_service\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateMcpServiceUserMappedCredential", + "description": "Logs the caller in to an MCP service: creates their per-user OAuth credential, or\nre-authenticates it if one already exists. The request body carries the OAuth exchange fields.\n\nYou must be the owner of the MCP service or have `EXECUTE` on it, plus `USE_CATALOG` on the\nparent catalog and `USE_SCHEMA` on the parent schema.", + "summary": "Create an MCP service user credential.", + "path": "/api/2.1/unity-catalog/{name=mcp-services/*}/user-credentials", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateMcpServiceUserMappedCredentialRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "login", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "McpServiceUserMappedCredentialLogin", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "login", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "McpServiceUserMappedCredentialLogin", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "login", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "McpServiceUserMappedCredentialLogin", + "is_object": true + } + }, + "response": { + "pascal_name": "McpServiceUserMappedCredential", + "is_object": true + }, + "all_fields": [ + { + "name": "login", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "McpServiceUserMappedCredentialLogin", + "is_object": true + } + }, + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "OAuth exchange fields: `pkce_verifier`, `authorization_code`, and `oauth_redirect_uri`.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateModelProviderService", + "description": "Creates a model provider service in a Unity Catalog schema. A model\nprovider service stores authentication and request configuration for an\nexternal model provider, such as OpenAI, Azure OpenAI, or Amazon Bedrock.\nModel services reference it to invoke the provider. Specify its name in\n`model_provider_service_id`.\n\nYou must be the owner of the parent schema or have the `CREATE_SERVICE`\nand `USE_SCHEMA` privileges on the parent schema and `USE_CATALOG` on the\nparent catalog. Inline credentials additionally require `CREATE_CONNECTION`\non the parent schema. When using a Unity Catalog service credential, you\nmust have `ACCESS` on that credential.", + "summary": "Create a model provider service.", + "path": "/api/2.1/unity-catalog/model-provider-services", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateModelProviderServiceRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "model_provider_service", + "description": "The model provider service to create. Do not set `name`; the server derives\nit from `parent` and `model_provider_service_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelProviderService", + "is_object": true + } + }, + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "model_provider_service_id", + "description": "Name for the model provider service, e.g. \"openai_prod\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "model_provider_service_id", + "description": "Name for the model provider service, e.g. \"openai_prod\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "model_provider_service", + "description": "The model provider service to create. Do not set `name`; the server derives\nit from `parent` and `model_provider_service_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelProviderService", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "model_provider_service", + "description": "The model provider service to create. Do not set `name`; the server derives\nit from `parent` and `model_provider_service_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelProviderService", + "is_object": true + } + }, + "response": { + "pascal_name": "ModelProviderService", + "is_object": true + }, + "all_fields": [ + { + "name": "model_provider_service", + "description": "The model provider service to create. Do not set `name`; the server derives\nit from `parent` and `model_provider_service_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelProviderService", + "is_object": true + } + }, + { + "name": "model_provider_service_id", + "description": "Name for the model provider service, e.g. \"openai_prod\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "User-provided description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "config", + "description": "Provider authentication, exposed models, request-forwarding controls, rate\nlimits, and payload logging. Required on Create. On Update, it is required\nonly when `config` or one of its subpaths appears in `update_mask`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ModelProviderServiceConfig", + "is_object": true + } + }, + { + "name": "create_time", + "description": "Time the provider service was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "Creator identity.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_owner", + "description": "Owner of the model provider service.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Optimistic concurrency token returned on every read. To make an Update or\nDelete conditional, pass the last-read value in that request's `etag`\nfield. In REST responses, this value is a base64 string; URL-encode it when\nsetting the `etag` query parameter.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "Metastore hosting the provider service.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name of the provider service.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`model_provider_service_id`; required and immutable on Update/Get/Delete.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Time the provider service was last modified.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "Identity of the last updater.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "model_provider_service_id", + "description": "Name for the model provider service, e.g. \"openai_prod\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateModelService", + "description": "Creates a model service in a Unity Catalog schema. A model service is a\ngoverned AI Gateway endpoint that routes inference requests to one or more\nmodel destinations. Specify its name in `model_service_id`.\n\nYou must be the owner of the parent schema or have the `CREATE_SERVICE`\nand `USE_SCHEMA` privileges on the parent schema and `USE_CATALOG` on the\nparent catalog. For every destination, you also need `USE_CATALOG` and\n`USE_SCHEMA` on its parent and `EXECUTE` on the referenced Unity Catalog\nmodel or model provider service. A provisioned-throughput destination\nadditionally requires `CAN_MANAGE` on its Model Serving endpoint.\nConfiguring an inference table additionally requires `CREATE_TABLE`.", + "summary": "Create a model service.", + "path": "/api/2.1/unity-catalog/model-services", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateModelServiceRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "model_service", + "description": "The model service to create. Do not set `name`; the server derives it from\n`parent` and `model_service_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelService", + "is_object": true + } + }, + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "model_service_id", + "description": "Name for the model service, e.g. \"my_model_service\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "model_service_id", + "description": "Name for the model service, e.g. \"my_model_service\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "model_service", + "description": "The model service to create. Do not set `name`; the server derives it from\n`parent` and `model_service_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelService", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "model_service", + "description": "The model service to create. Do not set `name`; the server derives it from\n`parent` and `model_service_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelService", + "is_object": true + } + }, + "response": { + "pascal_name": "ModelService", + "is_object": true + }, + "all_fields": [ + { + "name": "model_service", + "description": "The model service to create. Do not set `name`; the server derives it from\n`parent` and `model_service_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelService", + "is_object": true + } + }, + { + "name": "model_service_id", + "description": "Name for the model service, e.g. \"my_model_service\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "User-provided description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "config", + "description": "Destinations, routing, rate limits, and payload logging configuration.\nRequired on Create. On Update, provide this field when `update_mask`\ncontains `config` or one of its subpaths.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ModelServiceConfig", + "is_object": true + } + }, + { + "name": "create_time", + "description": "Time the model service was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "Creator identity.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_owner", + "description": "Owner of the model service.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Optimistic concurrency token returned on every read. To make an Update or\nDelete conditional, pass the last-read value in that request's `etag`\nfield. In REST responses, this value is a base64 string; URL-encode it when\nsetting the `etag` query parameter.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "Metastore hosting the model service.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name of the model service.\nFormat: `model-services/{catalog}.{schema}.{model_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`model_service_id`; required and immutable on Update/Get/Delete.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "supported_api_types", + "description": "API types supported across this service's destinations, such as\n`openai/v1/chat/completions`, `openai/v1/embeddings`, and\n`mlflow/v1/chat/completions`. Derived from the backing models and providers\nat read time.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "update_time", + "description": "Time the model service was last modified.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "Identity of the last updater.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "model_service_id", + "description": "Name for the model service, e.g. \"my_model_service\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateSkill", + "description": "Creates a skill in a Unity Catalog schema and provisions its managed bundle\nstorage. Specify its name in `skill_id`. The request contains an optional\ncomment but no bundle bytes. Upload bundle files through the Files API,\nthen call FinalizeSkill.\n\nYou must be the owner of the parent schema or have `CREATE_VOLUME` and\n`USE_SCHEMA` on it, plus `USE_CATALOG` on the parent catalog.", + "summary": "Create a skill.", + "path": "/api/2.1/unity-catalog/skills", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateSkillRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "skill", + "description": "The skill to create. `comment` is the only accepted client input and may be\nomitted. Do not set `name`; the server derives it from `parent` and\n`skill_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Skill", + "is_object": true + } + }, + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "skill_id", + "description": "Name for the skill, e.g. \"basic-math\". The server normalizes this\nidentifier to lowercase. It is independent of the bundle name read from\nSKILL.md.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "skill_id", + "description": "Name for the skill, e.g. \"basic-math\". The server normalizes this\nidentifier to lowercase. It is independent of the bundle name read from\nSKILL.md.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "skill", + "description": "The skill to create. `comment` is the only accepted client input and may be\nomitted. Do not set `name`; the server derives it from `parent` and\n`skill_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Skill", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "skill", + "description": "The skill to create. `comment` is the only accepted client input and may be\nomitted. Do not set `name`; the server derives it from `parent` and\n`skill_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Skill", + "is_object": true + } + }, + "response": { + "pascal_name": "Skill", + "is_object": true + }, + "all_fields": [ + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "skill", + "description": "The skill to create. `comment` is the only accepted client input and may be\nomitted. Do not set `name`; the server derives it from `parent` and\n`skill_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Skill", + "is_object": true + } + }, + { + "name": "skill_id", + "description": "Name for the skill, e.g. \"basic-math\". The server normalizes this\nidentifier to lowercase. It is independent of the bundle name read from\nSKILL.md.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "bundle_name", + "description": "Name from the most recently successfully finalized SKILL.md. It may differ\nfrom the final component of the Skill resource name. Unset until\nFinalizeSkill succeeds.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "User-provided comment for the skill. Free-text, user-editable via\nUpdateSkill (listed in its `update_mask`). DISTINCT from `description`,\nwhich is the server-parsed, OUTPUT_ONLY SKILL.md frontmatter value: `comment`\nis the customer's own annotation and is preserved across bundle re-uploads.\nWhen `comment` is in the update mask, omitting it clears the field, while\nan explicitly empty string is retained.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Time the skill was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "Creator identity.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description from the most recently successfully finalized SKILL.md. Unset\nuntil FinalizeSkill succeeds.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_owner", + "description": "Owner of the skill.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Optimistic concurrency token returned on every read. To make an Update or\nDelete conditional, pass the last-read value in that request's `etag`\nfield. In REST responses, this value is a base64 string; URL-encode it when\nsetting the `etag` query parameter.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "finalize_time", + "description": "Time of the most recent successful FinalizeSkill. Unset until one succeeds.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "metastore_id", + "description": "Metastore hosting the skill.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`skill_id`; required and immutable on Update/Get/Delete.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Time of the most recent Skill metadata mutation. Uploading bundle files\nalone does not change this value.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "Identity of the last updater.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Name of the parent schema.\nFormat: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "skill_id", + "description": "Name for the skill, e.g. \"basic-math\". The server normalizes this\nidentifier to lowercase. It is independent of the bundle name read from\nSKILL.md.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteMcpService", + "description": "Deletes the MCP service identified by its resource name. Optionally supply\nan `etag` to make the delete conditional on the MCP service not having\nchanged since it was read.\n\nYou must be the owner of the MCP service or have `MANAGE` on it, plus\n`USE_CATALOG` on the parent catalog and `USE_SCHEMA` on the parent schema.", + "summary": "Delete an MCP service.", + "path": "/api/2.1/unity-catalog/{name=mcp-services/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteMcpServiceRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "etag", + "description": "Optimistic concurrency token from the most recent read. When set, the\ndelete succeeds only if the resource has not changed. Leave unset for an\nunconditional delete. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteMcpServiceUserMappedCredential", + "description": "Revokes (deletes) the caller's per-user OAuth credential for an MCP service (logout).\n\nYou must be the owner of the MCP service or have `EXECUTE` on it, plus `USE_CATALOG` on the\nparent catalog and `USE_SCHEMA` on the parent schema.", + "summary": "Delete an MCP service user credential.", + "path": "/api/2.1/unity-catalog/{name=mcp-services/*}/user-credentials", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteMcpServiceUserMappedCredentialRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteMcpServiceUserMappedCredentialResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteModelProviderService", + "description": "Deletes the model provider service identified by its resource name.\nOptionally supply an `etag` to make the delete conditional on the model\nprovider service not having changed since it was read.\n\nYou must be the owner of the model provider service or have `MANAGE` on\nit, plus `USE_CATALOG` on the parent catalog and `USE_SCHEMA` on the\nparent schema.", + "summary": "Delete a model provider service.", + "path": "/api/2.1/unity-catalog/{name=model-provider-services/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteModelProviderServiceRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the model provider service.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the model provider service.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "etag", + "description": "Optimistic concurrency token from the most recent read. When set, the\ndelete succeeds only if the resource has not changed. Leave unset for an\nunconditional delete. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name of the model provider service.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the model provider service.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteModelService", + "description": "Deletes the model service identified by its resource name. Optionally\nsupply an `etag` to make the delete conditional on the model service not\nhaving changed since it was read.\n\nYou must be the owner of the model service or have `MANAGE` on it, plus\n`USE_CATALOG` on the parent catalog and `USE_SCHEMA` on the parent schema.", + "summary": "Delete a model service.", + "path": "/api/2.1/unity-catalog/{name=model-services/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteModelServiceRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the model service.\nFormat: `model-services/{catalog}.{schema}.{model_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the model service.\nFormat: `model-services/{catalog}.{schema}.{model_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "etag", + "description": "Optimistic concurrency token from the most recent read. When set, the\ndelete succeeds only if the resource has not changed. Leave unset for an\nunconditional delete. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name of the model service.\nFormat: `model-services/{catalog}.{schema}.{model_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the model service.\nFormat: `model-services/{catalog}.{schema}.{model_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteSkill", + "description": "Deletes the skill identified by its resource name and makes its managed\nbundle path unavailable. Managed bundle data is deleted asynchronously.\nOptionally supply an `etag` to make the delete conditional on the skill not\nhaving changed since it was read.\n\nYou must be the owner of the skill or have `MANAGE` on it, plus\n`USE_CATALOG` on the parent catalog and `USE_SCHEMA` on the parent schema.", + "summary": "Delete a skill.", + "path": "/api/2.1/unity-catalog/{name=skills/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteSkillRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "etag", + "description": "Optimistic concurrency token from the most recent read. When set, the\ndelete succeeds only if the resource has not changed. Leave unset for an\nunconditional delete. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Full resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "FinalizeSkill", + "description": "Finalizes a skill after its bundle is uploaded. This method reads SKILL.md\nthrough the Files API using the caller's authorization. Its YAML\nfrontmatter must contain an agentskills.io-compliant `name` and a nonblank\n`description` within the configured UTF-8 byte limit. On success, it\nreplaces `bundle_name` and `description`; refreshes `finalize_time`,\n`update_time`, and `updated_by`; and returns the updated skill. `comment` is\npreserved. Re-finalization uses the latest SKILL.md and is last-write-wins\nwithout an etag precondition. Validation failures do not change metadata.\n\nYou must be the owner of the skill or have `READ_VOLUME` on it, plus\n`USE_CATALOG` on the parent catalog and `USE_SCHEMA` on the parent schema.", + "summary": "Finalize a skill.", + "path": "/api/2.1/unity-catalog/{name=skills/*}/finalize", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "FinalizeSkillRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Skill", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Full resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetMcpService", + "description": "Returns the MCP service identified by its resource name.\n\nYou must be the owner of the MCP service or have `EXECUTE`,\n`READ_METADATA`, or `MANAGE` on it, plus `USE_CATALOG` on the parent\ncatalog and `USE_SCHEMA` on the parent schema.", + "summary": "Get an MCP service.", + "path": "/api/2.1/unity-catalog/{name=mcp-services/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetMcpServiceRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "McpService", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetMcpServiceUserMappedCredential", + "description": "Returns the caller's per-user OAuth login state for an MCP service. Read\n`provisioning_info.state`: `ACTIVE` means the caller is logged in and the credential is\nusable; any other state (for example a failed or still-provisioning login) means the login has\nnot completed and the caller should log in again. If the caller has no credential yet, the RPC\nreturns `NOT_FOUND`.\n\nYou must be the owner of the MCP service or have `EXECUTE` on it, plus `USE_CATALOG` on the\nparent catalog and `USE_SCHEMA` on the parent schema.", + "summary": "Get MCP service user credential status.", + "path": "/api/2.1/unity-catalog/{name=mcp-services/*}/user-credentials", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetMcpServiceUserMappedCredentialRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "McpServiceUserMappedCredential", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetModelProviderService", + "description": "Returns the model provider service identified by its resource name.\n\nYou must be the owner of the model provider service or have `EXECUTE`,\n`READ_METADATA`, or `MANAGE` on it, plus `USE_CATALOG` on the parent\ncatalog and `USE_SCHEMA` on the parent schema.", + "summary": "Get a model provider service.", + "path": "/api/2.1/unity-catalog/{name=model-provider-services/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetModelProviderServiceRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the model provider service.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the model provider service.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ModelProviderService", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name of the model provider service.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the model provider service.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetModelService", + "description": "Returns the model service identified by its resource name.\n\nYou must be the owner of the model service or have `EXECUTE`,\n`READ_METADATA`, or `MANAGE` on it, plus `USE_CATALOG` on the parent\ncatalog and `USE_SCHEMA` on the parent schema.", + "summary": "Get a model service.", + "path": "/api/2.1/unity-catalog/{name=model-services/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetModelServiceRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the model service.\nFormat: `model-services/{catalog}.{schema}.{model_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the model service.\nFormat: `model-services/{catalog}.{schema}.{model_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ModelService", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name of the model service.\nFormat: `model-services/{catalog}.{schema}.{model_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the model service.\nFormat: `model-services/{catalog}.{schema}.{model_service}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSkill", + "description": "Returns the skill identified by its resource name.\n\nYou must be the owner of the skill or have `READ_VOLUME`, `READ_METADATA`,\nor `MANAGE` on it, plus `USE_CATALOG` on the parent catalog and\n`USE_SCHEMA` on the parent schema.", + "summary": "Get a skill.", + "path": "/api/2.1/unity-catalog/{name=skills/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetSkillRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Skill", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Full resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListMcpServices", + "description": "Lists the MCP services in a Unity Catalog schema. Provide `parent` as\n`schemas/{catalog}.{schema}`. Results are paginated; pass the returned\n`next_page_token` to fetch subsequent pages.\n\nRequires `USE_CATALOG` on the parent catalog and `USE_SCHEMA` on the\nparent schema. Only MCP services the caller can access (as owner or\nthrough `EXECUTE`, `READ_METADATA`, or `MANAGE`) are returned.", + "summary": "List MCP services.", + "path": "/api/2.1/unity-catalog/mcp-services", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListMcpServicesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListMcpServicesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Maximum number of MCP services to return. Defaults to 100 when unset or 0;\nthe maximum is 200. Use `page_token` to retrieve additional pages.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token from the previous response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Parent schema to list within, in the form\n`schemas/{catalog}.{schema}`. Required. Each `{...}` component is capped at\n255 characters individually.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "view", + "description": "Fields to return for each service. `FULL` includes source-connection\ndetails and rate-limit principal names. `BASIC` omits the source connection\nand omits principal names from rate limits. Defaults to `BASIC` when unset.", + "is_query": true, + "entity": { + "pascal_name": "ListMcpServicesRequestView", + "enum": [ + { + "content": "BASIC" + }, + { + "content": "FULL" + } + ] + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token from the previous response.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListModelProviderServices", + "description": "Lists the model provider services in a Unity Catalog schema. Provide\n`parent` as `schemas/{catalog}.{schema}`. Results are paginated; pass the\nreturned `next_page_token` to fetch subsequent pages.\n\nRequires `USE_CATALOG` on the parent catalog and `USE_SCHEMA` on the\nparent schema. Only model provider services the caller can access (as\nowner or through `EXECUTE`, `READ_METADATA`, or `MANAGE`) are returned.", + "summary": "List model provider services.", + "path": "/api/2.1/unity-catalog/model-provider-services", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListModelProviderServicesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListModelProviderServicesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Maximum number of provider services to return. Defaults to 100 when unset or\n0; the maximum is 200. Use `page_token` to retrieve additional pages.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token from the previous response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Parent schema to list within, in the form\n`schemas/{catalog}.{schema}`. Required. Each `{...}` component is capped at\n255 characters individually.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "view", + "description": "Fields to return for each service. `FULL` includes resolved\nservice-credential and inference-table details and rate-limit principal\nnames. `BASIC` omits those details and principal names from rate limits.\nDefaults to `BASIC` when unset.", + "is_query": true, + "entity": { + "pascal_name": "ListModelProviderServicesRequestView", + "enum": [ + { + "content": "BASIC" + }, + { + "content": "FULL" + } + ] + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token from the previous response.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListModelServices", + "description": "Lists the model services in a Unity Catalog schema. Provide `parent` as\n`schemas/{catalog}.{schema}`. Results are paginated; pass the returned\n`next_page_token` to fetch subsequent pages.\n\nRequires `USE_CATALOG` on the parent catalog and `USE_SCHEMA` on the\nparent schema. Only model services the caller can access (as owner or\nthrough `EXECUTE`, `READ_METADATA`, or `MANAGE`) are returned.", + "summary": "List model services.", + "path": "/api/2.1/unity-catalog/model-services", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListModelServicesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListModelServicesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Maximum number of model services to return. Defaults to 100 when unset or 0;\nthe maximum is 200. Use `page_token` to retrieve additional pages.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token from the previous response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Parent schema to list within, in the form\n`schemas/{catalog}.{schema}`. Required. Each `{...}` component is capped at\n255 characters individually.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "view", + "description": "Fields to return for each service. `FULL` includes destinations,\ninference-table details, and rate-limit principal names. `BASIC` omits\ndestinations and inference-table details and omits principal names from\nrate limits. Defaults to `BASIC` when unset.", + "is_query": true, + "entity": { + "pascal_name": "ListModelServicesRequestView", + "enum": [ + { + "content": "BASIC" + }, + { + "content": "FULL" + } + ] + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token from the previous response.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListSkills", + "description": "Lists skills in a Unity Catalog schema. Provide `parent` as\n`schemas/{catalog}.{schema}`. Results are paginated; pass the returned\n`next_page_token` to fetch subsequent pages.\n\nRequires `USE_CATALOG` on the parent catalog and `USE_SCHEMA` on the parent\nschema. Only skills the caller can access as owner or through `READ_VOLUME`,\n`READ_METADATA`, or `MANAGE` are returned.", + "summary": "List skills.", + "path": "/api/2.1/unity-catalog/skills", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListSkillsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "Name of the parent schema. Format: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.\n\nRequired: skill listing is schema-scoped, so `parent` must be set; an unset\nor empty `parent` is rejected with INVALID_PARAMETER_VALUE.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Name of the parent schema. Format: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.\n\nRequired: skill listing is schema-scoped, so `parent` must be set; an unset\nor empty `parent` is rejected with INVALID_PARAMETER_VALUE.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListSkillsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Maximum number of skills to return. Defaults to 100 when unset or 0; the\nmaximum is 200. Use `page_token` to retrieve additional pages.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token from a previous request.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Name of the parent schema. Format: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.\n\nRequired: skill listing is schema-scoped, so `parent` must be set; an unset\nor empty `parent` is rejected with INVALID_PARAMETER_VALUE.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Name of the parent schema. Format: `schemas/{catalog}.{schema}`.\nEach `{...}` component is capped at 255 characters individually.\n\nRequired: skill listing is schema-scoped, so `parent` must be set; an unset\nor empty `parent` is rejected with INVALID_PARAMETER_VALUE.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token from a previous request.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateMcpService", + "description": "Updates an MCP service. Only the fields named in `update_mask` are\nchanged; the resource name is immutable. Optionally supply an `etag` to\nmake the update conditional on the MCP service not having changed since it\nwas read.\n\nYou must be the owner of the MCP service or have `MANAGE` on it, plus\n`USE_CATALOG` on the parent catalog and `USE_SCHEMA` on the parent schema.\nWhen changing `config.source_connection.name`, the MCP service owner must\nalso have `USE_CONNECTION` on the new connection.", + "summary": "Update an MCP service.", + "path": "/api/2.1/unity-catalog/{name=mcp-services/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateMcpServiceRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`mcp_service_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "mcp_service", + "description": "The MCP service with the updated field values. `name` identifies the\nresource (`mcp-services/{catalog}.{schema}.{mcp_service}`); only fields\nlisted in `update_mask` are applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "McpService", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Use `config` to replace the entire configuration. The\nreplacement must include every required field; any optional field you omit\nis cleared. To preserve sibling fields, use one or more granular paths:\n`comment`, `config.source_connection.name`, `config.include_tool_selectors`, or\n`config.rate_limits`.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`mcp_service_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Use `config` to replace the entire configuration. The\nreplacement must include every required field; any optional field you omit\nis cleared. To preserve sibling fields, use one or more granular paths:\n`comment`, `config.source_connection.name`, `config.include_tool_selectors`, or\n`config.rate_limits`.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "mcp_service", + "description": "The MCP service with the updated field values. `name` identifies the\nresource (`mcp-services/{catalog}.{schema}.{mcp_service}`); only fields\nlisted in `update_mask` are applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "McpService", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "mcp_service", + "description": "The MCP service with the updated field values. `name` identifies the\nresource (`mcp-services/{catalog}.{schema}.{mcp_service}`); only fields\nlisted in `update_mask` are applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "McpService", + "is_object": true + } + }, + "response": { + "pascal_name": "McpService", + "is_object": true + }, + "all_fields": [ + { + "name": "etag", + "description": "Optimistic concurrency token from the most recent read. When set, the\nupdate succeeds only if the resource has not changed. Leave unset for an\nunconditional update. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "mcp_service", + "description": "The MCP service with the updated field values. `name` identifies the\nresource (`mcp-services/{catalog}.{schema}.{mcp_service}`); only fields\nlisted in `update_mask` are applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "McpService", + "is_object": true + } + }, + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`mcp_service_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Use `config` to replace the entire configuration. The\nreplacement must include every required field; any optional field you omit\nis cleared. To preserve sibling fields, use one or more granular paths:\n`comment`, `config.source_connection.name`, `config.include_tool_selectors`, or\n`config.rate_limits`.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "comment", + "description": "User-provided description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "config", + "description": "Connection, tool selectors, and rate limits. Required on Create. On Update,\nprovide this field when `update_mask` contains `config` or one of its\nsubpaths.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "McpServiceConfig", + "is_object": true + } + }, + { + "name": "create_time", + "description": "Time the MCP service was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "Creator identity.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_owner", + "description": "Owner of the MCP service.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Optimistic concurrency token returned on every read. To make an Update or\nDelete conditional, pass the last-read value in that request's `etag`\nfield. In REST responses, this value is a base64 string; URL-encode it when\nsetting the `etag` query parameter.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "Metastore hosting the MCP service.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`mcp_service_id`; required and immutable on Update/Get/Delete.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Time the MCP service was last modified.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "Identity of the last updater.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the MCP service.\nFormat: `mcp-services/{catalog}.{schema}.{mcp_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`mcp_service_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Use `config` to replace the entire configuration. The\nreplacement must include every required field; any optional field you omit\nis cleared. To preserve sibling fields, use one or more granular paths:\n`comment`, `config.source_connection.name`, `config.include_tool_selectors`, or\n`config.rate_limits`.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ] + }, + { + "name": "UpdateModelProviderService", + "description": "Updates a model provider service. Only the fields named in `update_mask`\nare changed; the resource name and provider type are immutable. Optionally\nsupply an `etag` to make the update conditional on the model provider\nservice not having changed since it was read.\n\nYou must be the owner of the model provider service or have `MANAGE` on\nit, plus `USE_CATALOG` on the parent catalog and `USE_SCHEMA` on the\nparent schema.\n\nUpdating `config.provider` cannot change the provider type. Authentication\nmode changes require feature availability and support for both modes on the\nselected provider.", + "summary": "Update a model provider service.", + "path": "/api/2.1/unity-catalog/{name=model-provider-services/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateModelProviderServiceRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the provider service.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`model_provider_service_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "model_provider_service", + "description": "The model provider service with the updated field values. `name`\nidentifies the resource\n(`model-provider-services/{catalog}.{schema}.{model_provider_service}`);\nonly fields listed in `update_mask` are applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelProviderService", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Use `config` to replace the entire configuration. The\nreplacement must include every required field; any optional field you omit\nis cleared. To preserve sibling fields, use one or more granular paths:\n`comment`; `config.provider` to replace the active provider-specific value\n(for example, `config.openai`; the mask path remains `config.provider`);\n`config.allow_all_targets`, `config.targets`, `config.forward_headers`,\n`config.forward_query_parameters`, `config.forward_unmanaged_paths`,\n`config.rate_limits`, `config.pricing.default_discount_basis_points`, or\n`config.inference_table`. For a pricing update, an explicitly empty `pricing`\nobject clears the discount but retains the object; omitting `pricing` clears\nit. `config.pricing` is not a supported mask path. The provider type is\nimmutable. A `config` or `config.provider` replacement that carries no\nauthentication material preserves the existing authentication binding;\ninput-only plaintext does not need to be read back and re-sent.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the provider service.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`model_provider_service_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Use `config` to replace the entire configuration. The\nreplacement must include every required field; any optional field you omit\nis cleared. To preserve sibling fields, use one or more granular paths:\n`comment`; `config.provider` to replace the active provider-specific value\n(for example, `config.openai`; the mask path remains `config.provider`);\n`config.allow_all_targets`, `config.targets`, `config.forward_headers`,\n`config.forward_query_parameters`, `config.forward_unmanaged_paths`,\n`config.rate_limits`, `config.pricing.default_discount_basis_points`, or\n`config.inference_table`. For a pricing update, an explicitly empty `pricing`\nobject clears the discount but retains the object; omitting `pricing` clears\nit. `config.pricing` is not a supported mask path. The provider type is\nimmutable. A `config` or `config.provider` replacement that carries no\nauthentication material preserves the existing authentication binding;\ninput-only plaintext does not need to be read back and re-sent.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "model_provider_service", + "description": "The model provider service with the updated field values. `name`\nidentifies the resource\n(`model-provider-services/{catalog}.{schema}.{model_provider_service}`);\nonly fields listed in `update_mask` are applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelProviderService", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "model_provider_service", + "description": "The model provider service with the updated field values. `name`\nidentifies the resource\n(`model-provider-services/{catalog}.{schema}.{model_provider_service}`);\nonly fields listed in `update_mask` are applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelProviderService", + "is_object": true + } + }, + "response": { + "pascal_name": "ModelProviderService", + "is_object": true + }, + "all_fields": [ + { + "name": "etag", + "description": "Optimistic concurrency token from the most recent read. When set, the\nupdate succeeds only if the resource has not changed. Leave unset for an\nunconditional update. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "model_provider_service", + "description": "The model provider service with the updated field values. `name`\nidentifies the resource\n(`model-provider-services/{catalog}.{schema}.{model_provider_service}`);\nonly fields listed in `update_mask` are applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelProviderService", + "is_object": true + } + }, + { + "name": "name", + "description": "Resource name of the provider service.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`model_provider_service_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Use `config` to replace the entire configuration. The\nreplacement must include every required field; any optional field you omit\nis cleared. To preserve sibling fields, use one or more granular paths:\n`comment`; `config.provider` to replace the active provider-specific value\n(for example, `config.openai`; the mask path remains `config.provider`);\n`config.allow_all_targets`, `config.targets`, `config.forward_headers`,\n`config.forward_query_parameters`, `config.forward_unmanaged_paths`,\n`config.rate_limits`, `config.pricing.default_discount_basis_points`, or\n`config.inference_table`. For a pricing update, an explicitly empty `pricing`\nobject clears the discount but retains the object; omitting `pricing` clears\nit. `config.pricing` is not a supported mask path. The provider type is\nimmutable. A `config` or `config.provider` replacement that carries no\nauthentication material preserves the existing authentication binding;\ninput-only plaintext does not need to be read back and re-sent.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "comment", + "description": "User-provided description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "config", + "description": "Provider authentication, exposed models, request-forwarding controls, rate\nlimits, and payload logging. Required on Create. On Update, it is required\nonly when `config` or one of its subpaths appears in `update_mask`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ModelProviderServiceConfig", + "is_object": true + } + }, + { + "name": "create_time", + "description": "Time the provider service was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "Creator identity.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_owner", + "description": "Owner of the model provider service.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Optimistic concurrency token returned on every read. To make an Update or\nDelete conditional, pass the last-read value in that request's `etag`\nfield. In REST responses, this value is a base64 string; URL-encode it when\nsetting the `etag` query parameter.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "Metastore hosting the provider service.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name of the provider service.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`model_provider_service_id`; required and immutable on Update/Get/Delete.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Time the provider service was last modified.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "Identity of the last updater.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the provider service.\nFormat: `model-provider-services/{catalog}.{schema}.{model_provider_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`model_provider_service_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Use `config` to replace the entire configuration. The\nreplacement must include every required field; any optional field you omit\nis cleared. To preserve sibling fields, use one or more granular paths:\n`comment`; `config.provider` to replace the active provider-specific value\n(for example, `config.openai`; the mask path remains `config.provider`);\n`config.allow_all_targets`, `config.targets`, `config.forward_headers`,\n`config.forward_query_parameters`, `config.forward_unmanaged_paths`,\n`config.rate_limits`, `config.pricing.default_discount_basis_points`, or\n`config.inference_table`. For a pricing update, an explicitly empty `pricing`\nobject clears the discount but retains the object; omitting `pricing` clears\nit. `config.pricing` is not a supported mask path. The provider type is\nimmutable. A `config` or `config.provider` replacement that carries no\nauthentication material preserves the existing authentication binding;\ninput-only plaintext does not need to be read back and re-sent.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ] + }, + { + "name": "UpdateModelService", + "description": "Updates a model service. Only the fields named in `update_mask` are\nchanged; the resource name is immutable. Optionally supply an `etag` to\nmake the update conditional on the model service not having changed since\nit was read.\n\nYou must be the owner of the model service or have `MANAGE` on it, plus\n`USE_CATALOG` on the parent catalog and `USE_SCHEMA` on the parent schema.\nWhen changing destinations, both you and the model service owner need\n`USE_CATALOG` and `USE_SCHEMA` on each destination's parent and `EXECUTE`\non the referenced Unity Catalog model or model provider service. A\nprovisioned-throughput destination additionally requires `CAN_MANAGE` for\nyou and `CAN_QUERY` for the model service owner. Adding an inference table\nadditionally requires `CREATE_TABLE`.", + "summary": "Update a model service.", + "path": "/api/2.1/unity-catalog/{name=model-services/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateModelServiceRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the model service.\nFormat: `model-services/{catalog}.{schema}.{model_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`model_service_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "model_service", + "description": "The model service with the updated field values. `name` identifies the\nresource (`model-services/{catalog}.{schema}.{model_service}`); only\nfields listed in `update_mask` are applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelService", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Use `config` to replace the entire configuration. The\nreplacement must include every required field; any optional field you omit\nis cleared. To preserve sibling fields, use one or more granular paths:\n`comment`, `config.routing.destinations`,\n`config.routing.fallback.destinations`,\n`config.rate_limits`, or `config.inference_table`. Intermediate paths such\nas `config.routing` and `config.routing.fallback` are not supported.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the model service.\nFormat: `model-services/{catalog}.{schema}.{model_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`model_service_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Use `config` to replace the entire configuration. The\nreplacement must include every required field; any optional field you omit\nis cleared. To preserve sibling fields, use one or more granular paths:\n`comment`, `config.routing.destinations`,\n`config.routing.fallback.destinations`,\n`config.rate_limits`, or `config.inference_table`. Intermediate paths such\nas `config.routing` and `config.routing.fallback` are not supported.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "model_service", + "description": "The model service with the updated field values. `name` identifies the\nresource (`model-services/{catalog}.{schema}.{model_service}`); only\nfields listed in `update_mask` are applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelService", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "model_service", + "description": "The model service with the updated field values. `name` identifies the\nresource (`model-services/{catalog}.{schema}.{model_service}`); only\nfields listed in `update_mask` are applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelService", + "is_object": true + } + }, + "response": { + "pascal_name": "ModelService", + "is_object": true + }, + "all_fields": [ + { + "name": "etag", + "description": "Optimistic concurrency token from the most recent read. When set, the\nupdate succeeds only if the resource has not changed. Leave unset for an\nunconditional update. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "model_service", + "description": "The model service with the updated field values. `name` identifies the\nresource (`model-services/{catalog}.{schema}.{model_service}`); only\nfields listed in `update_mask` are applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelService", + "is_object": true + } + }, + { + "name": "name", + "description": "Resource name of the model service.\nFormat: `model-services/{catalog}.{schema}.{model_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`model_service_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Use `config` to replace the entire configuration. The\nreplacement must include every required field; any optional field you omit\nis cleared. To preserve sibling fields, use one or more granular paths:\n`comment`, `config.routing.destinations`,\n`config.routing.fallback.destinations`,\n`config.rate_limits`, or `config.inference_table`. Intermediate paths such\nas `config.routing` and `config.routing.fallback` are not supported.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "comment", + "description": "User-provided description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "config", + "description": "Destinations, routing, rate limits, and payload logging configuration.\nRequired on Create. On Update, provide this field when `update_mask`\ncontains `config` or one of its subpaths.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ModelServiceConfig", + "is_object": true + } + }, + { + "name": "create_time", + "description": "Time the model service was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "Creator identity.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_owner", + "description": "Owner of the model service.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Optimistic concurrency token returned on every read. To make an Update or\nDelete conditional, pass the last-read value in that request's `etag`\nfield. In REST responses, this value is a base64 string; URL-encode it when\nsetting the `etag` query parameter.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "Metastore hosting the model service.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name of the model service.\nFormat: `model-services/{catalog}.{schema}.{model_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`model_service_id`; required and immutable on Update/Get/Delete.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "supported_api_types", + "description": "API types supported across this service's destinations, such as\n`openai/v1/chat/completions`, `openai/v1/embeddings`, and\n`mlflow/v1/chat/completions`. Derived from the backing models and providers\nat read time.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "update_time", + "description": "Time the model service was last modified.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "Identity of the last updater.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the model service.\nFormat: `model-services/{catalog}.{schema}.{model_service}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`model_service_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. Use `config` to replace the entire configuration. The\nreplacement must include every required field; any optional field you omit\nis cleared. To preserve sibling fields, use one or more granular paths:\n`comment`, `config.routing.destinations`,\n`config.routing.fallback.destinations`,\n`config.rate_limits`, or `config.inference_table`. Intermediate paths such\nas `config.routing` and `config.routing.fallback` are not supported.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ] + }, + { + "name": "UpdateSkill", + "description": "Updates a skill. Only fields named in `update_mask` are changed; currently\nonly `comment` is supported. The resource name is immutable. Optionally\nsupply an `etag` to make the update conditional on the skill not having\nchanged since it was read. Bundle files, grants, tags, and ownership are\nunchanged.\n\nYou must be the owner of the skill or have `MANAGE` on it, plus\n`USE_CATALOG` on the parent catalog and `USE_SCHEMA` on the parent schema.", + "summary": "Update a skill.", + "path": "/api/2.1/unity-catalog/{name=skills/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateSkillRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`skill_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "skill", + "description": "The skill with the updated field values. `name` identifies the resource\n(`skills/{catalog}.{schema}.{skill}`); only fields listed in `update_mask`\nare applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Skill", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Fields to update; validated against `skill`. REQUIRED, matching the sibling\nUpdate RPCs. `comment` is the only mutable field.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`skill_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update; validated against `skill`. REQUIRED, matching the sibling\nUpdate RPCs. `comment` is the only mutable field.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "skill", + "description": "The skill with the updated field values. `name` identifies the resource\n(`skills/{catalog}.{schema}.{skill}`); only fields listed in `update_mask`\nare applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Skill", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "skill", + "description": "The skill with the updated field values. `name` identifies the resource\n(`skills/{catalog}.{schema}.{skill}`); only fields listed in `update_mask`\nare applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Skill", + "is_object": true + } + }, + "response": { + "pascal_name": "Skill", + "is_object": true + }, + "all_fields": [ + { + "name": "etag", + "description": "Optimistic concurrency token from the most recent read. When set, the\nupdate succeeds only if the resource has not changed. Leave unset for an\nunconditional update. For REST requests, URL-encode the base64 string\nreturned by the API when setting the `etag` query parameter.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`skill_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "skill", + "description": "The skill with the updated field values. `name` identifies the resource\n(`skills/{catalog}.{schema}.{skill}`); only fields listed in `update_mask`\nare applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Skill", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Fields to update; validated against `skill`. REQUIRED, matching the sibling\nUpdate RPCs. `comment` is the only mutable field.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "bundle_name", + "description": "Name from the most recently successfully finalized SKILL.md. It may differ\nfrom the final component of the Skill resource name. Unset until\nFinalizeSkill succeeds.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "User-provided comment for the skill. Free-text, user-editable via\nUpdateSkill (listed in its `update_mask`). DISTINCT from `description`,\nwhich is the server-parsed, OUTPUT_ONLY SKILL.md frontmatter value: `comment`\nis the customer's own annotation and is preserved across bundle re-uploads.\nWhen `comment` is in the update mask, omitting it clears the field, while\nan explicitly empty string is retained.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Time the skill was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "Creator identity.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description from the most recently successfully finalized SKILL.md. Unset\nuntil FinalizeSkill succeeds.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_owner", + "description": "Owner of the skill.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Optimistic concurrency token returned on every read. To make an Update or\nDelete conditional, pass the last-read value in that request's `etag`\nfield. In REST responses, this value is a base64 string; URL-encode it when\nsetting the `etag` query parameter.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "finalize_time", + "description": "Time of the most recent successful FinalizeSkill. Unset until one succeeds.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "metastore_id", + "description": "Metastore hosting the skill.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`skill_id`; required and immutable on Update/Get/Delete.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Time of the most recent Skill metadata mutation. Uploading bundle files\nalone does not change this value.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "Identity of the last updater.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the skill.\nFormat: `skills/{catalog}.{schema}.{skill}`.\nEach `{...}` component is capped at 255 characters individually.\nServer-derived on Create from `parent` +\n`skill_id`; required and immutable on Update/Get/Delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update; validated against `skill`. REQUIRED, matching the sibling\nUpdate RPCs. `comment` is the only mutable field.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ] + } + ] + }, + { + "id": "aisearch.AiSearch", + "name": "AiSearch", + "description": "**AI Search Endpoint**: Represents the compute resources to host AI Search indexes. AIP-conformant replacement for the legacy VectorSearchEndpoints API; functionally equivalent.", + "package": { + "name": "aisearch" + }, + "docs_group": "aisearch", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "request": { + "pascal_name": "ListEndpointsRequest" + } + }, + "methods": [ + { + "name": "CreateEndpoint", + "description": "Create a new AI Search endpoint.", + "summary": "Create an AI Search endpoint.", + "path": "/api/2.0/ai-search/{parent=workspaces/*}/endpoints", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateEndpointRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "The Workspace where this Endpoint will be created.\nFormat: `workspaces/{workspace_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint", + "description": "The Endpoint resource to create. Fields other than `endpoint.name` carry the desired\nconfiguration; `endpoint.name` is server-assigned from `parent` and `endpoint_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The Workspace where this Endpoint will be created.\nFormat: `workspaces/{workspace_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "endpoint", + "description": "The Endpoint resource to create. Fields other than `endpoint.name` carry the desired\nconfiguration; `endpoint.name` is server-assigned from `parent` and `endpoint_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "endpoint", + "description": "The Endpoint resource to create. Fields other than `endpoint.name` carry the desired\nconfiguration; `endpoint.name` is server-assigned from `parent` and `endpoint_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "Endpoint", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "endpoint", + "description": "The Endpoint resource to create. Fields other than `endpoint.name` carry the desired\nconfiguration; `endpoint.name` is server-assigned from `parent` and `endpoint_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ] + } + }, + { + "name": "endpoint_id", + "description": "The user-supplied short name for the Endpoint, per AIP-133. The server composes the\nfull `Endpoint.name` as `{parent}/endpoints/{endpoint_id}`. AIP-133 does not list\n`endpoint_id` as a fields-may-be-required entry, so we annotate it OPTIONAL on the\nwire; the server still rejects empty values with INVALID_PARAMETER_VALUE.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The Workspace where this Endpoint will be created.\nFormat: `workspaces/{workspace_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "budget_policy_id", + "description": "The user-selected budget policy id for the endpoint.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Time the endpoint was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "creator", + "description": "Creator of the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_tags", + "description": "The custom tags assigned to the endpoint", + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTagList", + "array_value": { + "pascal_name": "CustomTag", + "is_object": true + } + } + }, + { + "name": "effective_budget_policy_id", + "description": "The budget policy id applied to the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_status", + "description": "Current status of the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EndpointStatus", + "is_object": true + } + }, + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + }, + { + "name": "id", + "description": "Unique identifier of the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_count", + "description": "Number of indexes on the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "last_updated_user", + "description": "User who last updated the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the AI Search endpoint. Server-assigned full resource path\n(`workspaces/{workspace}/endpoints/{endpoint}`) on output. On create, the\nuser-supplied short name is conveyed via `CreateEndpointRequest.endpoint_id`;\nthe server composes the full `name` and returns it on the response.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "replica_count", + "description": "The client-supplied desired number of replicas for the endpoint, applied at\ncreate/update time. Mutually exclusive with `target_qps`.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "scaling_info", + "description": "Scaling information for the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EndpointScalingInfo", + "is_object": true + } + }, + { + "name": "target_qps", + "description": "Target QPS for the endpoint. Mutually exclusive with `replica_count`. Best-effort;\nthe system does not guarantee this QPS will be achieved.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "throughput_info", + "description": "Throughput information for the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EndpointThroughputInfo", + "is_object": true + } + }, + { + "name": "update_time", + "description": "Time the endpoint was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "usage_policy_id", + "description": "The usage policy id applied to the endpoint.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The Workspace where this Endpoint will be created.\nFormat: `workspaces/{workspace_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ] + }, + { + "name": "CreateIndex", + "description": "Create a new AI Search index.", + "summary": "Create an AI Search index.", + "path": "/api/2.0/ai-search/{parent=workspaces/*/endpoints/*}/indexes", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateIndexRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "The Endpoint where this Index will be created.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "index", + "description": "The Index resource to create. Fields other than `index.name` carry the desired\nconfiguration; `index.name` is server-assigned from `parent` and `index_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Index", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The Endpoint where this Index will be created.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "index", + "description": "The Index resource to create. Fields other than `index.name` carry the desired\nconfiguration; `index.name` is server-assigned from `parent` and `index_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Index", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "index", + "description": "The Index resource to create. Fields other than `index.name` carry the desired\nconfiguration; `index.name` is server-assigned from `parent` and `index_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Index", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "primary_key", + "description": "Primary key of the index. Set on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_type", + "description": "Type of index. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IndexType", + "enum": [ + { + "content": "DELTA_SYNC" + }, + { + "content": "DIRECT_ACCESS" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "primary_key", + "description": "Primary key of the index. Set on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_type", + "description": "Type of index. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IndexType", + "enum": [ + { + "content": "DELTA_SYNC" + }, + { + "content": "DIRECT_ACCESS" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "Index", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "primary_key", + "description": "Primary key of the index. Set on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_type", + "description": "Type of index. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IndexType", + "enum": [ + { + "content": "DELTA_SYNC" + }, + { + "content": "DIRECT_ACCESS" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "primary_key", + "description": "Primary key of the index. Set on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_type", + "description": "Type of index. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IndexType", + "enum": [ + { + "content": "DELTA_SYNC" + }, + { + "content": "DIRECT_ACCESS" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "index", + "description": "The Index resource to create. Fields other than `index.name` carry the desired\nconfiguration; `index.name` is server-assigned from `parent` and `index_id`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Index", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "primary_key", + "description": "Primary key of the index. Set on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_type", + "description": "Type of index. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IndexType", + "enum": [ + { + "content": "DELTA_SYNC" + }, + { + "content": "DIRECT_ACCESS" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "primary_key", + "description": "Primary key of the index. Set on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_type", + "description": "Type of index. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IndexType", + "enum": [ + { + "content": "DELTA_SYNC" + }, + { + "content": "DIRECT_ACCESS" + } + ] + } + } + ] + } + }, + { + "name": "index_id", + "description": "The user-supplied Unity Catalog table name for the Index, per AIP-133. The server\ncomposes the full `Index.name` as `{parent}/indexes/{index_id}`. AIP-133 does not\nlist `index_id` as a fields-may-be-required entry, so we annotate it OPTIONAL on the\nwire; the server still rejects empty values with INVALID_PARAMETER_VALUE.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The Endpoint where this Index will be created.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "creator", + "description": "Creator of the index.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "delta_sync_index_spec", + "description": "Specification for a Delta Sync index. Set when `index_type` is `DELTA_SYNC`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DeltaSyncIndexSpec", + "is_object": true + } + }, + { + "name": "direct_access_index_spec", + "description": "Specification for a Direct Access index. Set when `index_type` is `DIRECT_ACCESS`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DirectAccessIndexSpec", + "is_object": true + } + }, + { + "name": "endpoint", + "description": "Name of the endpoint associated with the index. Ignored on create — the endpoint is\ntaken from `CreateIndexRequest.parent`; populated only on output.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_subtype", + "description": "The subtype of the index. Set on create and immutable thereafter.", + "is_request_body_field": true, + "entity": { + "pascal_name": "IndexSubtype", + "enum": [ + { + "content": "FULL_TEXT" + }, + { + "content": "HYBRID" + }, + { + "content": "VECTOR" + } + ] + } + }, + { + "name": "index_type", + "description": "Type of index. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IndexType", + "enum": [ + { + "content": "DELTA_SYNC" + }, + { + "content": "DIRECT_ACCESS" + } + ] + } + }, + { + "name": "name", + "description": "Name of the AI Search index. Server-assigned full resource path\n(`workspaces/{workspace}/endpoints/{endpoint}/indexes/{index}`) on output, where\n`{index}` is the index's Unity Catalog table name. On create, the user-supplied UC\ntable name is conveyed via `CreateIndexRequest.index_id`; the server composes the\nfull `name` and returns it on the response.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "primary_key", + "description": "Primary key of the index. Set on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Current status of the index.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IndexStatus", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The Endpoint where this Index will be created.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "primary_key", + "description": "Primary key of the index. Set on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_type", + "description": "Type of index. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IndexType", + "enum": [ + { + "content": "DELTA_SYNC" + }, + { + "content": "DIRECT_ACCESS" + } + ] + } + } + ] + }, + { + "name": "DeleteEndpoint", + "description": "Delete an AI Search endpoint.", + "summary": "Delete an AI Search endpoint.", + "path": "/api/2.0/ai-search/{name=workspaces/*/endpoints/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteEndpointRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name of the endpoint to delete.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name of the endpoint to delete.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Full resource name of the endpoint to delete.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name of the endpoint to delete.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteIndex", + "description": "Delete an AI Search index.", + "summary": "Delete an AI Search index.", + "path": "/api/2.0/ai-search/{name=workspaces/*/endpoints/*/indexes/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteIndexRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name of the index to delete.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name of the index to delete.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Full resource name of the index to delete.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name of the index to delete.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetEndpoint", + "description": "Get details for a single AI Search endpoint.", + "summary": "Get an AI Search endpoint.", + "path": "/api/2.0/ai-search/{name=workspaces/*/endpoints/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetEndpointRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name of the endpoint.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name of the endpoint.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Endpoint", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Full resource name of the endpoint.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name of the endpoint.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetIndex", + "description": "Get details for a single AI Search index.", + "summary": "Get an AI Search index.", + "path": "/api/2.0/ai-search/{name=workspaces/*/endpoints/*/indexes/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetIndexRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name of the index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name of the index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Index", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "primary_key", + "description": "Primary key of the index. Set on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_type", + "description": "Type of index. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IndexType", + "enum": [ + { + "content": "DELTA_SYNC" + }, + { + "content": "DIRECT_ACCESS" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "primary_key", + "description": "Primary key of the index. Set on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_type", + "description": "Type of index. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IndexType", + "enum": [ + { + "content": "DELTA_SYNC" + }, + { + "content": "DIRECT_ACCESS" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Full resource name of the index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name of the index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListEndpoints", + "description": "List AI Search endpoints in a workspace.", + "summary": "List AI Search endpoints.", + "path": "/api/2.0/ai-search/{parent=workspaces/*}/endpoints", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListEndpointsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The Workspace that owns this collection of endpoints.\nFormat: `workspaces/{workspace_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The Workspace that owns this collection of endpoints.\nFormat: `workspaces/{workspace_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListEndpointsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Best-effort upper bound on the number of results to return. Honored as an upper\nbound by the shim: `page_size` only narrows the legacy backend's response, never\nwidens it, so the practical cap is `min(page_size, legacy_fixed_page_size)`.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Page token from a previous response. If not provided, returns the first page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The Workspace that owns this collection of endpoints.\nFormat: `workspaces/{workspace_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The Workspace that owns this collection of endpoints.\nFormat: `workspaces/{workspace_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Page token from a previous response. If not provided, returns the first page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListIndexes", + "description": "List AI Search indexes on an endpoint.", + "summary": "List AI Search indexes.", + "path": "/api/2.0/ai-search/{parent=workspaces/*/endpoints/*}/indexes", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListIndexesRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The Endpoint that owns this collection of indexes.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The Endpoint that owns this collection of indexes.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListIndexesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Best-effort upper bound on the number of results to return. Honored as an upper\nbound by the shim: `page_size` only narrows the legacy backend's response, never\nwidens it, so the practical cap is `min(page_size, legacy_fixed_page_size)`.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Page token from a previous response. If not provided, returns the first page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The Endpoint that owns this collection of indexes.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The Endpoint that owns this collection of indexes.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Page token from a previous response. If not provided, returns the first page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "QueryIndex", + "description": "Query (search) an AI Search index. Read-only, so a read-scoped token may invoke it.", + "summary": "Query an AI Search index.", + "path": "/api/2.0/ai-search/{name=workspaces/*/endpoints/*/indexes/*}:query", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "QueryIndexRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name of the index to query.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "columns", + "description": "Column names to include in each result row.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name of the index to query.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "columns", + "description": "Column names to include in each result row.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + }, + "response": { + "pascal_name": "QueryIndexResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "columns", + "description": "Column names to include in each result row.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "columns_to_rerank", + "description": "Columns whose values are sent to the reranker.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "facets", + "description": "Facets to compute over the matched results (e.g. `\"category TOP 5\"`).", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "filters_json", + "description": "JSON string describing query filters (e.g. `{\"id \u003e\": 5}`).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_results", + "description": "Maximum number of results to return (the legacy `num_results`). Defaults to 10.\nPrefer `page_size`; when both are set, `page_size` takes precedence.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "name", + "description": "Full resource name of the index to query.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_columns", + "description": "Text columns to search for `query_text`. When empty, all text columns are searched.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "query_text", + "description": "Query text. Required for Delta Sync indexes that compute embeddings from a model endpoint.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_type", + "description": "Query type: `ANN`, `HYBRID`, or `FULL_TEXT`. Defaults to `ANN`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_vector", + "description": "Query vector. Required for Direct Access indexes and Delta Sync indexes with self-managed\nvectors.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_float64": true + } + } + }, + { + "name": "reranker", + "description": "If set, results are reranked before being returned.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RerankerConfig", + "is_object": true + } + }, + { + "name": "score_threshold", + "description": "Score threshold for the approximate nearest-neighbor search. Defaults to 0.0.", + "is_request_body_field": true, + "entity": { + "is_float64": true + } + }, + { + "name": "sort_columns", + "description": "Sort clauses, e.g. `[\"rating DESC\", \"price ASC\"]`. Overrides relevance ordering.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name of the index to query.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "RemoveData", + "description": "Remove rows by primary key from a Direct Access AI Search index.", + "summary": "Remove data from an AI Search index.", + "path": "/api/2.0/ai-search/{name=workspaces/*/endpoints/*/indexes/*}:removeData", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "RemoveDataRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name of the index. Must be a Direct Access index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "primary_keys", + "description": "Primary keys of the rows to remove.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name of the index. Must be a Direct Access index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "primary_keys", + "description": "Primary keys of the rows to remove.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + }, + "response": { + "pascal_name": "RemoveDataResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Full resource name of the index. Must be a Direct Access index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "primary_keys", + "description": "Primary keys of the rows to remove.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name of the index. Must be a Direct Access index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ScanIndex", + "description": "Scan (paginate over) the rows of an AI Search index.", + "summary": "Scan an AI Search index.", + "path": "/api/2.0/ai-search/{name=workspaces/*/endpoints/*/indexes/*}:scan", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ScanIndexRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name of the index to scan.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name of the index to scan.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ScanIndexResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Full resource name of the index to scan.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Maximum number of rows to return in this page.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Page token from a previous response; if unset, scanning starts from the beginning.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name of the index to scan.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SyncIndex", + "description": "Synchronize a Delta Sync AI Search index with its source Delta table. Applies only to\nDelta Sync indexes; Direct Access indexes are written via the data-plane upsert path.", + "summary": "Synchronize an AI Search index.", + "path": "/api/2.0/ai-search/{name=workspaces/*/endpoints/*/indexes/*}:sync", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "SyncIndexRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name of the index to synchronize. Must be a Delta Sync index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name of the index to synchronize. Must be a Delta Sync index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SyncIndexResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Full resource name of the index to synchronize. Must be a Delta Sync index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name of the index to synchronize. Must be a Delta Sync index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateEndpoint", + "description": "Update an existing AI Search endpoint. Multi-bucket masks are supported and\ndispatched in deterministic bucket order: budget policy, custom tags, throughput,\nthen scaling/replicas. Per-bucket dispatch is not atomic across buckets — if a\nlater bucket fails, earlier buckets may already have been applied.", + "summary": "Update an AI Search endpoint.", + "path": "/api/2.0/ai-search/{name=workspaces/*/endpoints/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateEndpointRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the AI Search endpoint. Server-assigned full resource path\n(`workspaces/{workspace}/endpoints/{endpoint}`) on output. On create, the\nuser-supplied short name is conveyed via `CreateEndpointRequest.endpoint_id`;\nthe server composes the full `name` and returns it on the response.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint", + "description": "The Endpoint resource to update. `endpoint.name` carries the full resource path.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the AI Search endpoint. Server-assigned full resource path\n(`workspaces/{workspace}/endpoints/{endpoint}`) on output. On create, the\nuser-supplied short name is conveyed via `CreateEndpointRequest.endpoint_id`;\nthe server composes the full `name` and returns it on the response.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "endpoint", + "description": "The Endpoint resource to update. `endpoint.name` carries the full resource path.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "endpoint", + "description": "The Endpoint resource to update. `endpoint.name` carries the full resource path.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "Endpoint", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "endpoint", + "description": "The Endpoint resource to update. `endpoint.name` carries the full resource path.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ] + } + }, + { + "name": "name", + "description": "Name of the AI Search endpoint. Server-assigned full resource path\n(`workspaces/{workspace}/endpoints/{endpoint}`) on output. On create, the\nuser-supplied short name is conveyed via `CreateEndpointRequest.endpoint_id`;\nthe server composes the full `name` and returns it on the response.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "budget_policy_id", + "description": "The user-selected budget policy id for the endpoint.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Time the endpoint was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "creator", + "description": "Creator of the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_tags", + "description": "The custom tags assigned to the endpoint", + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTagList", + "array_value": { + "pascal_name": "CustomTag", + "is_object": true + } + } + }, + { + "name": "effective_budget_policy_id", + "description": "The budget policy id applied to the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_status", + "description": "Current status of the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EndpointStatus", + "is_object": true + } + }, + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + }, + { + "name": "id", + "description": "Unique identifier of the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_count", + "description": "Number of indexes on the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "last_updated_user", + "description": "User who last updated the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the AI Search endpoint. Server-assigned full resource path\n(`workspaces/{workspace}/endpoints/{endpoint}`) on output. On create, the\nuser-supplied short name is conveyed via `CreateEndpointRequest.endpoint_id`;\nthe server composes the full `name` and returns it on the response.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "replica_count", + "description": "The client-supplied desired number of replicas for the endpoint, applied at\ncreate/update time. Mutually exclusive with `target_qps`.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "scaling_info", + "description": "Scaling information for the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EndpointScalingInfo", + "is_object": true + } + }, + { + "name": "target_qps", + "description": "Target QPS for the endpoint. Mutually exclusive with `replica_count`. Best-effort;\nthe system does not guarantee this QPS will be achieved.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "throughput_info", + "description": "Throughput information for the endpoint", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EndpointThroughputInfo", + "is_object": true + } + }, + { + "name": "update_time", + "description": "Time the endpoint was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "usage_policy_id", + "description": "The usage policy id applied to the endpoint.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the AI Search endpoint. Server-assigned full resource path\n(`workspaces/{workspace}/endpoints/{endpoint}`) on output. On create, the\nuser-supplied short name is conveyed via `CreateEndpointRequest.endpoint_id`;\nthe server composes the full `name` and returns it on the response.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "endpoint_type", + "description": "Type of endpoint. Required on create and immutable thereafter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ] + }, + { + "name": "UpsertData", + "description": "Upsert rows into a Direct Access AI Search index.", + "summary": "Upsert data into an AI Search index.", + "path": "/api/2.0/ai-search/{name=workspaces/*/endpoints/*/indexes/*}:upsertData", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpsertDataRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name of the index. Must be a Direct Access index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "inputs_json", + "description": "JSON document describing the rows to upsert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name of the index. Must be a Direct Access index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "inputs_json", + "description": "JSON document describing the rows to upsert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpsertDataResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "inputs_json", + "description": "JSON document describing the rows to upsert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Full resource name of the index. Must be a Direct Access index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name of the index. Must be a Direct Access index.\nFormat: `workspaces/{workspace_id}/endpoints/{endpoint_id}/indexes/{index_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "inputs_json", + "description": "JSON document describing the rows to upsert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "settings.AibiDashboardEmbeddingAccessPolicy", + "name": "AibiDashboardEmbeddingAccessPolicy", + "description": "Controls whether AI/BI published dashboard embedding is enabled, conditionally enabled, or disabled at the workspace level.\nBy default, this setting is conditionally enabled (ALLOW_APPROVED_DOMAINS).", + "package": { + "name": "settings" + }, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "Delete", + "description": "Delete the AI/BI dashboard embedding access policy, reverting back to the default.", + "summary": "Delete the AI/BI dashboard embedding access policy.", + "path": "/api/2.0/settings/types/aibi_dash_embed_ws_acc_policy/names/default", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteAibiDashboardEmbeddingAccessPolicySettingRequest", + "is_object": true + }, + "response": { + "pascal_name": "DeleteAibiDashboardEmbeddingAccessPolicySettingResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Retrieves the AI/BI dashboard embedding access policy.\nThe default setting is ALLOW_APPROVED_DOMAINS, permitting AI/BI dashboards to be embedded on approved domains.", + "summary": "Retrieve the AI/BI dashboard embedding access policy.", + "path": "/api/2.0/settings/types/aibi_dash_embed_ws_acc_policy/names/default", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetAibiDashboardEmbeddingAccessPolicySettingRequest", + "is_object": true + }, + "response": { + "pascal_name": "AibiDashboardEmbeddingAccessPolicySetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "aibi_dashboard_embedding_access_policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingAccessPolicy", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "aibi_dashboard_embedding_access_policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingAccessPolicy", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the AI/BI dashboard embedding access policy at the workspace level.", + "summary": "Update the AI/BI dashboard embedding access policy.", + "path": "/api/2.0/settings/types/aibi_dash_embed_ws_acc_policy/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateAibiDashboardEmbeddingAccessPolicySettingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingAccessPolicySetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingAccessPolicySetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AibiDashboardEmbeddingAccessPolicySetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "aibi_dashboard_embedding_access_policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingAccessPolicy", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "aibi_dashboard_embedding_access_policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingAccessPolicy", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingAccessPolicySetting", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "settings.AibiDashboardEmbeddingApprovedDomains", + "name": "AibiDashboardEmbeddingApprovedDomains", + "description": "Controls the list of domains approved to host the embedded AI/BI dashboards.\nThe approved domains list can't be mutated when the current access policy is not set to ALLOW_APPROVED_DOMAINS.", + "package": { + "name": "settings" + }, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "Delete", + "description": "Delete the list of domains approved to host embedded AI/BI dashboards, reverting back to the default empty list.", + "summary": "Delete AI/BI dashboard embedding approved domains.", + "path": "/api/2.0/settings/types/aibi_dash_embed_ws_apprvd_domains/names/default", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteAibiDashboardEmbeddingApprovedDomainsSettingRequest", + "is_object": true + }, + "response": { + "pascal_name": "DeleteAibiDashboardEmbeddingApprovedDomainsSettingResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Retrieves the list of domains approved to host embedded AI/BI dashboards.", + "summary": "Retrieve the list of domains approved to host embedded AI/BI dashboards.", + "path": "/api/2.0/settings/types/aibi_dash_embed_ws_apprvd_domains/names/default", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetAibiDashboardEmbeddingApprovedDomainsSettingRequest", + "is_object": true + }, + "response": { + "pascal_name": "AibiDashboardEmbeddingApprovedDomainsSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "aibi_dashboard_embedding_approved_domains", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingApprovedDomains", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "aibi_dashboard_embedding_approved_domains", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingApprovedDomains", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the list of domains approved to host embedded AI/BI dashboards.\nThis update will fail if the current workspace access policy is not ALLOW_APPROVED_DOMAINS.", + "summary": "Update the list of domains approved to host embedded AI/BI dashboards.", + "path": "/api/2.0/settings/types/aibi_dash_embed_ws_apprvd_domains/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateAibiDashboardEmbeddingApprovedDomainsSettingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingApprovedDomainsSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingApprovedDomainsSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AibiDashboardEmbeddingApprovedDomainsSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "aibi_dashboard_embedding_approved_domains", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingApprovedDomains", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "aibi_dashboard_embedding_approved_domains", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingApprovedDomains", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingApprovedDomainsSetting", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "sql.Alerts", + "name": "Alerts", + "description": "The alerts API can be used to perform CRUD operations on alerts. An alert is a Databricks SQL\nobject that periodically runs a query, evaluates a condition of its result, and notifies one\nor more users and/or notification destinations if the condition was met.\nAlerts can be scheduled using the `sql_task` type of the Jobs API, e.g. :method:jobs/create.", + "package": { + "name": "sql" + }, + "docs_group": "sql", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "ListAlertsResponseAlertDisplayNameToIdMap" + }, + "request": { + "pascal_name": "ListAlertsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates an alert.", + "summary": "Create an alert.", + "path": "/api/2.0/sql/alerts", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateAlertRequest", + "is_object": true + }, + "response": { + "pascal_name": "Alert", + "is_object": true + }, + "all_fields": [ + { + "name": "alert", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CreateAlertRequestAlert", + "is_object": true + } + }, + { + "name": "auto_resolve_display_name", + "description": "If true, automatically resolve alert display name conflicts. Otherwise, fail the request if the alert's display name conflicts with an existing alert's display name.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ] + }, + { + "name": "Delete", + "description": "Moves an alert to the trash. Trashed alerts immediately disappear from searches and list views, and can no longer trigger. You can restore a trashed alert through the UI. A trashed alert is permanently deleted after 30 days.", + "summary": "Delete an alert.", + "path": "/api/2.0/sql/alerts/{id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "TrashAlertRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Empty", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets an alert.", + "summary": "Get an alert.", + "path": "/api/2.0/sql/alerts/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAlertRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Alert", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets a list of alerts accessible to the user, ordered by creation time. **Warning:** Calling this API concurrently 10 or more times could result in throttling, service degradation, or a temporary ban.", + "summary": "List alerts.", + "path": "/api/2.0/sql/alerts", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAlertsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListAlertsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Updates an alert.", + "summary": "Update an alert.", + "path": "/api/2.0/sql/alerts/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateAlertRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Alert", + "is_object": true + }, + "all_fields": [ + { + "name": "alert", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "UpdateAlertRequestAlert", + "is_object": true + } + }, + { + "name": "auto_resolve_display_name", + "description": "If true, automatically resolve alert display name conflicts. Otherwise, fail the request if the alert's display name conflicts with an existing alert's display name.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "sql.AlertsLegacy", + "name": "AlertsLegacy", + "description": "The alerts API can be used to perform CRUD operations on alerts. An alert is a Databricks SQL\nobject that periodically runs a query, evaluates a condition of its result, and notifies one\nor more users and/or notification destinations if the condition was met.\nAlerts can be scheduled using the `sql_task` type of the Jobs API, e.g. :method:jobs/create.\n\n**Warning**: This API is deprecated. Please see the latest version of the Databricks SQL API. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "package": { + "name": "sql" + }, + "docs_group": "sql", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "methods": [ + { + "name": "Create", + "description": "Creates an alert.\nAn alert is a Databricks SQL object that periodically runs a query, evaluates a condition of its result,\nand notifies users or notification destinations if the condition was met.\n\n**Warning**: This API is deprecated. Please use :method:alerts/create instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Create an alert.", + "path": "/api/2.0/preview/sql/alerts", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateAlert", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "Alert configuration options.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertOptions", + "is_object": true + } + }, + { + "name": "query_id", + "description": "Query ID.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "Alert configuration options.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertOptions", + "is_object": true + } + }, + { + "name": "query_id", + "description": "Query ID.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "LegacyAlert", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "Alert configuration options.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertOptions", + "is_object": true + } + }, + { + "name": "parent", + "description": "The identifier of the workspace folder containing the object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_id", + "description": "Query ID.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "rearm", + "description": "Number of seconds after being triggered before the alert rearms itself and can be triggered again. If `null`, alert will never be triggered again.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes an alert. Deleted alerts are no longer accessible and cannot be restored.\n**Note**: Unlike queries and dashboards, alerts cannot be moved to the trash.\n\n**Warning**: This API is deprecated. Please use :method:alerts/delete instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Delete an alert.", + "path": "/api/2.0/preview/sql/alerts/{alert_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteAlertsLegacyRequest", + "is_object": true, + "required_fields": [ + { + "name": "alert_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "alert_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "alert_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "alert_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets an alert.\n\n**Warning**: This API is deprecated. Please use :method:alerts/get instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Get an alert.", + "path": "/api/2.0/preview/sql/alerts/{alert_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetAlertsLegacyRequest", + "is_object": true, + "required_fields": [ + { + "name": "alert_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "alert_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "LegacyAlert", + "is_object": true + }, + "all_fields": [ + { + "name": "alert_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "alert_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets a list of alerts.\n\n**Warning**: This API is deprecated. Please use :method:alerts/list instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Get alerts.", + "path": "/api/2.0/preview/sql/alerts", + "is_legacy_empty_request": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListRequest", + "is_object": true + }, + "response": { + "pascal_name": "LegacyAlertList", + "array_value": { + "pascal_name": "LegacyAlert", + "is_object": true + } + } + }, + { + "name": "Update", + "description": "Updates an alert.\n\n**Warning**: This API is deprecated. Please use :method:alerts/update instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Update an alert.", + "path": "/api/2.0/preview/sql/alerts/{alert_id}", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "EditAlert", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "alert_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "Alert configuration options.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertOptions", + "is_object": true + } + }, + { + "name": "query_id", + "description": "Query ID.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "alert_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "Alert configuration options.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertOptions", + "is_object": true + } + }, + { + "name": "query_id", + "description": "Query ID.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "alert_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "Alert configuration options.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertOptions", + "is_object": true + } + }, + { + "name": "query_id", + "description": "Query ID.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "rearm", + "description": "Number of seconds after being triggered before the alert rearms itself and can be triggered again. If `null`, alert will never be triggered again.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ], + "required_positional_arguments": [ + { + "name": "alert_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "sql.AlertsV2", + "name": "AlertsV2", + "description": "New version of SQL Alerts", + "package": { + "name": "sql" + }, + "docs_group": "sql", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "AlertV2DisplayNameToIdMap" + }, + "request": { + "pascal_name": "ListAlertsV2Request" + } + }, + "methods": [ + { + "name": "CreateAlert", + "description": "Create Alert", + "summary": "Create an alert.", + "path": "/api/2.0/alerts", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateAlertV2Request", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "alert", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "alert", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "alert", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + } + }, + "response": { + "pascal_name": "AlertV2", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "alert", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + } + }, + { + "name": "create_time", + "description": "The timestamp indicating when the alert was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_description", + "description": "Custom description for the alert. support mustache template.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_summary", + "description": "Custom summary for the alert. support mustache template.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_template_format", + "description": "The format used to interpret the `custom_summary` and `custom_description` templates.\n\n`HTML` treats both templates as HTML with Mustache `{{VARIABLE_NAME}}` placeholders.\n`MARKDOWN` treats them as Markdown with allowlisted `@VARIABLE_NAME` placeholders and converts\nthem to the format each notification destination expects, so a single template renders\ncorrectly in email, Slack, and Microsoft Teams.\n\nWhen unset, the API applies no default. Responses omit the field unless a format is stored,\nand a template with no format is rendered as HTML.", + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTemplateFormat", + "enum": [ + { + "content": "HTML" + }, + { + "content": "MARKDOWN" + } + ] + } + }, + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_run_as", + "description": "The actual identity that will be used to execute the alert.\nThis is an output-only field that shows the resolved run-as identity after applying\npermissions and defaults.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AlertV2RunAs", + "is_object": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "id", + "description": "The canonical identifier of the alert to retrieve information about.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "lifecycle_state", + "description": "Indicates whether the query is trashed.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertLifecycleState", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "DELETED" + } + ] + } + }, + { + "name": "owner_user_name", + "description": "The owner's username. This field is set to \"Unavailable\" if the user has been deleted.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parameters", + "description": "A list of parameters to pass into the alert SQL query statement containing parameter markers. Static values only.\n\nReference a parameter in the query text as `:name`. Each parameter must have a unique, non-empty name.\nEach parameter consists of a name, a value, and optionally a type. To represent a NULL\nvalue, the `value` field may be omitted or set to `null` explicitly. If the `type` field\nis omitted, the value is interpreted as a string.\n\nIf the type is given, parameters will be checked for type correctness according\nto the given type. A value is correct if the provided string can be converted to\nthe requested type using the `cast` function. The exact semantics are described in\nthe section [`cast` function](https://docs.databricks.com/sql/language-manual/functions/cast.html) of the SQL language reference.", + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertStatementParameterList", + "array_value": { + "pascal_name": "AlertStatementParameter", + "is_object": true + } + } + }, + { + "name": "parent_path", + "description": "The workspace path of the folder containing the alert. Can only be set on create, and cannot be updated.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_as", + "description": "Specifies the identity that will be used to run the alert.\nThis field allows you to configure alerts to run as a specific user or service principal.\n- For user identity: Set `user_name` to the email of an active workspace user. Users can only set this to their own email.\n- For service principal: Set `service_principal_name` to the application ID. Requires the `servicePrincipal/user` role.\nIf not specified, the alert will run as the request user.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AlertV2RunAs", + "is_object": true + } + }, + { + "name": "run_as_user_name", + "description": "The run as username or application ID of service principal.\nOn Create and Update, this field can be set to application ID of an active service principal. Setting this field requires the servicePrincipal/user role.\nDeprecated: Use `run_as` field instead. This field will be removed in a future release.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + }, + { + "name": "update_time", + "description": "The timestamp indicating when the alert was updated.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + }, + { + "name": "GetAlert", + "description": "Gets an alert.", + "summary": "Get an alert.", + "path": "/api/2.0/alerts/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAlertV2Request", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AlertV2", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListAlerts", + "description": "Gets a list of alerts accessible to the user, ordered by creation time.", + "summary": "List alerts.", + "path": "/api/2.0/alerts", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAlertsV2Request", + "is_object": true + }, + "response": { + "pascal_name": "ListAlertsV2Response", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "TrashAlert", + "description": "Moves an alert to the trash. Trashed alerts immediately disappear from list views, and can no longer trigger. You can restore a trashed alert through the UI. A trashed alert is permanently deleted after 30 days.", + "summary": "Delete an alert (legacy TrashAlert).", + "path": "/api/2.0/alerts/{id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "TrashAlertV2Request", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Empty", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "purge", + "description": "Whether to permanently delete the alert. If not set, the alert will only be soft deleted.", + "is_query": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateAlert", + "description": "Update alert", + "summary": "Update an alert.", + "path": "/api/2.0/alerts/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateAlertV2Request", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "description": "The canonical identifier of the alert to retrieve information about.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "alert", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "The canonical identifier of the alert to retrieve information about.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "alert", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "alert", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + } + }, + "response": { + "pascal_name": "AlertV2", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "alert", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + } + }, + { + "name": "id", + "description": "The canonical identifier of the alert to retrieve information about.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "The timestamp indicating when the alert was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_description", + "description": "Custom description for the alert. support mustache template.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_summary", + "description": "Custom summary for the alert. support mustache template.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_template_format", + "description": "The format used to interpret the `custom_summary` and `custom_description` templates.\n\n`HTML` treats both templates as HTML with Mustache `{{VARIABLE_NAME}}` placeholders.\n`MARKDOWN` treats them as Markdown with allowlisted `@VARIABLE_NAME` placeholders and converts\nthem to the format each notification destination expects, so a single template renders\ncorrectly in email, Slack, and Microsoft Teams.\n\nWhen unset, the API applies no default. Responses omit the field unless a format is stored,\nand a template with no format is rendered as HTML.", + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTemplateFormat", + "enum": [ + { + "content": "HTML" + }, + { + "content": "MARKDOWN" + } + ] + } + }, + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_run_as", + "description": "The actual identity that will be used to execute the alert.\nThis is an output-only field that shows the resolved run-as identity after applying\npermissions and defaults.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AlertV2RunAs", + "is_object": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "id", + "description": "The canonical identifier of the alert to retrieve information about.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "lifecycle_state", + "description": "Indicates whether the query is trashed.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertLifecycleState", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "DELETED" + } + ] + } + }, + { + "name": "owner_user_name", + "description": "The owner's username. This field is set to \"Unavailable\" if the user has been deleted.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parameters", + "description": "A list of parameters to pass into the alert SQL query statement containing parameter markers. Static values only.\n\nReference a parameter in the query text as `:name`. Each parameter must have a unique, non-empty name.\nEach parameter consists of a name, a value, and optionally a type. To represent a NULL\nvalue, the `value` field may be omitted or set to `null` explicitly. If the `type` field\nis omitted, the value is interpreted as a string.\n\nIf the type is given, parameters will be checked for type correctness according\nto the given type. A value is correct if the provided string can be converted to\nthe requested type using the `cast` function. The exact semantics are described in\nthe section [`cast` function](https://docs.databricks.com/sql/language-manual/functions/cast.html) of the SQL language reference.", + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertStatementParameterList", + "array_value": { + "pascal_name": "AlertStatementParameter", + "is_object": true + } + } + }, + { + "name": "parent_path", + "description": "The workspace path of the folder containing the alert. Can only be set on create, and cannot be updated.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_as", + "description": "Specifies the identity that will be used to run the alert.\nThis field allows you to configure alerts to run as a specific user or service principal.\n- For user identity: Set `user_name` to the email of an active workspace user. Users can only set this to their own email.\n- For service principal: Set `service_principal_name` to the application ID. Requires the `servicePrincipal/user` role.\nIf not specified, the alert will run as the request user.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AlertV2RunAs", + "is_object": true + } + }, + { + "name": "run_as_user_name", + "description": "The run as username or application ID of service principal.\nOn Create and Update, this field can be set to application ID of an active service principal. Setting this field requires the servicePrincipal/user role.\nDeprecated: Use `run_as` field instead. This field will be removed in a future release.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + }, + { + "name": "update_time", + "description": "The timestamp indicating when the alert was updated.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "The canonical identifier of the alert to retrieve information about.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "The display name of the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_text", + "description": "Text of the query to be run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "ID of the SQL warehouse attached to the alert.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "evaluation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AlertV2Evaluation", + "is_object": true + } + }, + { + "name": "schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "apps.Apps", + "name": "Apps", + "description": "Apps run directly on a customer's Databricks instance, integrate with their data, use and extend Databricks services, and enable users to interact through single sign-on.", + "package": { + "name": "apps" + }, + "docs_group": "apps", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListAppsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new app.", + "summary": "Create an app.", + "path": "/api/2.0/apps", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateAppRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "app", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "App", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "app", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "App", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "app", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "App", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "App", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "app", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "App", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "no_compute", + "description": "If true, the app will not be started after creation.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "active_deployment", + "description": "The active deployment of the app. A deployment is considered active when it has been deployed\nto the app compute.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AppDeployment", + "is_object": true + } + }, + { + "name": "app_status", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ApplicationStatus", + "is_object": true + } + }, + { + "name": "budget_policy_id", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "compute_max_instances", + "description": "Maximum number of app instances the app is configured to run. Must be set together with `compute_min_instances`.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "compute_min_instances", + "description": "Minimum number of app instances the app is configured to run. Must be set together with `compute_max_instances`.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "compute_size", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComputeSize", + "enum": [ + { + "content": "LARGE" + }, + { + "content": "MEDIUM" + }, + { + "content": "XLARGE" + } + ] + } + }, + { + "name": "compute_status", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ComputeStatus", + "is_object": true + } + }, + { + "name": "create_time", + "description": "The creation time of the app. Formatted timestamp in ISO 6801.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "creator", + "description": "The email of the user that created the app.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "default_git_source", + "description": "The Git source of the app's most recent active deployment, including the repository\nconfiguration and the resolved reference. Populated by the system after a Git-based\ndeployment and used as the default reference when automatic deployments are enabled.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GitSource", + "is_object": true + } + }, + { + "name": "default_source_code_path", + "description": "The default workspace file system path of the source code from which app deployment are\ncreated. This field tracks the workspace source code path of the last active deployment.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "The description of the app.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_budget_policy_id", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_usage_policy_id", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_user_api_scopes", + "description": "The effective api scopes granted to the user access token.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "forward_user_access_token", + "description": "Forward the user's access token to the app. Requires stopping and starting app compute to take effect.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "git_repository", + "description": "Git repository configuration for app deployments. When specified, deployments can\nreference code from this repository by providing only the git reference (branch, tag, or commit).", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GitRepository", + "is_object": true + } + }, + { + "name": "git_source", + "description": "The Git source to deploy from, specifying the reference to check out (branch, tag, or\ncommit) and an optional path to the app source code within the repository configured in\ngit_repository.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GitSource", + "is_object": true + } + }, + { + "name": "id", + "description": "The unique identifier of the app.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "oauth2_app_client_id", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "oauth2_app_integration_id", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "pending_deployment", + "description": "The pending deployment of the app. A deployment is considered pending when it is being prepared\nfor deployment to the app compute.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AppDeployment", + "is_object": true + } + }, + { + "name": "resources", + "description": "Resources for the app.", + "is_request_body_field": true, + "entity": { + "pascal_name": "AppResourceList", + "array_value": { + "pascal_name": "AppResource", + "is_object": true + } + } + }, + { + "name": "service_principal_client_id", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "service_principal_name", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_code_path", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "space", + "description": "Name of the space this app belongs to.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "telemetry_export_destinations", + "is_request_body_field": true, + "entity": { + "pascal_name": "TelemetryExportDestinationList", + "array_value": { + "pascal_name": "TelemetryExportDestination", + "is_object": true + } + } + }, + { + "name": "thumbnail_url", + "description": "The URL of the thumbnail image for the app.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "The update time of the app. Formatted timestamp in ISO 6801.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "updater", + "description": "The email of the user that last updated the app.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "url", + "description": "The URL of the app once it is deployed.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "usage_policy_id", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "user_api_scopes", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "ACTIVE" + } + ], + "timeout": 20, + "complex_message_path": true, + "poll": { + "response": { + "pascal_name": "App" + } + }, + "status_path": [ + { + "pascal_name": "ComputeStatus" + }, + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "ComputeStatus" + }, + { + "pascal_name": "Message" + } + ], + "message_path_head": { + "pascal_name": "ComputeStatus" + } + } + }, + { + "name": "CreateSpace", + "description": "Creates a new app space.", + "summary": "Create an app space.", + "path": "/api/2.0/app-spaces", + "can_use_json": true, + "is_crud_create": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateSpaceRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "space", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Space", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "space", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Space", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "space", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Space", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "space", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Space", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "assume_group_id", + "description": "The group whose permissions users assume via Role Authorization for apps in this space. When\nset, user tokens assume the role of this group instead of doing regular obo token downscoping.\nSet only at space creation.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "The creation time of the app space. Formatted timestamp in ISO 6801.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "creator", + "description": "The email of the user that created the app space.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "The description of the app space.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_usage_policy_id", + "description": "The effective usage policy ID used by apps in the space.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_user_api_scopes", + "description": "The effective api scopes granted to the user access token.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "id", + "description": "The unique identifier of the app space.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "resources", + "description": "Resources for the app space. Resources configured at the space level are available to all apps in the space.", + "is_request_body_field": true, + "entity": { + "pascal_name": "AppResourceList", + "array_value": { + "pascal_name": "AppResource", + "is_object": true + } + } + }, + { + "name": "service_principal_client_id", + "description": "The service principal client ID for the app space.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "The service principal ID for the app space.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "service_principal_name", + "description": "The service principal name for the app space.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "The status of the app space.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SpaceStatus", + "is_object": true + } + }, + { + "name": "update_time", + "description": "The update time of the app space. Formatted timestamp in ISO 6801.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updater", + "description": "The email of the user that last updated the app space.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "usage_policy_id", + "description": "The usage policy ID for managing cost at the space level.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "user_api_scopes", + "description": "OAuth scopes for apps in the space.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-space-operation", + "pascal_name": "GetSpaceOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "CreateUpdate", + "description": "Creates an app update and starts the update process. The update process is asynchronous and the status of the update can be checked with the GetAppUpdate method.", + "summary": "Create an app update.", + "path": "/api/2.0/apps/{app_name}/update", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "AsyncUpdateAppRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "app_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "app_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AppUpdate", + "is_object": true + }, + "all_fields": [ + { + "name": "app", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "App", + "is_object": true + } + }, + { + "name": "app_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "app_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "SUCCEEDED" + } + ], + "timeout": 20, + "complex_message_path": true, + "poll": { + "response": { + "pascal_name": "AppUpdate" + } + }, + "status_path": [ + { + "pascal_name": "Status" + }, + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "Status" + }, + { + "pascal_name": "Message" + } + ], + "message_path_head": { + "pascal_name": "Status" + } + } + }, + { + "name": "Delete", + "description": "Deletes an app.", + "summary": "Delete an app.", + "path": "/api/2.0/apps/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteAppRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "App", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteAppThumbnail", + "description": "Deletes the thumbnail for an app.", + "summary": "Delete an app thumbnail.", + "path": "/api/2.0/apps/{name}/thumbnail", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteAppThumbnailRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteSpace", + "description": "Deletes an app space.", + "summary": "Delete an app space.", + "path": "/api/2.0/app-spaces/{name}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteSpaceRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the app space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the app space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the app space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-space-operation", + "pascal_name": "GetSpaceOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": { + "is_empty_response": true + } + } + }, + { + "name": "Deploy", + "description": "Creates an app deployment for the app with the supplied name.", + "summary": "Create an app deployment.", + "path": "/api/2.0/apps/{app_name}/deployments", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateAppDeploymentRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "app_deployment", + "description": "The app deployment configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppDeployment", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "app_deployment", + "description": "The app deployment configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppDeployment", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "app_deployment", + "description": "The app deployment configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppDeployment", + "is_object": true + } + }, + "response": { + "pascal_name": "AppDeployment", + "is_object": true + }, + "all_fields": [ + { + "name": "app_deployment", + "description": "The app deployment configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppDeployment", + "is_object": true + } + }, + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "command", + "description": "The command with which to run the app. This will override the command specified in the app.yaml file.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "create_time", + "description": "The creation time of the deployment. Formatted timestamp in ISO 6801.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "creator", + "description": "The email of the user creates the deployment.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "deployment_artifacts", + "description": "The deployment artifacts for an app.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AppDeploymentArtifacts", + "is_object": true + } + }, + { + "name": "deployment_id", + "description": "The unique id of the deployment.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "env_vars", + "description": "The environment variables to set in the app runtime environment. This will override the environment variables specified in the app.yaml file.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EnvVarList", + "array_value": { + "pascal_name": "EnvVar", + "is_object": true + } + } + }, + { + "name": "git_source", + "description": "Git repository to use as the source for the app deployment.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GitSource", + "is_object": true + } + }, + { + "name": "health_check", + "description": "Deploy-time health check for the app. Verifies the app is responding to HTTP requests before considering the deployment successful.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AppHealthCheck", + "is_object": true + } + }, + { + "name": "mode", + "description": "The mode of which the deployment will manage the source code.", + "is_request_body_field": true, + "entity": { + "pascal_name": "AppDeploymentMode", + "enum": [ + { + "content": "AUTO_SYNC" + }, + { + "content": "SNAPSHOT" + } + ] + } + }, + { + "name": "source_code_path", + "description": "The workspace file system path of the source code used to create the app deployment. This is different from\n`deployment_artifacts.source_code_path`, which is the path used by the deployed app. The former refers\nto the original source code location of the app in the workspace during deployment creation, whereas\nthe latter provides a system generated stable snapshotted source code path used by the deployment.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Status and status message of the deployment", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AppDeploymentStatus", + "is_object": true + } + }, + { + "name": "update_time", + "description": "The update time of the deployment. Formatted timestamp in ISO 6801.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "SUCCEEDED" + } + ], + "timeout": 20, + "complex_message_path": true, + "poll": { + "response": { + "pascal_name": "AppDeployment" + } + }, + "status_path": [ + { + "pascal_name": "Status" + }, + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "Status" + }, + { + "pascal_name": "Message" + } + ], + "message_path_head": { + "pascal_name": "Status" + } + } + }, + { + "name": "Get", + "description": "Retrieves information for the app with the supplied name.", + "summary": "Get an app.", + "path": "/api/2.0/apps/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAppRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "App", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetDeployment", + "description": "Retrieves information for the app deployment with the supplied name and deployment id.", + "summary": "Get an app deployment.", + "path": "/api/2.0/apps/{app_name}/deployments/{deployment_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAppDeploymentRequest", + "is_object": true, + "required_fields": [ + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "deployment_id", + "description": "The unique id of the deployment.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "deployment_id", + "description": "The unique id of the deployment.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AppDeployment", + "is_object": true + }, + "all_fields": [ + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "deployment_id", + "description": "The unique id of the deployment.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "deployment_id", + "description": "The unique id of the deployment.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get app permission levels.", + "path": "/api/2.0/permissions/apps/{app_name}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAppPermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetAppPermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of an app. Apps can inherit permissions from their root object.", + "summary": "Get app permissions.", + "path": "/api/2.0/permissions/apps/{app_name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAppPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AppPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSpace", + "description": "Retrieves information for the app space with the supplied name.", + "summary": "Get an app space.", + "path": "/api/2.0/app-spaces/{name}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetSpaceRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the app space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Space", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the app space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the app space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSpaceOperation", + "description": "Gets the status of an app space update operation.", + "summary": "Get the status of an app space operation.", + "path": "/api/2.0/app-spaces/{name}/operation", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetOperationRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetUpdate", + "description": "Gets the status of an app update.", + "summary": "Get an app update.", + "path": "/api/2.0/apps/{app_name}/update", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAppUpdateRequest", + "is_object": true, + "required_fields": [ + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AppUpdate", + "is_object": true + }, + "all_fields": [ + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Lists all apps in the workspace.", + "summary": "List apps.", + "path": "/api/2.0/apps", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAppsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListAppsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Upper bound for items returned.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page of apps. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "space", + "description": "Filter apps by app space name. When specified, only apps belonging to this space are returned.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page of apps. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListDeployments", + "description": "Lists all app deployments for the app with the supplied name.", + "summary": "List app deployments.", + "path": "/api/2.0/apps/{app_name}/deployments", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAppDeploymentsRequest", + "is_object": true, + "required_fields": [ + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListAppDeploymentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Upper bound for items returned.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page of apps. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "app_name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page of apps. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListSpaces", + "description": "Lists all app spaces in the workspace.", + "summary": "List app spaces.", + "path": "/api/2.0/app-spaces", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListSpacesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListSpacesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Upper bound for items returned.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page of app spaces. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page of app spaces. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set app permissions.", + "path": "/api/2.0/permissions/apps/{app_name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "AppPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AppPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "AppAccessControlRequestList", + "array_value": { + "pascal_name": "AppAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Start", + "description": "Start the last active deployment of the app in the workspace.", + "summary": "Start an app.", + "path": "/api/2.0/apps/{name}/start", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "StartAppRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "App", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "ACTIVE" + } + ], + "timeout": 20, + "complex_message_path": true, + "poll": { + "response": { + "pascal_name": "App" + } + }, + "status_path": [ + { + "pascal_name": "ComputeStatus" + }, + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "ComputeStatus" + }, + { + "pascal_name": "Message" + } + ], + "message_path_head": { + "pascal_name": "ComputeStatus" + } + } + }, + { + "name": "Stop", + "description": "Stops the active deployment of the app in the workspace.", + "summary": "Stop an app.", + "path": "/api/2.0/apps/{name}/stop", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "StopAppRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "App", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "STOPPED" + } + ], + "timeout": 20, + "complex_message_path": true, + "poll": { + "response": { + "pascal_name": "App" + } + }, + "status_path": [ + { + "pascal_name": "ComputeStatus" + }, + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "ComputeStatus" + }, + { + "pascal_name": "Message" + } + ], + "message_path_head": { + "pascal_name": "ComputeStatus" + } + } + }, + { + "name": "Update", + "description": "Updates the app with the supplied name. This is a full replacement: fields omitted from the request are cleared, so send the complete app.", + "summary": "Update an app.", + "path": "/api/2.0/apps/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateAppRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "app", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "App", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "app", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "App", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "app", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "App", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "App", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "app", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "App", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "active_deployment", + "description": "The active deployment of the app. A deployment is considered active when it has been deployed\nto the app compute.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AppDeployment", + "is_object": true + } + }, + { + "name": "app_status", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ApplicationStatus", + "is_object": true + } + }, + { + "name": "budget_policy_id", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "compute_max_instances", + "description": "Maximum number of app instances the app is configured to run. Must be set together with `compute_min_instances`.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "compute_min_instances", + "description": "Minimum number of app instances the app is configured to run. Must be set together with `compute_max_instances`.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "compute_size", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComputeSize", + "enum": [ + { + "content": "LARGE" + }, + { + "content": "MEDIUM" + }, + { + "content": "XLARGE" + } + ] + } + }, + { + "name": "compute_status", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ComputeStatus", + "is_object": true + } + }, + { + "name": "create_time", + "description": "The creation time of the app. Formatted timestamp in ISO 6801.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "creator", + "description": "The email of the user that created the app.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "default_git_source", + "description": "The Git source of the app's most recent active deployment, including the repository\nconfiguration and the resolved reference. Populated by the system after a Git-based\ndeployment and used as the default reference when automatic deployments are enabled.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GitSource", + "is_object": true + } + }, + { + "name": "default_source_code_path", + "description": "The default workspace file system path of the source code from which app deployment are\ncreated. This field tracks the workspace source code path of the last active deployment.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "The description of the app.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_budget_policy_id", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_usage_policy_id", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_user_api_scopes", + "description": "The effective api scopes granted to the user access token.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "forward_user_access_token", + "description": "Forward the user's access token to the app. Requires stopping and starting app compute to take effect.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "git_repository", + "description": "Git repository configuration for app deployments. When specified, deployments can\nreference code from this repository by providing only the git reference (branch, tag, or commit).", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GitRepository", + "is_object": true + } + }, + { + "name": "git_source", + "description": "The Git source to deploy from, specifying the reference to check out (branch, tag, or\ncommit) and an optional path to the app source code within the repository configured in\ngit_repository.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GitSource", + "is_object": true + } + }, + { + "name": "id", + "description": "The unique identifier of the app.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "oauth2_app_client_id", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "oauth2_app_integration_id", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "pending_deployment", + "description": "The pending deployment of the app. A deployment is considered pending when it is being prepared\nfor deployment to the app compute.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AppDeployment", + "is_object": true + } + }, + { + "name": "resources", + "description": "Resources for the app.", + "is_request_body_field": true, + "entity": { + "pascal_name": "AppResourceList", + "array_value": { + "pascal_name": "AppResource", + "is_object": true + } + } + }, + { + "name": "service_principal_client_id", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "service_principal_name", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_code_path", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "space", + "description": "Name of the space this app belongs to.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "telemetry_export_destinations", + "is_request_body_field": true, + "entity": { + "pascal_name": "TelemetryExportDestinationList", + "array_value": { + "pascal_name": "TelemetryExportDestination", + "is_object": true + } + } + }, + { + "name": "thumbnail_url", + "description": "The URL of the thumbnail image for the app.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "The update time of the app. Formatted timestamp in ISO 6801.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "updater", + "description": "The email of the user that last updated the app.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "url", + "description": "The URL of the app once it is deployed.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "usage_policy_id", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "user_api_scopes", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the app. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateAppThumbnail", + "description": "Updates the thumbnail for an app.", + "summary": "Update an app thumbnail.", + "path": "/api/2.0/apps/{name}/thumbnail", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateAppThumbnailRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AppThumbnail", + "is_object": true + }, + "all_fields": [ + { + "name": "app_thumbnail", + "description": "The app thumbnail to set.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AppThumbnail", + "is_object": true + } + }, + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the app.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on an app. Apps can inherit permissions from their root object.", + "summary": "Update app permissions.", + "path": "/api/2.0/permissions/apps/{app_name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "AppPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AppPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "AppAccessControlRequestList", + "array_value": { + "pascal_name": "AppAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "app_name", + "description": "The app for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateSpace", + "description": "Updates an app space. The update process is asynchronous and the status of the update can be checked with the GetSpaceOperation method.", + "summary": "Update an app space.", + "path": "/api/2.0/app-spaces/{name}", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateSpaceRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "space", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Space", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "space", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Space", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "space", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Space", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "space", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Space", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "assume_group_id", + "description": "The group whose permissions users assume via Role Authorization for apps in this space. When\nset, user tokens assume the role of this group instead of doing regular obo token downscoping.\nSet only at space creation.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "The creation time of the app space. Formatted timestamp in ISO 6801.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "creator", + "description": "The email of the user that created the app space.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "The description of the app space.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_usage_policy_id", + "description": "The effective usage policy ID used by apps in the space.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_user_api_scopes", + "description": "The effective api scopes granted to the user access token.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "id", + "description": "The unique identifier of the app space.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "resources", + "description": "Resources for the app space. Resources configured at the space level are available to all apps in the space.", + "is_request_body_field": true, + "entity": { + "pascal_name": "AppResourceList", + "array_value": { + "pascal_name": "AppResource", + "is_object": true + } + } + }, + { + "name": "service_principal_client_id", + "description": "The service principal client ID for the app space.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "The service principal ID for the app space.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "service_principal_name", + "description": "The service principal name for the app space.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "The status of the app space.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SpaceStatus", + "is_object": true + } + }, + { + "name": "update_time", + "description": "The update time of the app space. Formatted timestamp in ISO 6801.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updater", + "description": "The email of the user that last updated the app space.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "usage_policy_id", + "description": "The usage policy ID for managing cost at the space level.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "user_api_scopes", + "description": "OAuth scopes for apps in the space.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the app space. The name must contain only lowercase alphanumeric characters and hyphens.\nIt must be unique within the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-space-operation", + "pascal_name": "GetSpaceOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + } + ] + }, + { + "id": "apps.AppsSettings", + "name": "AppsSettings", + "description": "Apps Settings manage the settings for the Apps service on a customer's Databricks instance.", + "package": { + "name": "apps" + }, + "is_hidden_cli": true, + "docs_group": "apps", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "list": { + "request": { + "pascal_name": "ListCustomTemplatesRequest" + } + }, + "methods": [ + { + "name": "CreateCustomTemplate", + "description": "Creates a custom template.", + "summary": "Create a template.", + "path": "/api/2.0/apps-settings/templates", + "can_use_json": true, + "is_crud_create": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateCustomTemplateRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "template", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTemplate", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "template", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTemplate", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "template", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTemplate", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "CustomTemplate", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "template", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTemplate", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "creator", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "The description of the template.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteCustomTemplate", + "description": "Deletes the custom template with the specified name.", + "summary": "Delete a template.", + "path": "/api/2.0/apps-settings/templates/{name}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteCustomTemplateRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the custom template.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the custom template.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CustomTemplate", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the custom template.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the custom template.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetCustomTemplate", + "description": "Gets the custom template with the specified name.", + "summary": "Get a template.", + "path": "/api/2.0/apps-settings/templates/{name}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetCustomTemplateRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the custom template.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the custom template.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CustomTemplate", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the custom template.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the custom template.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListCustomTemplates", + "description": "Lists all custom templates in the workspace.", + "summary": "List templates.", + "path": "/api/2.0/apps-settings/templates", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListCustomTemplatesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListCustomTemplatesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Upper bound for items returned.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page of custom templates. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page of custom templates. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateCustomTemplate", + "description": "Updates the custom template with the specified name. Note that the template name cannot be updated.", + "summary": "Update a template.", + "path": "/api/2.0/apps-settings/templates/{name}", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateCustomTemplateRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "template", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTemplate", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "template", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTemplate", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "template", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTemplate", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "CustomTemplate", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "template", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTemplate", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "creator", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "The description of the template.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the template. It must contain only alphanumeric characters, hyphens, underscores, and whitespaces.\nIt must be unique within the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_repo", + "description": "The Git repository URL that the template resides in.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The path to the template within the Git repository.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "manifest", + "description": "The manifest of the template. It defines fields and default values when installing the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AppManifest", + "is_object": true + } + }, + { + "name": "git_provider", + "description": "The Git provider of the template.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.ArtifactAllowlists", + "name": "ArtifactAllowlists", + "description": "In Databricks Runtime 13.3 and above, you can add libraries and init scripts to the\n`allowlist` in UC so that users can use these artifacts on compute configured with\nshared access mode.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Get", + "description": "Get the artifact allowlist of a certain artifact type.\nThe caller must be a metastore admin or have the **MANAGE ALLOWLIST** privilege\non the metastore.", + "summary": "Get an artifact allowlist.", + "path": "/api/2.1/unity-catalog/artifact-allowlists/{artifact_type}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetArtifactAllowlistRequest", + "is_object": true, + "required_fields": [ + { + "name": "artifact_type", + "description": "The artifact type of the allowlist.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ArtifactType", + "enum": [ + { + "content": "INIT_SCRIPT" + }, + { + "content": "LIBRARY_JAR" + }, + { + "content": "LIBRARY_MAVEN" + } + ] + } + } + ], + "required_in_url_fields": [ + { + "name": "artifact_type", + "description": "The artifact type of the allowlist.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ArtifactType", + "enum": [ + { + "content": "INIT_SCRIPT" + }, + { + "content": "LIBRARY_JAR" + }, + { + "content": "LIBRARY_MAVEN" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "ArtifactAllowlistInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "artifact_type", + "description": "The artifact type of the allowlist.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ArtifactType", + "enum": [ + { + "content": "INIT_SCRIPT" + }, + { + "content": "LIBRARY_JAR" + }, + { + "content": "LIBRARY_MAVEN" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "artifact_type", + "description": "The artifact type of the allowlist.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ArtifactType", + "enum": [ + { + "content": "INIT_SCRIPT" + }, + { + "content": "LIBRARY_JAR" + }, + { + "content": "LIBRARY_MAVEN" + } + ] + } + } + ] + }, + { + "name": "Update", + "description": "Set the artifact allowlist of a certain artifact type.\nThe whole artifact allowlist is replaced with the new allowlist.\nThe caller must be a metastore admin or have the **MANAGE ALLOWLIST** privilege\non the metastore.", + "summary": "Set an artifact allowlist.", + "path": "/api/2.1/unity-catalog/artifact-allowlists/{artifact_type}", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SetArtifactAllowlist", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "artifact_type", + "description": "The artifact type of the allowlist.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ArtifactType", + "enum": [ + { + "content": "INIT_SCRIPT" + }, + { + "content": "LIBRARY_JAR" + }, + { + "content": "LIBRARY_MAVEN" + } + ] + } + }, + { + "name": "artifact_matchers", + "description": "A list of allowed artifact match patterns.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ArtifactMatcherList", + "array_value": { + "pascal_name": "ArtifactMatcher", + "is_object": true + } + } + } + ], + "required_in_url_fields": [ + { + "name": "artifact_type", + "description": "The artifact type of the allowlist.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ArtifactType", + "enum": [ + { + "content": "INIT_SCRIPT" + }, + { + "content": "LIBRARY_JAR" + }, + { + "content": "LIBRARY_MAVEN" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "artifact_matchers", + "description": "A list of allowed artifact match patterns.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ArtifactMatcherList", + "array_value": { + "pascal_name": "ArtifactMatcher", + "is_object": true + } + } + } + ] + }, + "response": { + "pascal_name": "ArtifactAllowlistInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "artifact_matchers", + "description": "A list of allowed artifact match patterns.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ArtifactMatcherList", + "array_value": { + "pascal_name": "ArtifactMatcher", + "is_object": true + } + } + }, + { + "name": "artifact_type", + "description": "The artifact type of the allowlist.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ArtifactType", + "enum": [ + { + "content": "INIT_SCRIPT" + }, + { + "content": "LIBRARY_JAR" + }, + { + "content": "LIBRARY_MAVEN" + } + ] + } + }, + { + "name": "created_at", + "description": "Time at which this artifact allowlist was set, in epoch milliseconds.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "created_by", + "description": "Username of the user who set the artifact allowlist.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "Unique identifier of parent metastore.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "artifact_type", + "description": "The artifact type of the allowlist.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ArtifactType", + "enum": [ + { + "content": "INIT_SCRIPT" + }, + { + "content": "LIBRARY_JAR" + }, + { + "content": "LIBRARY_MAVEN" + } + ] + } + } + ] + } + ] + }, + { + "id": "settings.AutomaticClusterUpdate", + "name": "AutomaticClusterUpdate", + "description": "Controls whether automatic cluster update is enabled for the current workspace.\nBy default, it is turned off.", + "package": { + "name": "settings" + }, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "Get", + "description": "Gets the automatic cluster update setting.", + "summary": "Get the automatic cluster update setting.", + "path": "/api/2.0/settings/types/automatic_cluster_update/names/default", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetAutomaticClusterUpdateSettingRequest", + "is_object": true + }, + "response": { + "pascal_name": "AutomaticClusterUpdateSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "automatic_cluster_update_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ClusterAutoRestartMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "automatic_cluster_update_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ClusterAutoRestartMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the automatic cluster update setting for the workspace. A fresh etag needs to be provided in `PATCH`\nrequests (as part of the setting field). The etag can be retrieved by making a `GET` request before the `PATCH` request.\nIf the setting is updated concurrently, `PATCH` fails with 409 and the request must be retried by using the fresh etag in the 409 response.", + "summary": "Update the automatic cluster update setting.", + "path": "/api/2.0/settings/types/automatic_cluster_update/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateAutomaticClusterUpdateSettingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AutomaticClusterUpdateSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AutomaticClusterUpdateSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AutomaticClusterUpdateSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "automatic_cluster_update_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ClusterAutoRestartMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "automatic_cluster_update_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ClusterAutoRestartMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AutomaticClusterUpdateSetting", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "billing.BillableUsage", + "name": "BillableUsage", + "description": "This API allows you to download billable usage logs for the specified account and date range. This feature works with all account types.", + "package": { + "name": "billing" + }, + "is_accounts": true, + "docs_group": "billing", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Download", + "description": "Returns billable usage logs in CSV format for the specified account and date range.\n\nNote that this method might take multiple minutes to complete.\n\n**Warning**: Depending on the queried date range, the number of workspaces\nin the account, the size of the response and the internet speed of the caller,\nthis API may hit a timeout after a few minutes. If you experience this, try to mitigate\nby calling the API with narrower date ranges.", + "summary": "Return billable usage logs.", + "path": "/api/2.0/accounts/{account_id}/usage/download", + "is_response_byte_stream": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DownloadRequest", + "is_object": true, + "required_fields": [ + { + "name": "start_month", + "description": "Format specification for month in the format `YYYY-MM`. This is\nused to specify billable usage `start_month` and `end_month`\nproperties. **Note**: Billable usage logs are unavailable before\nMarch 2019 (`2019-03`).", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "end_month", + "description": "Format: `YYYY-MM`. Last month to return billable usage logs for.\nThis field is required.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "start_month", + "description": "Format specification for month in the format `YYYY-MM`. This is\nused to specify billable usage `start_month` and `end_month`\nproperties. **Note**: Billable usage logs are unavailable before\nMarch 2019 (`2019-03`).", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "end_month", + "description": "Format: `YYYY-MM`. Last month to return billable usage logs for.\nThis field is required.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DownloadResponse", + "is_object": true + }, + "response_body_field": { + "pascal_name": "Contents" + }, + "all_fields": [ + { + "name": "end_month", + "description": "Format: `YYYY-MM`. Last month to return billable usage logs for.\nThis field is required.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "personal_data", + "description": "Specify whether to include personally identifiable information in\nthe billable usage logs, for example the email addresses of cluster\ncreators. Handle this information with care. Defaults to false.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "start_month", + "description": "Format specification for month in the format `YYYY-MM`. This is\nused to specify billable usage `start_month` and `end_month`\nproperties. **Note**: Billable usage logs are unavailable before\nMarch 2019 (`2019-03`).", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "start_month", + "description": "Format specification for month in the format `YYYY-MM`. This is\nused to specify billable usage `start_month` and `end_month`\nproperties. **Note**: Billable usage logs are unavailable before\nMarch 2019 (`2019-03`).", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "end_month", + "description": "Format: `YYYY-MM`. Last month to return billable usage logs for.\nThis field is required.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "billing.BudgetPolicy", + "name": "BudgetPolicy", + "description": "A service serves REST API about Budget policies", + "package": { + "name": "billing" + }, + "is_accounts": true, + "docs_group": "billing", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "request": { + "pascal_name": "ListBudgetPoliciesRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new policy.", + "summary": "Create a budget policy.", + "path": "/api/2.1/accounts/{account_id}/budget-policies", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateBudgetPolicyRequest", + "is_object": true + }, + "response": { + "pascal_name": "BudgetPolicy", + "is_object": true + }, + "all_fields": [ + { + "name": "policy", + "description": "The policy to create. `policy_id` needs to be empty as it will be generated\n`policy_name` must be provided, custom_tags may need to be provided\ndepending on the cloud provider. All other fields are optional.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "BudgetPolicy", + "is_object": true + } + }, + { + "name": "request_id", + "description": "A unique identifier for this request. Restricted to 36 ASCII characters.\nA random UUID is recommended.\nThis request is only idempotent if a `request_id` is provided.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a policy", + "summary": "Delete a budget policy.", + "path": "/api/2.1/accounts/{account_id}/budget-policies/{policy_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteBudgetPolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "policy_id", + "description": "The Id of the policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "policy_id", + "description": "The Id of the policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "policy_id", + "description": "The Id of the policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "policy_id", + "description": "The Id of the policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Retrieves a policy by it's ID.", + "summary": "Get a budget policy.", + "path": "/api/2.1/accounts/{account_id}/budget-policies/{policy_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetBudgetPolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "policy_id", + "description": "The Id of the policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "policy_id", + "description": "The Id of the policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "BudgetPolicy", + "is_object": true + }, + "all_fields": [ + { + "name": "policy_id", + "description": "The Id of the policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "policy_id", + "description": "The Id of the policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Lists all policies. Policies are returned in the alphabetically ascending order of their names.", + "summary": "List policies.", + "path": "/api/2.1/accounts/{account_id}/budget-policies", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListBudgetPoliciesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListBudgetPoliciesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter_by", + "description": "A filter to apply to the list of policies.", + "is_query": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Filter", + "is_object": true + } + }, + { + "name": "page_size", + "description": "The maximum number of budget policies to return.\nIf unspecified, at most 100 budget policies will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListServerlessPolicies` call.\nProvide this to retrieve the subsequent page.\nIf unspecified, the first page will be returned.\n\nWhen paginating, all other parameters provided to `ListServerlessPoliciesRequest` must match\nthe call that provided the page token.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sort_spec", + "description": "The sort specification.", + "is_query": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SortSpec", + "is_object": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListServerlessPolicies` call.\nProvide this to retrieve the subsequent page.\nIf unspecified, the first page will be returned.\n\nWhen paginating, all other parameters provided to `ListServerlessPoliciesRequest` must match\nthe call that provided the page token.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Updates a policy", + "summary": "Update a budget policy.", + "path": "/api/2.1/accounts/{account_id}/budget-policies/{policy_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateBudgetPolicyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "policy_id", + "description": "The Id of the policy. This field is generated by Databricks and globally unique.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "policy", + "description": "The policy to update. `creator_user_id` cannot be specified in the request. All other fields\nmust be specified even if not changed. The `policy_id` is used to identify the policy to\nupdate.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BudgetPolicy", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "policy_id", + "description": "The Id of the policy. This field is generated by Databricks and globally unique.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "policy", + "description": "The policy to update. `creator_user_id` cannot be specified in the request. All other fields\nmust be specified even if not changed. The `policy_id` is used to identify the policy to\nupdate.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BudgetPolicy", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "policy", + "description": "The policy to update. `creator_user_id` cannot be specified in the request. All other fields\nmust be specified even if not changed. The `policy_id` is used to identify the policy to\nupdate.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BudgetPolicy", + "is_object": true + } + }, + "response": { + "pascal_name": "BudgetPolicy", + "is_object": true + }, + "all_fields": [ + { + "name": "limit_config", + "description": "DEPRECATED. This is redundant field as LimitConfig is part of the BudgetPolicy", + "is_query": true, + "is_optional_object": true, + "entity": { + "pascal_name": "LimitConfig", + "is_object": true + } + }, + { + "name": "policy", + "description": "The policy to update. `creator_user_id` cannot be specified in the request. All other fields\nmust be specified even if not changed. The `policy_id` is used to identify the policy to\nupdate.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BudgetPolicy", + "is_object": true + } + }, + { + "name": "policy_id", + "description": "The Id of the policy. This field is generated by Databricks and globally unique.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "binding_workspace_ids", + "description": "List of workspaces that this budget policy will be exclusively bound to.\nAn empty binding implies that this budget policy is open to any workspace in the account.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_int64": true + } + } + }, + { + "name": "custom_tags", + "description": "A list of tags defined by the customer. At most 20 entries are allowed per policy.", + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomPolicyTagList", + "array_value": { + "pascal_name": "CustomPolicyTag", + "is_object": true + } + } + }, + { + "name": "policy_id", + "description": "The Id of the policy. This field is generated by Databricks and globally unique.", + "is_computed": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "policy_name", + "description": "The name of the policy.\n- Must be unique among active policies.\n- Can contain only characters from the ISO 8859-1 (latin1) set.\n- Can't start with reserved keywords such as `databricks:default-policy`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "policy_id", + "description": "The Id of the policy. This field is generated by Databricks and globally unique.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "billing.Budgets", + "name": "Budgets", + "description": "These APIs manage budget configurations for this account. Budgets enable you to monitor usage across your account. You can set up budgets to either track account-wide spending, or apply filters to track the spending of specific teams, projects, or workspaces.", + "package": { + "name": "billing" + }, + "is_accounts": true, + "docs_group": "billing", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "methods": [ + { + "name": "Create", + "description": "Create a new budget configuration for an account. For full details, see https://docs.databricks.com/en/admin/account-settings/budgets.html.", + "summary": "Create new budget.", + "path": "/api/2.1/accounts/{account_id}/budgets", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateBudgetConfigurationRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "budget", + "description": "Properties of the new budget configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateBudgetConfigurationBudget", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "budget", + "description": "Properties of the new budget configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateBudgetConfigurationBudget", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "CreateBudgetConfigurationResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "budget", + "description": "Properties of the new budget configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateBudgetConfigurationBudget", + "is_object": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a budget configuration for an account. Both account and budget configuration are specified by ID. This cannot be undone.", + "summary": "Delete budget.", + "path": "/api/2.1/accounts/{account_id}/budgets/{budget_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteBudgetConfigurationRequest", + "is_object": true, + "required_fields": [ + { + "name": "budget_id", + "description": "The Databricks budget configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "budget_id", + "description": "The Databricks budget configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteBudgetConfigurationResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "budget_id", + "description": "The Databricks budget configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "budget_id", + "description": "The Databricks budget configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a budget configuration for an account. Both account and budget configuration are specified by ID.", + "summary": "Get budget.", + "path": "/api/2.1/accounts/{account_id}/budgets/{budget_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetBudgetConfigurationRequest", + "is_object": true, + "required_fields": [ + { + "name": "budget_id", + "description": "The budget configuration ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "budget_id", + "description": "The budget configuration ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetBudgetConfigurationResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "budget_id", + "description": "The budget configuration ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "budget_id", + "description": "The budget configuration ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets all budgets associated with this account.", + "summary": "Get all budgets.", + "path": "/api/2.1/accounts/{account_id}/budgets", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListBudgetConfigurationsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListBudgetConfigurationsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_token", + "description": "A page token received from a previous get all budget configurations call. This token can be used to retrieve the subsequent page.\nRequests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token received from a previous get all budget configurations call. This token can be used to retrieve the subsequent page.\nRequests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Updates a budget configuration for an account. Both account and budget configuration are specified by ID.", + "summary": "Modify budget.", + "path": "/api/2.1/accounts/{account_id}/budgets/{budget_id}", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateBudgetConfigurationRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "budget_id", + "description": "The Databricks budget configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "budget", + "description": "The updated budget. This will overwrite the budget specified by the budget ID.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UpdateBudgetConfigurationBudget", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "budget_id", + "description": "The Databricks budget configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "budget", + "description": "The updated budget. This will overwrite the budget specified by the budget ID.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UpdateBudgetConfigurationBudget", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateBudgetConfigurationResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "budget", + "description": "The updated budget. This will overwrite the budget specified by the budget ID.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UpdateBudgetConfigurationBudget", + "is_object": true + } + }, + { + "name": "budget_id", + "description": "The Databricks budget configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "budget_id", + "description": "The Databricks budget configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "bundledeployments.BundleDeployments", + "name": "BundleDeployments", + "description": "Service for managing bundle deployment metadata.", + "package": { + "name": "bundledeployments" + }, + "is_hidden_cli": true, + "docs_group": "bundledeployments", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "list": { + "request": { + "pascal_name": "ListDeploymentsRequest" + } + }, + "methods": [ + { + "name": "CompleteVersion", + "description": "Marks a version as complete and releases the deployment lock.\n\nThe server atomically:\n1. Sets the version status to the provided terminal status.\n2. Sets `complete_time` to the current server timestamp.\n3. Releases the lock on the parent deployment.\n4. Updates the parent deployment's `status` and `last_version_id`.", + "summary": "Complete a version.", + "path": "/api/2.0/bundle/{name=deployments/*/versions/*}/complete", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CompleteVersionRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the version to complete.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "completion_reason", + "description": "The reason for completing the version. Must be VERSION_COMPLETE_SUCCESS\nor VERSION_COMPLETE_FAILURE.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionComplete", + "enum": [ + { + "content": "VERSION_COMPLETE_FAILURE" + }, + { + "content": "VERSION_COMPLETE_FORCE_ABORT" + }, + { + "content": "VERSION_COMPLETE_LEASE_EXPIRED" + }, + { + "content": "VERSION_COMPLETE_SUCCESS" + } + ] + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the version to complete.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "completion_reason", + "description": "The reason for completing the version. Must be VERSION_COMPLETE_SUCCESS\nor VERSION_COMPLETE_FAILURE.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionComplete", + "enum": [ + { + "content": "VERSION_COMPLETE_FAILURE" + }, + { + "content": "VERSION_COMPLETE_FORCE_ABORT" + }, + { + "content": "VERSION_COMPLETE_LEASE_EXPIRED" + }, + { + "content": "VERSION_COMPLETE_SUCCESS" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "Version", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cli_version", + "description": "CLI version used to initiate the version.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_type", + "description": "Type of version (deploy or destroy).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionType", + "enum": [ + { + "content": "VERSION_TYPE_DEPLOY" + }, + { + "content": "VERSION_TYPE_DESTROY" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "cli_version", + "description": "CLI version used to initiate the version.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_type", + "description": "Type of version (deploy or destroy).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionType", + "enum": [ + { + "content": "VERSION_TYPE_DEPLOY" + }, + { + "content": "VERSION_TYPE_DESTROY" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "completion_reason", + "description": "The reason for completing the version. Must be VERSION_COMPLETE_SUCCESS\nor VERSION_COMPLETE_FAILURE.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionComplete", + "enum": [ + { + "content": "VERSION_COMPLETE_FAILURE" + }, + { + "content": "VERSION_COMPLETE_FORCE_ABORT" + }, + { + "content": "VERSION_COMPLETE_LEASE_EXPIRED" + }, + { + "content": "VERSION_COMPLETE_SUCCESS" + } + ] + } + }, + { + "name": "force", + "description": "If true, force-completes the version even if the caller is not the\noriginal creator.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "The name of the version to complete.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the version to complete.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "completion_reason", + "description": "The reason for completing the version. Must be VERSION_COMPLETE_SUCCESS\nor VERSION_COMPLETE_FAILURE.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionComplete", + "enum": [ + { + "content": "VERSION_COMPLETE_FAILURE" + }, + { + "content": "VERSION_COMPLETE_FORCE_ABORT" + }, + { + "content": "VERSION_COMPLETE_LEASE_EXPIRED" + }, + { + "content": "VERSION_COMPLETE_SUCCESS" + } + ] + } + } + ] + }, + { + "name": "CreateDeployment", + "description": "Creates a new deployment in the workspace.", + "summary": "Create a deployment.", + "path": "/api/2.0/bundle/deployments", + "can_use_json": true, + "is_crud_create": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateDeploymentRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "deployment", + "description": "The deployment to create. `initial_parent_path` is required. `display_name`, `target_name`,\n`deployment_mode`, and `workspace_info` may be set; every other field is assigned by the\nservice and ignored on input.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Deployment", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "deployment", + "description": "The deployment to create. `initial_parent_path` is required. `display_name`, `target_name`,\n`deployment_mode`, and `workspace_info` may be set; every other field is assigned by the\nservice and ignored on input.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Deployment", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "deployment", + "description": "The deployment to create. `initial_parent_path` is required. `display_name`, `target_name`,\n`deployment_mode`, and `workspace_info` may be set; every other field is assigned by the\nservice and ignored on input.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Deployment", + "is_object": true + } + }, + "response": { + "pascal_name": "Deployment", + "is_object": true + }, + "all_fields": [ + { + "name": "deployment", + "description": "The deployment to create. `initial_parent_path` is required. `display_name`, `target_name`,\n`deployment_mode`, and `workspace_info` may be set; every other field is assigned by the\nservice and ignored on input.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Deployment", + "is_object": true + } + }, + { + "name": "create_time", + "description": "When the deployment was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "The user who created the deployment (email or principal name). Empty if authoritative\ndeployment metadata does not identify a creator or the principal cannot be resolved.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "deployment_mode", + "description": "Bundle target deployment mode (development or production).", + "is_request_body_field": true, + "entity": { + "pascal_name": "DeploymentMode", + "enum": [ + { + "content": "DEPLOYMENT_MODE_DEVELOPMENT" + }, + { + "content": "DEPLOYMENT_MODE_PRODUCTION" + } + ] + } + }, + { + "name": "destroy_time", + "description": "When deletion was recorded. Unset if deletion has not been recorded.\nThis response metadata does not determine the deployment's lifecycle status.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "destroyed_by", + "description": "The user who destroyed the deployment (email or principal name).\nUnset if the deployment has not been destroyed.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Human-readable name for the deployment, up to 256 characters.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_info", + "description": "Git provenance of the deployment's source, derived from the latest version.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GitInfo", + "is_object": true + } + }, + { + "name": "initial_parent_path", + "description": "The workspace path of the existing folder where the deployment is initially created. Must be\nabsolute and canonical, with single separators, no `.` or `..` segments, and no trailing slash\nunless the path is `/`. It may contain at most 24 path segments, excluding an optional leading\n`/Workspace` segment. The complete path may contain up to 1,024 characters, and each segment\nmay contain up to 511 characters. This field is input only and is not returned in create, get,\nor list responses.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "last_successful_version_id", + "description": "The version_id of the most recent version that completed successfully.\nUnset until a version has completed successfully. Unlike last_version_id,\nit is not advanced when a version fails, so it always points at the last\nknown-good deployment state (or is unset if there has never been one).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "last_version_id", + "description": "The version_id of the most recent deployment version.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name of the deployment.\nFormat: deployments/{deployment_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Current status of the deployment.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DeploymentStatus", + "enum": [ + { + "content": "DEPLOYMENT_STATUS_ACTIVE" + }, + { + "content": "DEPLOYMENT_STATUS_DELETED" + }, + { + "content": "DEPLOYMENT_STATUS_FAILED" + }, + { + "content": "DEPLOYMENT_STATUS_IN_PROGRESS" + } + ] + } + }, + { + "name": "target_name", + "description": "The bundle target name associated with this deployment.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "When the deployment was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "The user who most recently updated the deployment (email or principal name). Empty if\nauthoritative deployment metadata does not identify a modifier or the principal cannot be\nresolved.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_info", + "description": "Workspace location of the deployment.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "WorkspaceInfo", + "is_object": true + } + } + ] + }, + { + "name": "CreateVersion", + "description": "Creates a new version under a deployment.\n\nCreating a version acquires an exclusive lock on the deployment,\npreventing concurrent deploys. The caller provides a `version_id`,\na numeric string that must be numerically greater than the\ndeployment's most recent version, and sets the version's\n`previous_version_id` to the deployment's most recent version\n(leaving it unset for the first version), which the server validates\nto detect concurrent deploys.\n\nThe caller also provides the full set of `operations` planned for this\nversion, each identified by a `resource_key` and an `action_type`. The\nserver records one operation per resource in `OPERATION_STATUS_PENDING`\nin the same transaction as the version, so the plan is captured\natomically. The outcome of each operation is recorded later via\nUpdateOperation as the resource is applied; the set of operations cannot\nbe changed after the version is created.", + "summary": "Create a version.", + "path": "/api/2.0/bundle/{parent=deployments/*}/versions", + "can_use_json": true, + "is_crud_create": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateVersionRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "The parent deployment where this version will be created.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "The version to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Version", + "is_object": true + } + }, + { + "name": "version_id", + "description": "The ID to use for the version, which becomes the final component of\nthe version's resource name. A numeric string (base-10, fits in a\nsigned 64-bit integer) chosen by the caller; must be greater than or\nequal to 1. Must be numerically greater than the deployment's\nmost recent version (see `version.previous_version_id`); it does not\nneed to start at 1 or increase by exactly 1. If the value is not\nnumerically greater, the server returns `INVALID_PARAMETER_VALUE`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The parent deployment where this version will be created.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_id", + "description": "The ID to use for the version, which becomes the final component of\nthe version's resource name. A numeric string (base-10, fits in a\nsigned 64-bit integer) chosen by the caller; must be greater than or\nequal to 1. Must be numerically greater than the deployment's\nmost recent version (see `version.previous_version_id`); it does not\nneed to start at 1 or increase by exactly 1. If the value is not\nnumerically greater, the server returns `INVALID_PARAMETER_VALUE`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "version", + "description": "The version to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Version", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "version", + "description": "The version to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Version", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cli_version", + "description": "CLI version used to initiate the version.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_type", + "description": "Type of version (deploy or destroy).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionType", + "enum": [ + { + "content": "VERSION_TYPE_DEPLOY" + }, + { + "content": "VERSION_TYPE_DESTROY" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "cli_version", + "description": "CLI version used to initiate the version.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_type", + "description": "Type of version (deploy or destroy).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionType", + "enum": [ + { + "content": "VERSION_TYPE_DEPLOY" + }, + { + "content": "VERSION_TYPE_DESTROY" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "Version", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cli_version", + "description": "CLI version used to initiate the version.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_type", + "description": "Type of version (deploy or destroy).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionType", + "enum": [ + { + "content": "VERSION_TYPE_DEPLOY" + }, + { + "content": "VERSION_TYPE_DESTROY" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "cli_version", + "description": "CLI version used to initiate the version.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_type", + "description": "Type of version (deploy or destroy).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionType", + "enum": [ + { + "content": "VERSION_TYPE_DEPLOY" + }, + { + "content": "VERSION_TYPE_DESTROY" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "parent", + "description": "The parent deployment where this version will be created.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "The version to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Version", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cli_version", + "description": "CLI version used to initiate the version.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_type", + "description": "Type of version (deploy or destroy).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionType", + "enum": [ + { + "content": "VERSION_TYPE_DEPLOY" + }, + { + "content": "VERSION_TYPE_DESTROY" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "cli_version", + "description": "CLI version used to initiate the version.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_type", + "description": "Type of version (deploy or destroy).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionType", + "enum": [ + { + "content": "VERSION_TYPE_DEPLOY" + }, + { + "content": "VERSION_TYPE_DESTROY" + } + ] + } + } + ] + } + }, + { + "name": "version_id", + "description": "The ID to use for the version, which becomes the final component of\nthe version's resource name. A numeric string (base-10, fits in a\nsigned 64-bit integer) chosen by the caller; must be greater than or\nequal to 1. Must be numerically greater than the deployment's\nmost recent version (see `version.previous_version_id`); it does not\nneed to start at 1 or increase by exactly 1. If the value is not\nnumerically greater, the server returns `INVALID_PARAMETER_VALUE`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "cli_version", + "description": "CLI version used to initiate the version.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "complete_time", + "description": "When the version completed. Unset while the version is in progress.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "completed_by", + "description": "The user who completed the version (email or principal name).\nMay differ from `created_by` when another user force-completes\nthe version.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "completion_reason", + "description": "Why the version was completed. Unset while in progress.\nSet when status transitions to COMPLETED.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionComplete", + "enum": [ + { + "content": "VERSION_COMPLETE_FAILURE" + }, + { + "content": "VERSION_COMPLETE_FORCE_ABORT" + }, + { + "content": "VERSION_COMPLETE_LEASE_EXPIRED" + }, + { + "content": "VERSION_COMPLETE_SUCCESS" + } + ] + } + }, + { + "name": "create_time", + "description": "When the version was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "The user who created the version (email or principal name).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "deployment_mode", + "description": "Bundle target deployment mode (development or production), captured at the\ntime of this version.", + "is_request_body_field": true, + "entity": { + "pascal_name": "DeploymentMode", + "enum": [ + { + "content": "DEPLOYMENT_MODE_DEVELOPMENT" + }, + { + "content": "DEPLOYMENT_MODE_PRODUCTION" + } + ] + } + }, + { + "name": "display_name", + "description": "Display name for the deployment, captured at the time of this version. Up to 256 characters.\nWhen present, creating the version updates the deployment display name. An empty value clears\nit; an absent value leaves the current deployment display name unchanged.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_info", + "description": "Git provenance of the source, captured at the time of this version.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GitInfo", + "is_object": true + } + }, + { + "name": "name", + "description": "Resource name of the version.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "operations", + "description": "The full operation plan for this version: one PENDING operation per entry,\nrecorded in the same transaction. Input only -- supplied on create and never\nreturned by create/get/list; read the recorded operations via ListOperations.", + "is_request_body_field": true, + "entity": { + "pascal_name": "StagedOperationList", + "array_value": { + "pascal_name": "StagedOperation", + "is_object": true + } + } + }, + { + "name": "previous_version_id", + "description": "The version_id this version was created on top of — the deployment's\nmost recent version at creation time. Leave unset when creating the\nfirst version (the deployment has no prior versions). Set by the\nclient on creation and immutable thereafter.\n\nActs as an optimistic-concurrency precondition: the server requires\nit to equal the deployment's current most-recent version (and to be\nunset when the deployment has no versions) and returns\n`INVALID_PARAMETER_VALUE` on mismatch, so a deploy racing against a\nconcurrent deploy is rejected rather than silently overwriting it.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Status of the version: IN_PROGRESS or COMPLETED.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionStatus", + "enum": [ + { + "content": "VERSION_STATUS_COMPLETED" + }, + { + "content": "VERSION_STATUS_IN_PROGRESS" + } + ] + } + }, + { + "name": "target_name", + "description": "Target name of the deployment, captured at the time of this version.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_id", + "description": "Version identifier within the parent deployment, assigned by the\nclient on creation. A numeric string (base-10, fits in a signed\n64-bit integer) that is greater than or equal to 1. Version IDs are\nstrictly increasing within a deployment but are not required to\nstart at 1 or to be contiguous.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_type", + "description": "Type of version (deploy or destroy).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionType", + "enum": [ + { + "content": "VERSION_TYPE_DEPLOY" + }, + { + "content": "VERSION_TYPE_DESTROY" + } + ] + } + }, + { + "name": "workspace_info", + "description": "Workspace location of the deployment, captured at the time of this version.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "WorkspaceInfo", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The parent deployment where this version will be created.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_id", + "description": "The ID to use for the version, which becomes the final component of\nthe version's resource name. A numeric string (base-10, fits in a\nsigned 64-bit integer) chosen by the caller; must be greater than or\nequal to 1. Must be numerically greater than the deployment's\nmost recent version (see `version.previous_version_id`); it does not\nneed to start at 1 or increase by exactly 1. If the value is not\nnumerically greater, the server returns `INVALID_PARAMETER_VALUE`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "cli_version", + "description": "CLI version used to initiate the version.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_type", + "description": "Type of version (deploy or destroy).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionType", + "enum": [ + { + "content": "VERSION_TYPE_DEPLOY" + }, + { + "content": "VERSION_TYPE_DESTROY" + } + ] + } + } + ] + }, + { + "name": "DeleteDeployment", + "description": "Deletes a deployment.", + "summary": "Delete a deployment.", + "path": "/api/2.0/bundle/{name=deployments/*}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteDeploymentRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the deployment to delete.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the deployment to delete.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name of the deployment to delete.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the deployment to delete.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetDeployment", + "description": "Retrieves a deployment by its resource name.", + "summary": "Get a deployment.", + "path": "/api/2.0/bundle/{name=deployments/*}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetDeploymentRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the deployment to retrieve.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the deployment to retrieve.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Deployment", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name of the deployment to retrieve.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the deployment to retrieve.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetOperation", + "description": "Retrieves a resource operation by its resource name.", + "summary": "Get an operation.", + "path": "/api/2.0/bundle/{name=deployments/*/versions/*/operations/*}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetOperationRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the resource operation to retrieve.\nFormat: deployments/{deployment_id}/versions/{version_id}/operations/{resource_key}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the resource operation to retrieve.\nFormat: deployments/{deployment_id}/versions/{version_id}/operations/{resource_key}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the resource operation to retrieve.\nFormat: deployments/{deployment_id}/versions/{version_id}/operations/{resource_key}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the resource operation to retrieve.\nFormat: deployments/{deployment_id}/versions/{version_id}/operations/{resource_key}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetResource", + "description": "Retrieves a deployment resource by its resource name.", + "summary": "Get a resource.", + "path": "/api/2.0/bundle/{name=deployments/*/resources/*}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetResourceRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the resource to retrieve.\nFormat: deployments/{deployment_id}/resources/{resource_key}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the resource to retrieve.\nFormat: deployments/{deployment_id}/resources/{resource_key}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Resource", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "resource_type", + "description": "The type of the deployment resource.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DeploymentResourceType", + "enum": [ + { + "content": "DEPLOYMENT_RESOURCE_TYPE_ALERT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_APP" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_CATALOG" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_CLUSTER" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_CLUSTER_POLICY" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_DASHBOARD" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_DATABASE_CATALOG" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_DATABASE_INSTANCE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_EXPERIMENT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_EXTERNAL_LOCATION" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_GENIE_SPACE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_INSTANCE_POOL" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_JOB" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_JOB_RUN" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_MODEL" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_MODEL_SERVING_ENDPOINT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_PIPELINE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_BRANCH" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_CATALOG" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_DATABASE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_ENDPOINT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_PROJECT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_ROLE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_SYNCED_TABLE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_QUALITY_MONITOR" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_REGISTERED_MODEL" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_SCHEMA" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_SECRET" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_SECRET_SCOPE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_SQL_WAREHOUSE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_SYNCED_DATABASE_TABLE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_VECTOR_SEARCH_ENDPOINT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_VECTOR_SEARCH_INDEX" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_VOLUME" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "resource_type", + "description": "The type of the deployment resource.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DeploymentResourceType", + "enum": [ + { + "content": "DEPLOYMENT_RESOURCE_TYPE_ALERT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_APP" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_CATALOG" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_CLUSTER" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_CLUSTER_POLICY" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_DASHBOARD" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_DATABASE_CATALOG" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_DATABASE_INSTANCE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_EXPERIMENT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_EXTERNAL_LOCATION" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_GENIE_SPACE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_INSTANCE_POOL" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_JOB" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_JOB_RUN" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_MODEL" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_MODEL_SERVING_ENDPOINT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_PIPELINE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_BRANCH" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_CATALOG" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_DATABASE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_ENDPOINT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_PROJECT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_ROLE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_SYNCED_TABLE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_QUALITY_MONITOR" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_REGISTERED_MODEL" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_SCHEMA" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_SECRET" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_SECRET_SCOPE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_SQL_WAREHOUSE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_SYNCED_DATABASE_TABLE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_VECTOR_SEARCH_ENDPOINT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_VECTOR_SEARCH_INDEX" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_VOLUME" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the resource to retrieve.\nFormat: deployments/{deployment_id}/resources/{resource_key}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the resource to retrieve.\nFormat: deployments/{deployment_id}/resources/{resource_key}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetVersion", + "description": "Retrieves a version by its resource name.", + "summary": "Get a version.", + "path": "/api/2.0/bundle/{name=deployments/*/versions/*}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetVersionRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the version to retrieve.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the version to retrieve.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Version", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cli_version", + "description": "CLI version used to initiate the version.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_type", + "description": "Type of version (deploy or destroy).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionType", + "enum": [ + { + "content": "VERSION_TYPE_DEPLOY" + }, + { + "content": "VERSION_TYPE_DESTROY" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "cli_version", + "description": "CLI version used to initiate the version.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_type", + "description": "Type of version (deploy or destroy).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VersionType", + "enum": [ + { + "content": "VERSION_TYPE_DEPLOY" + }, + { + "content": "VERSION_TYPE_DESTROY" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the version to retrieve.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the version to retrieve.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Heartbeat", + "description": "Sends a heartbeat to renew the lock held by a version.\n\nThe server validates that the version is the active (non-terminal)\nversion on the parent deployment and resets the lock expiry. If the\nlock has already expired or the version is no longer active, the\nserver returns `ABORTED`.", + "summary": "Send a version heartbeat.", + "path": "/api/2.0/bundle/{name=deployments/*/versions/*}/heartbeat", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "HeartbeatRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The version whose lock to renew.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The version whose lock to renew.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "HeartbeatResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The version whose lock to renew.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The version whose lock to renew.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListDeployments", + "description": "Lists deployments in the workspace.", + "summary": "List deployments.", + "path": "/api/2.0/bundle/deployments", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListDeploymentsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListDeploymentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of deployments to return. The service may return\nfewer than this value.\nIf unspecified, at most 20 deployments will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListDeployments` call.\nProvide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "show_deleted", + "description": "Whether to include soft-deleted deployments in the response. Defaults to\nfalse. When true, returns both live and soft-deleted deployments visible to\nthe caller, subject to the filter. Soft-deleted deployments have status\n`DEPLOYMENT_STATUS_DELETED`.", + "is_query": true, + "entity": { + "is_bool": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListDeployments` call.\nProvide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListOperations", + "description": "Lists resource operations under a version.", + "summary": "List operations.", + "path": "/api/2.0/bundle/{parent=deployments/*/versions/*}/operations", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListOperationsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The parent version.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The parent version.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListOperationsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of operations to return. The service may return\nfewer than this value.\nIf unspecified, at most 50 operations will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListOperations` call.\nProvide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The parent version.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The parent version.\nFormat: deployments/{deployment_id}/versions/{version_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListOperations` call.\nProvide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListResources", + "description": "Lists resources under a deployment.", + "summary": "List resources.", + "path": "/api/2.0/bundle/{parent=deployments/*}/resources", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListResourcesRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The parent deployment.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The parent deployment.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListResourcesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of resources to return. The service may return\nfewer than this value.\nIf unspecified, at most 50 resources will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListResources` call.\nProvide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The parent deployment.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The parent deployment.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListResources` call.\nProvide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListVersions", + "description": "Lists versions under a deployment, ordered numerically by\nversion_id descending (most recent first).", + "summary": "List versions.", + "path": "/api/2.0/bundle/{parent=deployments/*}/versions", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListVersionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The parent deployment.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The parent deployment.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListVersionsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of versions to return. The service may return\nfewer than this value.\nIf unspecified, at most 20 versions will be returned.\nThe maximum value is 100; values above 100 will be coerced to 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListVersions` call.\nProvide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The parent deployment.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The parent deployment.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListVersions` call.\nProvide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateDeployment", + "description": "Updates a deployment.", + "summary": "Update a deployment.", + "path": "/api/2.0/bundle/{name=deployments/*}", + "can_use_json": true, + "must_use_json": true, + "is_json_only": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateDeploymentRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the deployment.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "deployment", + "description": "The deployment to update. Its `name` selects the deployment; the fields\nnamed in `update_mask` carry the new values. All other fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Deployment", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The fields to update; supported paths are `display_name`, `deployment_mode`, `target_name`,\nand `workspace_info`. An empty mask or any other path returns INVALID_PARAMETER_VALUE.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the deployment.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The fields to update; supported paths are `display_name`, `deployment_mode`, `target_name`,\nand `workspace_info`. An empty mask or any other path returns INVALID_PARAMETER_VALUE.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "deployment", + "description": "The deployment to update. Its `name` selects the deployment; the fields\nnamed in `update_mask` carry the new values. All other fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Deployment", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "deployment", + "description": "The deployment to update. Its `name` selects the deployment; the fields\nnamed in `update_mask` carry the new values. All other fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Deployment", + "is_object": true + } + }, + "response": { + "pascal_name": "Deployment", + "is_object": true + }, + "all_fields": [ + { + "name": "deployment", + "description": "The deployment to update. Its `name` selects the deployment; the fields\nnamed in `update_mask` carry the new values. All other fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Deployment", + "is_object": true + } + }, + { + "name": "name", + "description": "Resource name of the deployment.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The fields to update; supported paths are `display_name`, `deployment_mode`, `target_name`,\nand `workspace_info`. An empty mask or any other path returns INVALID_PARAMETER_VALUE.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "create_time", + "description": "When the deployment was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "The user who created the deployment (email or principal name). Empty if authoritative\ndeployment metadata does not identify a creator or the principal cannot be resolved.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "deployment_mode", + "description": "Bundle target deployment mode (development or production).", + "is_request_body_field": true, + "entity": { + "pascal_name": "DeploymentMode", + "enum": [ + { + "content": "DEPLOYMENT_MODE_DEVELOPMENT" + }, + { + "content": "DEPLOYMENT_MODE_PRODUCTION" + } + ] + } + }, + { + "name": "destroy_time", + "description": "When deletion was recorded. Unset if deletion has not been recorded.\nThis response metadata does not determine the deployment's lifecycle status.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "destroyed_by", + "description": "The user who destroyed the deployment (email or principal name).\nUnset if the deployment has not been destroyed.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Human-readable name for the deployment, up to 256 characters.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_info", + "description": "Git provenance of the deployment's source, derived from the latest version.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GitInfo", + "is_object": true + } + }, + { + "name": "initial_parent_path", + "description": "The workspace path of the existing folder where the deployment is initially created. Must be\nabsolute and canonical, with single separators, no `.` or `..` segments, and no trailing slash\nunless the path is `/`. It may contain at most 24 path segments, excluding an optional leading\n`/Workspace` segment. The complete path may contain up to 1,024 characters, and each segment\nmay contain up to 511 characters. This field is input only and is not returned in create, get,\nor list responses.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "last_successful_version_id", + "description": "The version_id of the most recent version that completed successfully.\nUnset until a version has completed successfully. Unlike last_version_id,\nit is not advanced when a version fails, so it always points at the last\nknown-good deployment state (or is unset if there has never been one).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "last_version_id", + "description": "The version_id of the most recent deployment version.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name of the deployment.\nFormat: deployments/{deployment_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Current status of the deployment.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DeploymentStatus", + "enum": [ + { + "content": "DEPLOYMENT_STATUS_ACTIVE" + }, + { + "content": "DEPLOYMENT_STATUS_DELETED" + }, + { + "content": "DEPLOYMENT_STATUS_FAILED" + }, + { + "content": "DEPLOYMENT_STATUS_IN_PROGRESS" + } + ] + } + }, + { + "name": "target_name", + "description": "The bundle target name associated with this deployment.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "When the deployment was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "The user who most recently updated the deployment (email or principal name). Empty if\nauthoritative deployment metadata does not identify a modifier or the principal cannot be\nresolved.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_info", + "description": "Workspace location of the deployment.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "WorkspaceInfo", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the deployment.\nFormat: deployments/{deployment_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateOperation", + "description": "Updates a resource operation's mutable fields.\n\n`state`, `error_message`, `resource_id`, `status`, and `dashboard_metadata`\nmay be updated, independently; `update_mask` must contain only those paths.\nAll other fields are immutable. The update is guarded by an\noptimistic-concurrency check: the caller sets `operation.sequence_id` to the\nvalue it last observed, and the server rejects the update with `ABORTED` if\nthe operation has been modified since. On success the server increments\n`sequence_id`; updates to `state`, `resource_id`, and `dashboard_metadata`\nare mirrored onto the corresponding deployment-level resource. Listing\n`state` in `update_mask` with no value clears it, which removes the\nresource, so a delete that is retried until it succeeds must clear `state`.\nThe parent version must be in progress, and after the update is applied a\nsucceeded operation cannot carry an `error_message`. See the `state` and\n`resource_id` fields for the rest.", + "summary": "Update an operation.", + "path": "/api/2.0/bundle/{name=deployments/*/versions/*/operations/*}", + "can_use_json": true, + "must_use_json": true, + "is_json_only": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateOperationRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the operation.\nFormat: deployments/{deployment_id}/versions/{version_id}/operations/{resource_key}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "operation", + "description": "The operation to update. Its `name` selects the operation; the fields named\nin `update_mask` carry the new values; and `sequence_id` carries the\noptimistic-concurrency precondition (see the field docs on Operation). All\nother fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Operation", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The set of fields to update. Required; supported paths are `state`,\n`error_message`, `resource_id`, `status`, and `dashboard_metadata`. An empty\nmask or any other path is rejected with INVALID_PARAMETER_VALUE.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the operation.\nFormat: deployments/{deployment_id}/versions/{version_id}/operations/{resource_key}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The set of fields to update. Required; supported paths are `state`,\n`error_message`, `resource_id`, `status`, and `dashboard_metadata`. An empty\nmask or any other path is rejected with INVALID_PARAMETER_VALUE.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "operation", + "description": "The operation to update. Its `name` selects the operation; the fields named\nin `update_mask` carry the new values; and `sequence_id` carries the\noptimistic-concurrency precondition (see the field docs on Operation). All\nother fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Operation", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "operation", + "description": "The operation to update. Its `name` selects the operation; the fields named\nin `update_mask` carry the new values; and `sequence_id` carries the\noptimistic-concurrency precondition (see the field docs on Operation). All\nother fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Operation", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name of the operation.\nFormat: deployments/{deployment_id}/versions/{version_id}/operations/{resource_key}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "operation", + "description": "The operation to update. Its `name` selects the operation; the fields named\nin `update_mask` carry the new values; and `sequence_id` carries the\noptimistic-concurrency precondition (see the field docs on Operation). All\nother fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Operation", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The set of fields to update. Required; supported paths are `state`,\n`error_message`, `resource_id`, `status`, and `dashboard_metadata`. An empty\nmask or any other path is rejected with INVALID_PARAMETER_VALUE.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "action_type", + "description": "The type of operation performed on this resource. Set when the version is\ncreated and immutable thereafter.", + "is_request_body_field": true, + "entity": { + "pascal_name": "OperationActionType", + "enum": [ + { + "content": "OPERATION_ACTION_TYPE_BIND" + }, + { + "content": "OPERATION_ACTION_TYPE_BIND_AND_UPDATE" + }, + { + "content": "OPERATION_ACTION_TYPE_CREATE" + }, + { + "content": "OPERATION_ACTION_TYPE_DELETE" + }, + { + "content": "OPERATION_ACTION_TYPE_INITIAL_REGISTER" + }, + { + "content": "OPERATION_ACTION_TYPE_RECREATE" + }, + { + "content": "OPERATION_ACTION_TYPE_RESIZE" + }, + { + "content": "OPERATION_ACTION_TYPE_UPDATE" + }, + { + "content": "OPERATION_ACTION_TYPE_UPDATE_WITH_ID" + } + ] + } + }, + { + "name": "create_time", + "description": "When the operation was recorded.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "dashboard_metadata", + "description": "Dashboard-specific metadata; set only for dashboard resources. Mutable: may\nbe set or updated via UpdateOperation as the resource is applied, and is\nmirrored onto the corresponding deployment-level resource.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DashboardMetadata", + "is_object": true + } + }, + { + "name": "error_message", + "description": "Error message if the operation failed. Set when status is\nOPERATION_STATUS_FAILED. Captures the error encountered while applying the\nresource to the workspace. Mutable: may be updated after creation via\nUpdateOperation; setting it to an empty string clears it. After an update\nis applied, an operation whose status is OPERATION_STATUS_SUCCEEDED cannot\ncarry an error_message.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name of the operation.\nFormat: deployments/{deployment_id}/versions/{version_id}/operations/{resource_key}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "resource_id", + "description": "ID of the actual resource in the workspace (e.g. the job ID, pipeline ID).\nRequired whenever `state` is set, because state records a resource that\nexists. A CREATE or RECREATE that has not produced its resource yet records\nneither. Mutable: may be filled in (or corrected) later via UpdateOperation\nonce the ID is known.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "resource_key", + "description": "Resource identifier within the bundle (e.g. \"jobs.foo\",\n\"pipelines.bar\", \"jobs.foo.permissions\", \"files.\u003crel-path\u003e\").\nCan be an arbitrary UTF-8 encoded string key. This key links the\noperation to the corresponding deployment-level Resource. Set when the\nversion is created and immutable thereafter.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "resource_type", + "description": "The type of the deployment resource this operation applies to. Derived\nfrom the `resource_key` prefix (e.g. \"jobs\" → JOB); the caller does not\nset this field.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DeploymentResourceType", + "enum": [ + { + "content": "DEPLOYMENT_RESOURCE_TYPE_ALERT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_APP" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_CATALOG" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_CLUSTER" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_CLUSTER_POLICY" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_DASHBOARD" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_DATABASE_CATALOG" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_DATABASE_INSTANCE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_EXPERIMENT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_EXTERNAL_LOCATION" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_GENIE_SPACE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_INSTANCE_POOL" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_JOB" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_JOB_RUN" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_MODEL" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_MODEL_SERVING_ENDPOINT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_PIPELINE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_BRANCH" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_CATALOG" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_DATABASE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_ENDPOINT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_PROJECT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_ROLE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_POSTGRES_SYNCED_TABLE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_QUALITY_MONITOR" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_REGISTERED_MODEL" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_SCHEMA" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_SECRET" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_SECRET_SCOPE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_SQL_WAREHOUSE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_SYNCED_DATABASE_TABLE" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_VECTOR_SEARCH_ENDPOINT" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_VECTOR_SEARCH_INDEX" + }, + { + "content": "DEPLOYMENT_RESOURCE_TYPE_VOLUME" + } + ] + } + }, + { + "name": "sequence_id", + "description": "Monotonically increasing revision used for optimistic concurrency control\n(the AIP-154 concurrency token for this resource, realized as a sequence\nnumber rather than an opaque etag). The server assigns 0 when the operation\nis created and increments it on every successful UpdateOperation, so a\nnever-updated operation is at 0 and the first successful update makes it 1.\nIt is OPTIONAL rather than OUTPUT_ONLY because it is dual-purpose:\nGetOperation returns the current value, and UpdateOperation reads the\ncaller-supplied value as a precondition. The caller must echo the value it\nlast observed; if it no longer matches the server's value, the update is\nrejected with ABORTED so the caller can re-read and retry.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "state", + "description": "Serialized local config state after the operation. Its presence records\nwhether the resource still exists. Explicitly clearing state removes the resource;\nomitting it from the update mask leaves resource state unchanged.\nState is stored only on Resources. UpdateOperation accepts state but omits it\nfrom its response, as do subsequent GetOperation and ListOperations.\n\nMutable: may be updated after creation via UpdateOperation. When updating,\nthe caller must echo the last-observed `sequence_id` as a concurrency\nprecondition.\n\nThe string is not parsed; it is projected onto the corresponding Resource's\nstate. It is deliberately not google.protobuf.Value, whose only numeric case\nis `double number_value`, so parsing the client's JSON into it rewrites every\ninteger as a double - `1` reads back as `1.0`, which no longer deserializes\ninto an integer field - and silently loses precision above 2^53, which is\nwithin range for IDs the client records.\n\nA string rather than bytes: the payload is always UTF-8 JSON, and proto3 JSON\nmaps bytes to base64, which inflates every request and response by a third\nand makes state unreadable in logs and API responses. Both generate the same\nOpenAPI schema (\"type\": \"string\"), so the SDKs are identical either way.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Status of the operation. Starts as OPERATION_STATUS_PENDING when the version\nis created and moves to a terminal status once the resource is applied.\nMutable: updated via UpdateOperation, e.g. when an operation recorded as\nfailed is retried and eventually succeeds.", + "is_request_body_field": true, + "entity": { + "pascal_name": "OperationStatus", + "enum": [ + { + "content": "OPERATION_STATUS_FAILED" + }, + { + "content": "OPERATION_STATUS_PENDING" + }, + { + "content": "OPERATION_STATUS_SUCCEEDED" + } + ] + } + }, + { + "name": "update_time", + "description": "When the operation was last updated. Set to `create_time` when the operation is created and\nto the server timestamp on each successful UpdateOperation.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the operation.\nFormat: deployments/{deployment_id}/versions/{version_id}/operations/{resource_key}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.Catalogs", + "name": "Catalogs", + "description": "A catalog is the first layer of Unity Catalog’s three-level namespace. It’s used to organize\nyour data assets. Users can see all catalogs on which they have been assigned the USE_CATALOG\ndata permission.\n\nIn Unity Catalog, admins and data stewards manage users and their access to data centrally\nacross all of the workspaces in a Databricks account. Users in different workspaces can\nshare access to the same data, depending on privileges granted centrally in Unity Catalog.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListCatalogsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new catalog instance in the parent metastore if the caller is a metastore admin or has the **CREATE_CATALOG** privilege.", + "summary": "Create a catalog.", + "path": "/api/2.1/unity-catalog/catalogs", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateCatalog", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CatalogInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "User-provided free-form text description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "connection_name", + "description": "The name of the connection to an external data source.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_max_retention_hours", + "description": "Custom maximum retention period in hours for the catalog", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "managed_encryption_settings", + "description": "Control CMK encryption for managed catalog data", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EncryptionSettings", + "is_object": true + } + }, + { + "name": "name", + "description": "Name of catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "A map of key-value properties attached to the securable.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "properties", + "description": "A map of key-value properties attached to the securable.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "provider_name", + "description": "The name of delta sharing provider.\n\nA Delta Sharing catalog is a catalog that is based on a Delta share on a remote sharing server.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "share_name", + "description": "The name of the share under the share provider.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_root", + "description": "Storage root URL for managed tables within catalog.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes the catalog that matches the supplied name. The caller must be a metastore admin or the owner of the catalog.", + "summary": "Delete a catalog.", + "path": "/api/2.1/unity-catalog/catalogs/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteCatalogRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "force", + "description": "Force deletion even if the catalog is not empty.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the specified catalog in a metastore.\nThe caller must be a metastore admin, the owner of the catalog, or a user that has the **USE_CATALOG** privilege set for their account.", + "summary": "Get a catalog.", + "path": "/api/2.1/unity-catalog/catalogs/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetCatalogRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CatalogInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "include_browse", + "description": "Whether to include catalogs in the response for which the principal can only access selective metadata for", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets an array of catalogs in the metastore.\nIf the caller is the metastore admin, all catalogs will be retrieved.\nOtherwise, only catalogs owned by the caller (or for which the caller has the **USE_CATALOG** privilege) will be retrieved.\nThere is no guarantee of a specific ordering of the elements in the array.\n\nNOTE: we recommend using max_results=0 to use the paginated version of this API. Unpaginated calls will be deprecated soon.\n\nPAGINATION BEHAVIOR: When using pagination (max_results \u003e= 0), a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List catalogs.", + "path": "/api/2.1/unity-catalog/catalogs", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListCatalogsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListCatalogsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "include_browse", + "description": "Whether to include catalogs in the response for which the principal can only access selective metadata for", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "include_unbound", + "description": "Whether to include catalogs not bound to the workspace.\nEffective only if the user has permission to update the catalog–workspace binding.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "max_results", + "description": "Maximum number of catalogs to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid catalogs are returned (not recommended).\n- Note: The number of returned catalogs might be less than the specified max_results size, even zero.\nThe only definitive indication that no further catalogs can be fetched is when the next_page_token is unset from the response.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + }, + "max_results": { + "name": "max_results", + "description": "Maximum number of catalogs to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid catalogs are returned (not recommended).\n- Note: The number of returned catalogs might be less than the specified max_results size, even zero.\nThe only definitive indication that no further catalogs can be fetched is when the next_page_token is unset from the response.", + "is_query": true, + "entity": { + "is_int": true + } + } + } + }, + { + "name": "Update", + "description": "Updates the catalog that matches the supplied name.\nThe caller must be either the owner of the catalog, or a metastore admin (when changing the owner field of the catalog).", + "summary": "Update a catalog.", + "path": "/api/2.1/unity-catalog/catalogs/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateCatalog", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CatalogInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "User-provided free-form text description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_max_retention_hours", + "description": "Custom maximum retention period in hours for the catalog", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "enable_predictive_optimization", + "description": "Whether predictive optimization should be enabled for this object and objects under it.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EnablePredictiveOptimization", + "enum": [ + { + "content": "DISABLE" + }, + { + "content": "ENABLE" + }, + { + "content": "INHERIT" + } + ] + } + }, + { + "name": "isolation_mode", + "description": "Whether the current securable is accessible from all workspaces or a specific set of workspaces.", + "is_request_body_field": true, + "entity": { + "pascal_name": "CatalogIsolationMode", + "enum": [ + { + "content": "ISOLATED" + }, + { + "content": "OPEN" + } + ] + } + }, + { + "name": "managed_encryption_settings", + "description": "Control CMK encryption for managed catalog data", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EncryptionSettings", + "is_object": true + } + }, + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "new_name", + "description": "New name for the catalog.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "A map of key-value properties attached to the securable.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "owner", + "description": "Username of current owner of catalog.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "properties", + "description": "A map of key-value properties attached to the securable.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "cleanrooms.CleanRoomAssetRevisions", + "name": "CleanRoomAssetRevisions", + "description": "Clean Room Asset Revisions denote new versions\nof uploaded assets (e.g. notebooks) in the clean room.", + "package": { + "name": "cleanrooms" + }, + "docs_group": "cleanrooms", + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "list": { + "request": { + "pascal_name": "ListCleanRoomAssetRevisionsRequest" + } + }, + "methods": [ + { + "name": "Get", + "description": "Get a specific revision of an asset", + "summary": "Get an asset revision.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/assets/{asset_type}/{name}/revisions/{etag}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetCleanRoomAssetRevisionRequest", + "is_object": true, + "required_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "Asset type. Only NOTEBOOK_FILE is supported.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "Name of the asset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Revision etag to fetch. If not provided, the latest revision will be returned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "Asset type. Only NOTEBOOK_FILE is supported.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "Name of the asset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Revision etag to fetch. If not provided, the latest revision will be returned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CleanRoomAsset", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "asset_type", + "description": "Asset type. Only NOTEBOOK_FILE is supported.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Revision etag to fetch. If not provided, the latest revision will be returned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the asset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "Asset type. Only NOTEBOOK_FILE is supported.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "Name of the asset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Revision etag to fetch. If not provided, the latest revision will be returned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List revisions for an asset", + "summary": "List asset revisions.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/assets/{asset_type}/{name}/revisions", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListCleanRoomAssetRevisionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "Asset type. Only NOTEBOOK_FILE is supported.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "Name of the asset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "Asset type. Only NOTEBOOK_FILE is supported.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "Name of the asset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListCleanRoomAssetRevisionsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "asset_type", + "description": "Asset type. Only NOTEBOOK_FILE is supported.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the asset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Maximum number of asset revisions to return. Defaults to 10.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on the previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "Asset type. Only NOTEBOOK_FILE is supported.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "Name of the asset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on the previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "cleanrooms.CleanRoomAssets", + "name": "CleanRoomAssets", + "description": "Clean room assets are data and code objects — Tables, volumes, and notebooks that are shared\nwith the clean room.", + "package": { + "name": "cleanrooms" + }, + "docs_group": "cleanrooms", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListCleanRoomAssetsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Create a clean room asset —share an asset like a notebook or table into the clean room.\nFor each UC asset that is added through this method, the clean room owner must also have\nenough privilege on the asset to consume it.\nThe privilege must be maintained indefinitely for the clean room to be able to access the asset.\nTypically, you should use a group as the clean room owner.", + "summary": "Create an asset.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/assets", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateCleanRoomAssetRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "clean_room_name", + "description": "The name of the clean room this asset belongs to.\nThis field is required for create operations and populated by the server for responses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAsset", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "description": "The name of the clean room this asset belongs to.\nThis field is required for create operations and populated by the server for responses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "asset", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAsset", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "asset", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAsset", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "CleanRoomAsset", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "asset", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAsset", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ] + } + }, + { + "name": "clean_room_name", + "description": "The name of the clean room this asset belongs to.\nThis field is required for create operations and populated by the server for responses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "added_at", + "description": "When the asset is added to the clean room, in epoch milliseconds.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "clean_room_name", + "description": "The name of the clean room this asset belongs to.\nThis field is required for create operations and populated by the server for responses.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "foreign_table", + "description": "Foreign table details available to all collaborators of the clean room.\nPresent if and only if **asset_type** is **FOREIGN_TABLE**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetForeignTable", + "is_object": true + } + }, + { + "name": "foreign_table_local_details", + "description": "Local details for a foreign that are only available to its owner.\nPresent if and only if **asset_type** is **FOREIGN_TABLE**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetForeignTableLocalDetails", + "is_object": true + } + }, + { + "name": "jar_analysis", + "description": "Jar analysis details available to all collaborators of the clean room.\nPresent if and only if **asset_type** is **JAR_ANALYSIS**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetJarAnalysis", + "is_object": true + } + }, + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "notebook", + "description": "Notebook details available to all collaborators of the clean room.\nPresent if and only if **asset_type** is **NOTEBOOK_FILE**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetNotebook", + "is_object": true + } + }, + { + "name": "owner_collaborator_alias", + "description": "The alias of the collaborator who owns this asset", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Status of the asset", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetStatusEnum", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "PENDING" + }, + { + "content": "PERMISSION_DENIED" + } + ] + } + }, + { + "name": "table", + "description": "Table details available to all collaborators of the clean room.\nPresent if and only if **asset_type** is **TABLE** or **STREAMING_TABLE**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetTable", + "is_object": true + } + }, + { + "name": "table_local_details", + "description": "Local details for a table that are only available to its owner.\nPresent if and only if **asset_type** is **TABLE** or **STREAMING_TABLE**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetTableLocalDetails", + "is_object": true + } + }, + { + "name": "view", + "description": "View details available to all collaborators of the clean room.\nPresent if and only if **asset_type** is **VIEW** or **METRIC_VIEW**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetView", + "is_object": true + } + }, + { + "name": "view_local_details", + "description": "Local details for a view that are only available to its owner.\nPresent if and only if **asset_type** is **VIEW** or **METRIC_VIEW**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetViewLocalDetails", + "is_object": true + } + }, + { + "name": "volume_local_details", + "description": "Local details for a volume that are only available to its owner.\nPresent if and only if **asset_type** is **VOLUME**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetVolumeLocalDetails", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "description": "The name of the clean room this asset belongs to.\nThis field is required for create operations and populated by the server for responses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ] + }, + { + "name": "CreateCleanRoomAssetReview", + "description": "Submit an asset review", + "summary": "Create a review (e.g. approval) for an asset.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/assets/{asset_type}/{name}/reviews", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateCleanRoomAssetReviewRequest", + "is_object": true, + "required_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "Asset type. Can either be NOTEBOOK_FILE or JAR_ANALYSIS.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "Name of the asset", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "Asset type. Can either be NOTEBOOK_FILE or JAR_ANALYSIS.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "Name of the asset", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateCleanRoomAssetReviewResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "asset_type", + "description": "Asset type. Can either be NOTEBOOK_FILE or JAR_ANALYSIS.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "clean_room_name", + "description": "Name of the clean room", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "jar_analysis_review", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "JarAnalysisVersionReview", + "is_object": true + } + }, + { + "name": "name", + "description": "Name of the asset", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "notebook_review", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "NotebookVersionReview", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "description": "Name of the clean room", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "Asset type. Can either be NOTEBOOK_FILE or JAR_ANALYSIS.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "Name of the asset", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Delete a clean room asset - unshare/remove the asset from the clean room", + "summary": "Delete an asset.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/assets/{asset_type}/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteCleanRoomAssetRequest", + "is_object": true, + "required_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "The fully qualified name of the asset, it is same as the name field in CleanRoomAsset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "The fully qualified name of the asset, it is same as the name field in CleanRoomAsset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteCleanRoomAssetResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The fully qualified name of the asset, it is same as the name field in CleanRoomAsset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "The fully qualified name of the asset, it is same as the name field in CleanRoomAsset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Get the details of a clean room asset by its type and full name.", + "summary": "Get an asset.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/assets/{asset_type}/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetCleanRoomAssetRequest", + "is_object": true, + "required_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "The fully qualified name of the asset, it is same as the name field in CleanRoomAsset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "The fully qualified name of the asset, it is same as the name field in CleanRoomAsset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CleanRoomAsset", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The fully qualified name of the asset, it is same as the name field in CleanRoomAsset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "The fully qualified name of the asset, it is same as the name field in CleanRoomAsset.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List assets.", + "summary": "List assets.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/assets", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListCleanRoomAssetsRequest", + "is_object": true, + "required_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListCleanRoomAssetsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Update a clean room asset. For example, updating the content of a notebook;\nchanging the shared partitions of a table; etc.", + "summary": "Update an asset.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/assets/{asset_type}/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateCleanRoomAssetRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset", + "description": "The asset to update.\nThe asset's `name` and `asset_type` fields are used to identify the asset to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAsset", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "asset", + "description": "The asset to update.\nThe asset's `name` and `asset_type` fields are used to identify the asset to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAsset", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "asset", + "description": "The asset to update.\nThe asset's `name` and `asset_type` fields are used to identify the asset to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAsset", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "CleanRoomAsset", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "asset", + "description": "The asset to update.\nThe asset's `name` and `asset_type` fields are used to identify the asset to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAsset", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + } + ] + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "added_at", + "description": "When the asset is added to the clean room, in epoch milliseconds.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "clean_room_name", + "description": "The name of the clean room this asset belongs to.\nThis field is required for create operations and populated by the server for responses.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "foreign_table", + "description": "Foreign table details available to all collaborators of the clean room.\nPresent if and only if **asset_type** is **FOREIGN_TABLE**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetForeignTable", + "is_object": true + } + }, + { + "name": "foreign_table_local_details", + "description": "Local details for a foreign that are only available to its owner.\nPresent if and only if **asset_type** is **FOREIGN_TABLE**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetForeignTableLocalDetails", + "is_object": true + } + }, + { + "name": "jar_analysis", + "description": "Jar analysis details available to all collaborators of the clean room.\nPresent if and only if **asset_type** is **JAR_ANALYSIS**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetJarAnalysis", + "is_object": true + } + }, + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "notebook", + "description": "Notebook details available to all collaborators of the clean room.\nPresent if and only if **asset_type** is **NOTEBOOK_FILE**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetNotebook", + "is_object": true + } + }, + { + "name": "owner_collaborator_alias", + "description": "The alias of the collaborator who owns this asset", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Status of the asset", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAssetStatusEnum", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "PENDING" + }, + { + "content": "PERMISSION_DENIED" + } + ] + } + }, + { + "name": "table", + "description": "Table details available to all collaborators of the clean room.\nPresent if and only if **asset_type** is **TABLE** or **STREAMING_TABLE**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetTable", + "is_object": true + } + }, + { + "name": "table_local_details", + "description": "Local details for a table that are only available to its owner.\nPresent if and only if **asset_type** is **TABLE** or **STREAMING_TABLE**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetTableLocalDetails", + "is_object": true + } + }, + { + "name": "view", + "description": "View details available to all collaborators of the clean room.\nPresent if and only if **asset_type** is **VIEW** or **METRIC_VIEW**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetView", + "is_object": true + } + }, + { + "name": "view_local_details", + "description": "Local details for a view that are only available to its owner.\nPresent if and only if **asset_type** is **VIEW** or **METRIC_VIEW**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetViewLocalDetails", + "is_object": true + } + }, + { + "name": "volume_local_details", + "description": "Local details for a volume that are only available to its owner.\nPresent if and only if **asset_type** is **VOLUME**", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomAssetVolumeLocalDetails", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "asset_type", + "description": "The type of the asset.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "CleanRoomAssetAssetType", + "enum": [ + { + "content": "FOREIGN_TABLE" + }, + { + "content": "JAR_ANALYSIS" + }, + { + "content": "NOTEBOOK_FILE" + }, + { + "content": "TABLE" + }, + { + "content": "VIEW" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "name", + "description": "A fully qualified name that uniquely identifies the asset within the clean room.\nThis is also the name displayed in the clean room UI.\n\nFor UC securable assets (tables, volumes, etc.), the format is *shared_catalog*.*shared_schema*.*asset_name*\n\nFor notebooks, the name is the notebook file name.\nFor jar analyses, the name is the jar analysis name.\nFor Genie spaces, the name is derived from the clean room; the caller does not choose it.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "cleanrooms.CleanRoomAutoApprovalRules", + "name": "CleanRoomAutoApprovalRules", + "description": "Clean room auto-approval rules automatically create an approval on your behalf when an asset (e.g. notebook)\nmeeting specific criteria is shared in a clean room.", + "package": { + "name": "cleanrooms" + }, + "docs_group": "cleanrooms", + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "list": { + "request": { + "pascal_name": "ListCleanRoomAutoApprovalRulesRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Create an auto-approval rule", + "summary": "Create an auto-approval rule.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/auto-approval-rules", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateCleanRoomAutoApprovalRuleRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "clean_room_name", + "description": "The name of the clean room this auto-approval rule belongs to.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "auto_approval_rule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAutoApprovalRule", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "description": "The name of the clean room this auto-approval rule belongs to.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "auto_approval_rule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAutoApprovalRule", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "CleanRoomAutoApprovalRule", + "is_object": true + }, + "all_fields": [ + { + "name": "auto_approval_rule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAutoApprovalRule", + "is_object": true + } + }, + { + "name": "clean_room_name", + "description": "The name of the clean room this auto-approval rule belongs to.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "description": "The name of the clean room this auto-approval rule belongs to.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Delete a auto-approval rule by rule ID", + "summary": "Delete an auto-approval rule.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/auto-approval-rules/{rule_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteCleanRoomAutoApprovalRuleRequest", + "is_object": true, + "required_fields": [ + { + "name": "clean_room_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "clean_room_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Get a auto-approval rule by rule ID", + "summary": "Get an auto-approval rule.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/auto-approval-rules/{rule_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetCleanRoomAutoApprovalRuleRequest", + "is_object": true, + "required_fields": [ + { + "name": "clean_room_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CleanRoomAutoApprovalRule", + "is_object": true + }, + "all_fields": [ + { + "name": "clean_room_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List all auto-approval rules for the caller", + "summary": "List auto-approval rules.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/auto-approval-rules", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListCleanRoomAutoApprovalRulesRequest", + "is_object": true, + "required_fields": [ + { + "name": "clean_room_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListCleanRoomAutoApprovalRulesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "clean_room_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Maximum number of auto-approval rules to return. Defaults to 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Update a auto-approval rule by rule ID", + "summary": "Update an auto-approval rule.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/auto-approval-rules/{rule_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateCleanRoomAutoApprovalRuleRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "clean_room_name", + "description": "The name of the clean room this auto-approval rule belongs to.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_id", + "description": "A generated UUID identifying the rule.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "auto_approval_rule", + "description": "The auto-approval rule to update. The rule_id field is used to identify the rule to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAutoApprovalRule", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "description": "The name of the clean room this auto-approval rule belongs to.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_id", + "description": "A generated UUID identifying the rule.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "auto_approval_rule", + "description": "The auto-approval rule to update. The rule_id field is used to identify the rule to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAutoApprovalRule", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "auto_approval_rule", + "description": "The auto-approval rule to update. The rule_id field is used to identify the rule to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAutoApprovalRule", + "is_object": true + } + }, + "response": { + "pascal_name": "CleanRoomAutoApprovalRule", + "is_object": true + }, + "all_fields": [ + { + "name": "auto_approval_rule", + "description": "The auto-approval rule to update. The rule_id field is used to identify the rule to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAutoApprovalRule", + "is_object": true + } + }, + { + "name": "clean_room_name", + "description": "The name of the clean room this auto-approval rule belongs to.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_id", + "description": "A generated UUID identifying the rule.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "author_collaborator_alias", + "description": "Collaborator alias of the author covered by the rule.\nOnly one of `author_collaborator_alias` and `author_scope` can be set.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "author_scope", + "description": "Scope of authors covered by the rule.\nOnly one of `author_collaborator_alias` and `author_scope` can be set.", + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAutoApprovalRuleAuthorScope", + "enum": [ + { + "content": "ANY_AUTHOR" + } + ] + } + }, + { + "name": "clean_room_name", + "description": "The name of the clean room this auto-approval rule belongs to.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "created_at", + "description": "Timestamp of when the rule was created, in epoch milliseconds.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "rule_id", + "description": "A generated UUID identifying the rule.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_owner_collaborator_alias", + "description": "The owner of the rule to whom the rule applies.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "runner_collaborator_alias", + "description": "Collaborator alias of the runner covered by the rule.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "description": "The name of the clean room this auto-approval rule belongs to.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rule_id", + "description": "A generated UUID identifying the rule.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "cleanrooms.CleanRoomTaskRuns", + "name": "CleanRoomTaskRuns", + "description": "Clean room task runs are the executions of notebooks and JAR analyses in a clean room.", + "package": { + "name": "cleanrooms" + }, + "docs_group": "cleanrooms", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListCleanRoomNotebookTaskRunsRequest" + } + }, + "methods": [ + { + "name": "List", + "description": "List all the historical notebook task runs in a clean room.", + "summary": "List notebook task runs.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/runs", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListCleanRoomNotebookTaskRunsRequest", + "is_object": true, + "required_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListCleanRoomNotebookTaskRunsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "notebook_name", + "description": "Notebook name", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "The maximum number of task runs to return. Currently ignored - all runs will be returned.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListCleanRoomTaskRunsHandler", + "description": "List all the historical task runs in a clean room.", + "summary": "List task runs.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/task-runs", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListCleanRoomTaskRunsRequest", + "is_object": true, + "required_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListCleanRoomTaskRunsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Executable name.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "The maximum number of task runs to return. Maximum value of 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "task_type", + "description": "Filter by the type of Clean Room task.", + "is_query": true, + "entity": { + "pascal_name": "CleanRoomTaskType", + "enum": [ + { + "content": "JAR" + }, + { + "content": "NOTEBOOK" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "cleanrooms.CleanRooms", + "name": "CleanRooms", + "description": "A clean room uses Delta Sharing and serverless compute to provide a secure\nand privacy-protecting environment where multiple parties can work together on\nsensitive enterprise data without direct access to each other's data.", + "package": { + "name": "cleanrooms" + }, + "docs_group": "cleanrooms", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListCleanRoomsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Create a new clean room with the specified collaborators.\nThis method is asynchronous; the returned name field inside the clean_room field can be used to poll the clean room status,\nusing the [cleanrooms/get](https://docs.databricks.com/api/workspace/cleanrooms/get) method.\nWhen this method returns, the clean room will be in a PROVISIONING state, with only name, owner, comment, created_at and status populated.\nThe clean room will be usable once it enters an ACTIVE state.\n\nThe caller must be a metastore admin or have the **CREATE_CLEAN_ROOM** privilege on the\nmetastore.", + "summary": "Create a clean room.", + "path": "/api/2.0/clean-rooms", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateCleanRoomRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "clean_room", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoom", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "clean_room", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoom", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "clean_room", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoom", + "is_object": true + } + }, + "response": { + "pascal_name": "CleanRoom", + "is_object": true + }, + "all_fields": [ + { + "name": "clean_room", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoom", + "is_object": true + } + }, + { + "name": "access_restricted", + "description": "Whether clean room access is restricted due to [CSP](https://docs.databricks.com/en/security/privacy/security-profile.html)", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomAccessRestricted", + "enum": [ + { + "content": "CSP_MISMATCH" + }, + { + "content": "NO_RESTRICTION" + } + ] + } + }, + { + "name": "comment", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "created_at", + "description": "When the clean room was created, in epoch milliseconds.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "enable_shared_output", + "description": "Whether allow task to write to shared output schema.\nWhen enabled, clean room task runs triggered by the current collaborator\ncan write to the run-scoped shared output schema which is accessible by all collaborators.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "local_collaborator_alias", + "description": "The alias of the collaborator tied to the local clean room.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the clean room.\nIt should follow [UC securable naming requirements](https://docs.databricks.com/en/data-governance/unity-catalog/index.html#securable-object-naming-requirements).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "output_catalog", + "description": "Output catalog of the clean room. It is an output only field. Output catalog is manipulated\nusing the separate CreateCleanRoomOutputCatalog API.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomOutputCatalog", + "is_object": true + } + }, + { + "name": "owner", + "description": "This is the Databricks username of the owner of the local clean room securable for permission management.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "remote_detailed_info", + "description": "Central clean room details. During creation, users need to specify\ncloud_vendor, region, and collaborators.global_metastore_id.\nThis field will not be filled in the ListCleanRooms call.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoomRemoteDetail", + "is_object": true + } + }, + { + "name": "status", + "description": "Clean room status.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomStatusEnum", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "DELETED" + }, + { + "content": "FAILED" + }, + { + "content": "PROVISIONING" + } + ] + } + }, + { + "name": "updated_at", + "description": "When the clean room was last updated, in epoch milliseconds.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "wait": { + "success": [ + { + "content": "ACTIVE" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "CleanRoom" + } + }, + "status_path": [ + { + "pascal_name": "Status" + } + ] + } + }, + { + "name": "CreateOutputCatalog", + "description": "Create the output catalog of the clean room.", + "summary": "Create an output catalog.", + "path": "/api/2.0/clean-rooms/{clean_room_name}/output-catalogs", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateCleanRoomOutputCatalogRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "output_catalog", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomOutputCatalog", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "output_catalog", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomOutputCatalog", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "output_catalog", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomOutputCatalog", + "is_object": true + } + }, + "response": { + "pascal_name": "CreateCleanRoomOutputCatalogResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "output_catalog", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomOutputCatalog", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "output_catalog", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomOutputCatalog", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "output_catalog", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomOutputCatalog", + "is_object": true + } + }, + { + "name": "catalog_name", + "description": "The name of the output catalog in UC.\nIt should follow [UC securable naming requirements](https://docs.databricks.com/en/data-governance/unity-catalog/index.html#securable-object-naming-requirements).\nThe field will always exist if status is CREATED.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CleanRoomOutputCatalogOutputCatalogStatus", + "enum": [ + { + "content": "CREATED" + }, + { + "content": "NOT_CREATED" + }, + { + "content": "NOT_ELIGIBLE" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "clean_room_name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Delete a clean room. After deletion, the clean room will be removed from the metastore.\nIf the other collaborators have not deleted the clean room, they will still have the clean room\nin their metastore, but it will be in a DELETED state\nand no operations other than deletion can be performed on it.", + "summary": "Delete a clean room.", + "path": "/api/2.0/clean-rooms/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteCleanRoomRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Get the details of a clean room given its name.", + "summary": "Get a clean room.", + "path": "/api/2.0/clean-rooms/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetCleanRoomRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CleanRoom", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Get a list of all clean rooms of the metastore. Only clean rooms\nthe caller has access to are returned.", + "summary": "List clean rooms.", + "path": "/api/2.0/clean-rooms", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListCleanRoomsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListCleanRoomsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Maximum number of clean rooms to return (i.e., the page length). Defaults to 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Update a clean room.\nThe caller must be the owner of the clean room, have **MODIFY_CLEAN_ROOM** privilege, or\nbe metastore admin.\n\nWhen the caller is a metastore admin, only the __owner__ field can be updated.", + "summary": "Update a clean room.", + "path": "/api/2.0/clean-rooms/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateCleanRoomRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CleanRoom", + "is_object": true + }, + "all_fields": [ + { + "name": "clean_room", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CleanRoom", + "is_object": true + } + }, + { + "name": "name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the clean room.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "compute.ClusterPolicies", + "name": "ClusterPolicies", + "description": "You can use cluster policies to control users' ability to configure clusters based on a set of rules.\nThese rules specify which attributes or attribute values can be used during cluster creation.\nCluster policies have ACLs that limit their use to specific users and groups.\n\nWith cluster policies, you can:\n- Auto-install cluster libraries on the next restart by listing them in the policy's \"libraries\" field (Public Preview).\n- Limit users to creating clusters with the prescribed settings.\n- Simplify the user interface, enabling more users to create clusters, by fixing and hiding some fields.\n- Manage costs by setting limits on attributes that impact the hourly rate.\n\nCluster policy permissions limit which policies a user can select in the Policy drop-down when the user creates a cluster:\n- A user who has unrestricted cluster create permission can select the Unrestricted policy and create fully-configurable clusters.\n- A user who has both unrestricted cluster create permission and access to cluster policies can select the Unrestricted policy and policies they have access to.\n- A user that has access to only cluster policies, can select the policies they have access to.\n\nIf no policies exist in the workspace, the Policy drop-down doesn't appear.\nOnly admin users can create, edit, and delete policies. Admin users also have access to all policies.", + "package": { + "name": "compute" + }, + "docs_group": "compute", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "PolicyNameToPolicyIdMap" + }, + "request": { + "pascal_name": "ListClusterPoliciesRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new policy with prescribed settings.", + "summary": "Create a new policy.", + "path": "/api/2.0/policies/clusters/create", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreatePolicy", + "is_object": true + }, + "response": { + "pascal_name": "CreatePolicyResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "definition", + "description": "Policy definition document expressed in [Databricks Cluster Policy Definition Language](https://docs.databricks.com/administration-guide/clusters/policy-definition.html).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Additional human-readable description of the cluster policy.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "libraries", + "description": "A list of libraries to be installed on the next cluster restart that uses this policy. The maximum number of libraries is 500.", + "is_request_body_field": true, + "entity": { + "pascal_name": "LibraryList", + "array_value": { + "pascal_name": "Library", + "is_object": true + } + } + }, + { + "name": "max_clusters_per_user", + "description": "Max number of clusters per user that can be active using this policy. If not present, there is no max limit.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "name", + "description": "Cluster Policy name requested by the user. This has to be unique. Length must be between 1 and 100\ncharacters.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "policy_family_definition_overrides", + "description": "Policy definition JSON document expressed in [Databricks Policy Definition Language](https://docs.databricks.com/administration-guide/clusters/policy-definition.html).\nThe JSON document must be passed as a string and cannot be embedded in the requests.\n\nYou can use this to customize the policy definition inherited from the policy family.\nPolicy rules specified here are merged into the inherited policy definition.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "policy_family_id", + "description": "ID of the policy family. The cluster policy's policy definition inherits the policy\nfamily's policy definition.\n\nCannot be used with `definition`. Use `policy_family_definition_overrides` instead to\ncustomize the policy definition.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Delete a policy for a cluster. Clusters governed by this policy can still run, but cannot be edited.", + "summary": "Delete a cluster policy.", + "path": "/api/2.0/policies/clusters/delete", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeletePolicy", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "policy_id", + "description": "The ID of the policy to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "policy_id", + "description": "The ID of the policy to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeletePolicyResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "policy_id", + "description": "The ID of the policy to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "policy_id", + "description": "The ID of the policy to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Edit", + "description": "Update an existing policy for cluster. This operation may make some clusters governed by the previous policy invalid.", + "summary": "Update a cluster policy.", + "path": "/api/2.0/policies/clusters/edit", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "EditPolicy", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "policy_id", + "description": "The ID of the policy to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "policy_id", + "description": "The ID of the policy to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EditPolicyResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "definition", + "description": "Policy definition document expressed in [Databricks Cluster Policy Definition Language](https://docs.databricks.com/administration-guide/clusters/policy-definition.html).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Additional human-readable description of the cluster policy.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "libraries", + "description": "A list of libraries to be installed on the next cluster restart that uses this policy. The maximum number of libraries is 500.", + "is_request_body_field": true, + "entity": { + "pascal_name": "LibraryList", + "array_value": { + "pascal_name": "Library", + "is_object": true + } + } + }, + { + "name": "max_clusters_per_user", + "description": "Max number of clusters per user that can be active using this policy. If not present, there is no max limit.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "name", + "description": "Cluster Policy name requested by the user. This has to be unique. Length must be between 1 and 100\ncharacters.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "policy_family_definition_overrides", + "description": "Policy definition JSON document expressed in [Databricks Policy Definition Language](https://docs.databricks.com/administration-guide/clusters/policy-definition.html).\nThe JSON document must be passed as a string and cannot be embedded in the requests.\n\nYou can use this to customize the policy definition inherited from the policy family.\nPolicy rules specified here are merged into the inherited policy definition.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "policy_family_id", + "description": "ID of the policy family. The cluster policy's policy definition inherits the policy\nfamily's policy definition.\n\nCannot be used with `definition`. Use `policy_family_definition_overrides` instead to\ncustomize the policy definition.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "policy_id", + "description": "The ID of the policy to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "policy_id", + "description": "The ID of the policy to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Get a cluster policy entity. Creation and editing is available to admins only.", + "summary": "Get a cluster policy.", + "path": "/api/2.0/policies/clusters/get", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetClusterPolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "policy_id", + "description": "Canonical unique identifier for the Cluster Policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "policy_id", + "description": "Canonical unique identifier for the Cluster Policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Policy", + "is_object": true + }, + "all_fields": [ + { + "name": "policy_id", + "description": "Canonical unique identifier for the Cluster Policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "policy_id", + "description": "Canonical unique identifier for the Cluster Policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get cluster policy permission levels.", + "path": "/api/2.0/permissions/cluster-policies/{cluster_policy_id}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetClusterPolicyPermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetClusterPolicyPermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of a cluster policy. Cluster policies can inherit permissions from their root object.", + "summary": "Get cluster policy permissions.", + "path": "/api/2.0/permissions/cluster-policies/{cluster_policy_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetClusterPolicyPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ClusterPolicyPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Returns a list of policies accessible by the requesting user.", + "summary": "List cluster policies.", + "path": "/api/2.0/policies/clusters/list", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListClusterPoliciesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListPoliciesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "sort_column", + "description": "The cluster policy attribute to sort by.\n* `POLICY_CREATION_TIME` - Sort result list by policy creation time.\n* `POLICY_NAME` - Sort result list by policy name.", + "is_query": true, + "entity": { + "pascal_name": "ListSortColumn", + "enum": [ + { + "content": "POLICY_CREATION_TIME" + }, + { + "content": "POLICY_NAME" + } + ] + } + }, + { + "name": "sort_order", + "description": "The order in which the policies get listed.\n* `DESC` - Sort result list in descending order.\n* `ASC` - Sort result list in ascending order.", + "is_query": true, + "entity": { + "pascal_name": "ListSortOrder", + "enum": [ + { + "content": "ASC" + }, + { + "content": "DESC" + } + ] + } + } + ], + "pagination": {} + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set cluster policy permissions.", + "path": "/api/2.0/permissions/cluster-policies/{cluster_policy_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ClusterPolicyPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ClusterPolicyPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "ClusterPolicyAccessControlRequestList", + "array_value": { + "pascal_name": "ClusterPolicyAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on a cluster policy. Cluster policies can inherit permissions from their root object.", + "summary": "Update cluster policy permissions.", + "path": "/api/2.0/permissions/cluster-policies/{cluster_policy_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ClusterPolicyPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ClusterPolicyPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "ClusterPolicyAccessControlRequestList", + "array_value": { + "pascal_name": "ClusterPolicyAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_policy_id", + "description": "The cluster policy for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "compute.Clusters", + "name": "Clusters", + "description": "The Clusters API allows you to create, start, edit, list, terminate, and delete clusters.\n\nDatabricks maps cluster node instance types to compute units known as DBUs. See the instance\ntype pricing page for a list of the supported instance types and their corresponding DBUs.\n\nA Databricks cluster is a set of computation resources and configurations on which you run\ndata engineering, data science, and data analytics workloads, such as production\nETL pipelines, streaming analytics, ad-hoc analytics, and machine learning.\n\nYou run these workloads as a set of commands in a notebook or as an automated job.\nDatabricks makes a distinction between all-purpose clusters and job clusters. You use\nall-purpose clusters to analyze data collaboratively using interactive notebooks. You use\njob clusters to run fast and robust automated jobs.\n\nYou can create an all-purpose cluster using the UI, CLI, or REST API. You can manually\nterminate and restart an all-purpose cluster. Multiple users can share such clusters to do\ncollaborative interactive analysis.\n\nIMPORTANT: Databricks retains cluster configuration information for terminated clusters for 30 days. To keep an all-purpose cluster configuration even after it has been\nterminated for more than 30 days, an administrator can pin a cluster to the cluster list.", + "package": { + "name": "compute" + }, + "docs_group": "compute", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "ClusterDetailsClusterNameToClusterIdMap" + }, + "request": { + "pascal_name": "ListClustersRequest" + } + }, + "methods": [ + { + "name": "ChangeOwner", + "description": "Change the owner of the cluster. You must be an admin and the cluster must be terminated to perform this operation. The service principal application ID can be supplied as an argument to `owner_username`.", + "summary": "Change cluster owner.", + "path": "/api/2.1/clusters/change-owner", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ChangeClusterOwner", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cluster_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner_username", + "description": "New owner of the cluster_id after this RPC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cluster_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner_username", + "description": "New owner of the cluster_id after this RPC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ChangeClusterOwnerResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "cluster_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner_username", + "description": "New owner of the cluster_id after this RPC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner_username", + "description": "New owner of the cluster_id after this RPC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Create", + "description": "Creates a new Spark cluster. This method will acquire new instances from the cloud provider\nif necessary. This method is asynchronous; the returned ``cluster_id`` can be used to poll the\ncluster status. When this method returns, the cluster will be in\na ``PENDING`` state. The cluster will be usable once it enters a ``RUNNING`` state.\nNote: Databricks may not be able to acquire some of the requested nodes, due to cloud provider\nlimitations (account limits, spot price, etc.) or transient network issues.\n\nIf Databricks acquires at least 85% of the requested on-demand nodes, cluster creation will succeed.\nOtherwise the cluster will terminate with an informative error message.\n\nRather than authoring the cluster's JSON definition from scratch, Databricks recommends filling out the\n[create compute UI](https://docs.databricks.com/compute/configure.html) and then copying the generated JSON definition from the UI.", + "summary": "Create new cluster.", + "path": "/api/2.1/clusters/create", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateCluster", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "spark_version", + "description": "The Spark version of the cluster, e.g. `3.3.x-scala2.11`.\nA list of available Spark versions can be retrieved by using\nthe [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "spark_version", + "description": "The Spark version of the cluster, e.g. `3.3.x-scala2.11`.\nA list of available Spark versions can be retrieved by using\nthe [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateClusterResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "apply_policy_default_values", + "description": "When set to true, fixed and default values from the policy will be used for fields that are omitted.\nWhen set to false, only fixed values from the policy will be applied.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "autoscale", + "description": "Parameters needed in order to automatically scale clusters up and down based on load.\nNote: autoscaling works best with DB runtime versions 3.0 or later.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AutoScale", + "is_object": true + } + }, + { + "name": "autotermination_minutes", + "description": "Automatically terminates the cluster after it is inactive for this time in minutes. If not set,\nthis cluster will not be automatically terminated. If specified, the threshold must be between\n10 and 10000 minutes.\nUsers can also set this value to 0 to explicitly disable automatic termination.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "aws_attributes", + "description": "Attributes related to clusters running on Amazon Web Services.\nIf not specified at cluster creation, a set of default values will be used.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AwsAttributes", + "is_object": true + } + }, + { + "name": "azure_attributes", + "description": "Attributes related to clusters running on Microsoft Azure.\nIf not specified at cluster creation, a set of default values will be used.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzureAttributes", + "is_object": true + } + }, + { + "name": "clone_from", + "description": "When specified, this clones libraries from a source cluster during the creation of a new cluster.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CloneCluster", + "is_object": true + } + }, + { + "name": "cluster_log_conf", + "description": "The configuration for delivering spark logs to a long-term storage destination.\nThree kinds of destinations (DBFS, S3 and Unity Catalog volumes) are supported. Only one destination can be specified\nfor one cluster. If the conf is given, the logs will be delivered to the destination every\n`5 mins`. The destination of driver logs is `$destination/$clusterId/driver`, while\nthe destination of executor logs is `$destination/$clusterId/executor`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ClusterLogConf", + "is_object": true + } + }, + { + "name": "cluster_name", + "description": "Cluster name requested by the user. This doesn't have to be unique.\nIf not specified at creation, the cluster name will be an empty string.\nFor job clusters, the cluster name is automatically set based on the job and job run IDs.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_tags", + "description": "Additional tags for cluster resources. Databricks will tag all cluster resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags\n\n- Clusters can only reuse cloud resources if the resources' tags are a subset of the cluster tags", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "data_security_mode", + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSecurityMode", + "enum": [ + { + "content": "DATA_SECURITY_MODE_AUTO" + }, + { + "content": "DATA_SECURITY_MODE_DEDICATED" + }, + { + "content": "DATA_SECURITY_MODE_STANDARD" + }, + { + "content": "LEGACY_PASSTHROUGH" + }, + { + "content": "LEGACY_SINGLE_USER" + }, + { + "content": "LEGACY_SINGLE_USER_STANDARD" + }, + { + "content": "LEGACY_TABLE_ACL" + }, + { + "content": "NONE" + }, + { + "content": "SINGLE_USER" + }, + { + "content": "USER_ISOLATION" + } + ] + } + }, + { + "name": "dependency_mode", + "description": "Controls dependency configuration for the cluster.", + "is_request_body_field": true, + "entity": { + "pascal_name": "DependencyMode", + "enum": [ + { + "content": "DEPENDENCY_MODE_AUTO" + }, + { + "content": "DEPENDENCY_MODE_CLUSTER_LIBRARIES" + }, + { + "content": "DEPENDENCY_MODE_ENVIRONMENTS" + } + ] + } + }, + { + "name": "docker_image", + "description": "Custom docker image BYOC", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DockerImage", + "is_object": true + } + }, + { + "name": "driver_instance_pool_id", + "description": "The optional ID of the instance pool for the driver of the cluster belongs.\nThe pool cluster uses the instance pool with id (instance_pool_id) if the driver pool is not\nassigned.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "driver_node_type_flexibility", + "description": "Flexible node type configuration for the driver node.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "NodeTypeFlexibility", + "is_object": true + } + }, + { + "name": "driver_node_type_id", + "description": "The node type of the Spark driver.\nNote that this field is optional; if unset, the driver node type will be set as the same value\nas `node_type_id` defined above.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "enable_elastic_disk", + "description": "Autoscaling Local Storage: when enabled, this cluster will dynamically acquire additional disk\nspace when its Spark workers are running low on disk space.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "enable_local_disk_encryption", + "description": "Whether to enable LUKS on cluster VMs' local disks", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "gcp_attributes", + "description": "Attributes related to clusters running on Google Cloud Platform.\nIf not specified at cluster creation, a set of default values will be used.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GcpAttributes", + "is_object": true + } + }, + { + "name": "init_scripts", + "description": "The configuration for storing init scripts. Any number of destinations can be specified.\nThe scripts are executed sequentially in the order provided.\nIf `cluster_log_conf` is specified, init script logs are sent to `\u003cdestination\u003e/\u003ccluster-ID\u003e/init_scripts`.", + "is_request_body_field": true, + "entity": { + "pascal_name": "InitScriptInfoList", + "array_value": { + "pascal_name": "InitScriptInfo", + "is_object": true + } + } + }, + { + "name": "instance_pool_id", + "description": "The optional ID of the instance pool to which the cluster belongs.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "is_single_node", + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\nWhen set to true, Databricks will automatically set single node related `custom_tags`, `spark_conf`, and `num_workers`", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "kind", + "is_request_body_field": true, + "entity": { + "pascal_name": "Kind", + "enum": [ + { + "content": "CLASSIC_PREVIEW" + } + ] + } + }, + { + "name": "node_type_id", + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "num_workers", + "description": "Number of worker nodes that this cluster should have. A cluster has one Spark Driver\nand `num_workers` Executors for a total of `num_workers` + 1 Spark nodes.\n\nNote: When reading the properties of a cluster, this field reflects the desired number\nof workers rather than the actual current number of workers. For instance, if a cluster\nis resized from 5 to 10 workers, this field will immediately be updated to reflect\nthe target size of 10 workers, whereas the workers listed in `spark_info` will gradually\nincrease from 5 to 10 as the new nodes are provisioned.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "policy_id", + "description": "The ID of the cluster policy used to create the cluster if applicable.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "remote_disk_throughput", + "description": "If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED disks.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "runtime_engine", + "description": "Determines the cluster's runtime engine, either standard or Photon.\n\nThis field is not compatible with legacy `spark_version` values that contain `-photon-`.\nRemove `-photon-` from the `spark_version` and set `runtime_engine` to `PHOTON`.\n\nIf left unspecified, the runtime engine defaults to standard unless the spark_version\ncontains -photon-, in which case Photon will be used.", + "is_request_body_field": true, + "entity": { + "pascal_name": "RuntimeEngine", + "enum": [ + { + "content": "NULL" + }, + { + "content": "PHOTON" + }, + { + "content": "STANDARD" + } + ] + } + }, + { + "name": "single_user_name", + "description": "Single user name if data_security_mode is `SINGLE_USER`", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spark_conf", + "description": "An object containing a set of optional, user-specified Spark configuration key-value pairs.\nUsers can also pass in a string of extra JVM options to the driver and the executors via\n`spark.driver.extraJavaOptions` and `spark.executor.extraJavaOptions` respectively.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "spark_env_vars", + "description": "An object containing a set of optional, user-specified environment variable key-value pairs.\nPlease note that key-value pair of the form (X,Y) will be exported as is (i.e.,\n`export X='Y'`) while launching the driver and workers.\n\nIn order to specify an additional set of `SPARK_DAEMON_JAVA_OPTS`, we recommend appending\nthem to `$SPARK_DAEMON_JAVA_OPTS` as shown in the example below. This ensures that all\ndefault databricks managed environmental variables are included as well.\n\nExample Spark environment variables:\n`{\"SPARK_WORKER_MEMORY\": \"28000m\", \"SPARK_LOCAL_DIRS\": \"/local_disk0\"}` or\n`{\"SPARK_DAEMON_JAVA_OPTS\": \"$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true\"}`", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "spark_version", + "description": "The Spark version of the cluster, e.g. `3.3.x-scala2.11`.\nA list of available Spark versions can be retrieved by using\nthe [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "ssh_public_keys", + "description": "SSH public key contents that will be added to each Spark node in this cluster. The\ncorresponding private keys can be used to login with the user name `ubuntu` on port `2200`.\nUp to 10 keys can be specified.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "total_initial_remote_disk_size", + "description": "If set, what the total initial volume size (in GB) of the remote disks should be. Supported for GCP.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "use_ml_runtime", + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\n`effective_spark_version` is determined by `spark_version` (DBR release), this field `use_ml_runtime`, and whether `node_type_id` is gpu node or not.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "worker_node_type_flexibility", + "description": "Flexible node type configuration for worker nodes.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "NodeTypeFlexibility", + "is_object": true + } + }, + { + "name": "workload_type", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "WorkloadType", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "spark_version", + "description": "The Spark version of the cluster, e.g. `3.3.x-scala2.11`.\nA list of available Spark versions can be retrieved by using\nthe [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "RUNNING" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "ClusterDetails" + } + }, + "status_path": [ + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "StateMessage" + } + ], + "message_path_head": { + "pascal_name": "StateMessage" + } + } + }, + { + "name": "Delete", + "description": "Terminates the Spark cluster with the specified ID. The cluster is removed asynchronously.\nOnce the termination has completed, the cluster will be in a `TERMINATED` state.\nIf the cluster is already in a `TERMINATING` or `TERMINATED` state, nothing will happen.", + "summary": "Terminate cluster.", + "path": "/api/2.1/clusters/delete", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteCluster", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "The cluster to be terminated.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cluster_id", + "description": "The cluster to be terminated.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteClusterResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "cluster_id", + "description": "The cluster to be terminated.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "The cluster to be terminated.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "TERMINATED" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "ClusterDetails" + } + }, + "status_path": [ + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "StateMessage" + } + ], + "message_path_head": { + "pascal_name": "StateMessage" + } + } + }, + { + "name": "Edit", + "description": "Updates the configuration of a cluster to match the provided attributes and size.\nA cluster can be updated if it is in a `RUNNING` or `TERMINATED` state.\n\nIf a cluster is updated while in a `RUNNING` state, it will be restarted so that the new attributes can take effect.\n\nIf a cluster is updated while in a `TERMINATED` state, it will remain `TERMINATED`.\nThe next time it is started using the `clusters/start` API, the new attributes will take effect.\nAny attempt to update a cluster in any other state will be rejected with an `INVALID_STATE` error code.\n\nClusters created by the Databricks Jobs service cannot be edited.", + "summary": "Update cluster configuration.", + "path": "/api/2.1/clusters/edit", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "EditCluster", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "ID of the cluster", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spark_version", + "description": "The Spark version of the cluster, e.g. `3.3.x-scala2.11`.\nA list of available Spark versions can be retrieved by using\nthe [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cluster_id", + "description": "ID of the cluster", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spark_version", + "description": "The Spark version of the cluster, e.g. `3.3.x-scala2.11`.\nA list of available Spark versions can be retrieved by using\nthe [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EditClusterResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "apply_policy_default_values", + "description": "When set to true, fixed and default values from the policy will be used for fields that are omitted. When set to false, only fixed values from the policy will be applied.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "autoscale", + "description": "Parameters needed in order to automatically scale clusters up and down based on load.\nNote: autoscaling works best with DB runtime versions 3.0 or later.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AutoScale", + "is_object": true + } + }, + { + "name": "autotermination_minutes", + "description": "Automatically terminates the cluster after it is inactive for this time in minutes. If not set,\nthis cluster will not be automatically terminated. If specified, the threshold must be between\n10 and 10000 minutes.\nUsers can also set this value to 0 to explicitly disable automatic termination.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "aws_attributes", + "description": "Attributes related to clusters running on Amazon Web Services.\nIf not specified at cluster creation, a set of default values will be used.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AwsAttributes", + "is_object": true + } + }, + { + "name": "azure_attributes", + "description": "Attributes related to clusters running on Microsoft Azure.\nIf not specified at cluster creation, a set of default values will be used.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzureAttributes", + "is_object": true + } + }, + { + "name": "cluster_id", + "description": "ID of the cluster", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "cluster_log_conf", + "description": "The configuration for delivering spark logs to a long-term storage destination.\nThree kinds of destinations (DBFS, S3 and Unity Catalog volumes) are supported. Only one destination can be specified\nfor one cluster. If the conf is given, the logs will be delivered to the destination every\n`5 mins`. The destination of driver logs is `$destination/$clusterId/driver`, while\nthe destination of executor logs is `$destination/$clusterId/executor`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ClusterLogConf", + "is_object": true + } + }, + { + "name": "cluster_name", + "description": "Cluster name requested by the user. This doesn't have to be unique.\nIf not specified at creation, the cluster name will be an empty string.\nFor job clusters, the cluster name is automatically set based on the job and job run IDs.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_tags", + "description": "Additional tags for cluster resources. Databricks will tag all cluster resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags\n\n- Clusters can only reuse cloud resources if the resources' tags are a subset of the cluster tags", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "data_security_mode", + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSecurityMode", + "enum": [ + { + "content": "DATA_SECURITY_MODE_AUTO" + }, + { + "content": "DATA_SECURITY_MODE_DEDICATED" + }, + { + "content": "DATA_SECURITY_MODE_STANDARD" + }, + { + "content": "LEGACY_PASSTHROUGH" + }, + { + "content": "LEGACY_SINGLE_USER" + }, + { + "content": "LEGACY_SINGLE_USER_STANDARD" + }, + { + "content": "LEGACY_TABLE_ACL" + }, + { + "content": "NONE" + }, + { + "content": "SINGLE_USER" + }, + { + "content": "USER_ISOLATION" + } + ] + } + }, + { + "name": "dependency_mode", + "description": "Controls dependency configuration for the cluster.", + "is_request_body_field": true, + "entity": { + "pascal_name": "DependencyMode", + "enum": [ + { + "content": "DEPENDENCY_MODE_AUTO" + }, + { + "content": "DEPENDENCY_MODE_CLUSTER_LIBRARIES" + }, + { + "content": "DEPENDENCY_MODE_ENVIRONMENTS" + } + ] + } + }, + { + "name": "docker_image", + "description": "Custom docker image BYOC", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DockerImage", + "is_object": true + } + }, + { + "name": "driver_instance_pool_id", + "description": "The optional ID of the instance pool for the driver of the cluster belongs.\nThe pool cluster uses the instance pool with id (instance_pool_id) if the driver pool is not\nassigned.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "driver_node_type_flexibility", + "description": "Flexible node type configuration for the driver node.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "NodeTypeFlexibility", + "is_object": true + } + }, + { + "name": "driver_node_type_id", + "description": "The node type of the Spark driver.\nNote that this field is optional; if unset, the driver node type will be set as the same value\nas `node_type_id` defined above.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "enable_elastic_disk", + "description": "Autoscaling Local Storage: when enabled, this cluster will dynamically acquire additional disk\nspace when its Spark workers are running low on disk space.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "enable_local_disk_encryption", + "description": "Whether to enable LUKS on cluster VMs' local disks", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "gcp_attributes", + "description": "Attributes related to clusters running on Google Cloud Platform.\nIf not specified at cluster creation, a set of default values will be used.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GcpAttributes", + "is_object": true + } + }, + { + "name": "init_scripts", + "description": "The configuration for storing init scripts. Any number of destinations can be specified.\nThe scripts are executed sequentially in the order provided.\nIf `cluster_log_conf` is specified, init script logs are sent to `\u003cdestination\u003e/\u003ccluster-ID\u003e/init_scripts`.", + "is_request_body_field": true, + "entity": { + "pascal_name": "InitScriptInfoList", + "array_value": { + "pascal_name": "InitScriptInfo", + "is_object": true + } + } + }, + { + "name": "instance_pool_id", + "description": "The optional ID of the instance pool to which the cluster belongs.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "is_single_node", + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\nWhen set to true, Databricks will automatically set single node related `custom_tags`, `spark_conf`, and `num_workers`", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "kind", + "is_request_body_field": true, + "entity": { + "pascal_name": "Kind", + "enum": [ + { + "content": "CLASSIC_PREVIEW" + } + ] + } + }, + { + "name": "node_type_id", + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "num_workers", + "description": "Number of worker nodes that this cluster should have. A cluster has one Spark Driver\nand `num_workers` Executors for a total of `num_workers` + 1 Spark nodes.\n\nNote: When reading the properties of a cluster, this field reflects the desired number\nof workers rather than the actual current number of workers. For instance, if a cluster\nis resized from 5 to 10 workers, this field will immediately be updated to reflect\nthe target size of 10 workers, whereas the workers listed in `spark_info` will gradually\nincrease from 5 to 10 as the new nodes are provisioned.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "policy_id", + "description": "The ID of the cluster policy used to create the cluster if applicable.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "remote_disk_throughput", + "description": "If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED disks.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "runtime_engine", + "description": "Determines the cluster's runtime engine, either standard or Photon.\n\nThis field is not compatible with legacy `spark_version` values that contain `-photon-`.\nRemove `-photon-` from the `spark_version` and set `runtime_engine` to `PHOTON`.\n\nIf left unspecified, the runtime engine defaults to standard unless the spark_version\ncontains -photon-, in which case Photon will be used.", + "is_request_body_field": true, + "entity": { + "pascal_name": "RuntimeEngine", + "enum": [ + { + "content": "NULL" + }, + { + "content": "PHOTON" + }, + { + "content": "STANDARD" + } + ] + } + }, + { + "name": "single_user_name", + "description": "Single user name if data_security_mode is `SINGLE_USER`", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spark_conf", + "description": "An object containing a set of optional, user-specified Spark configuration key-value pairs.\nUsers can also pass in a string of extra JVM options to the driver and the executors via\n`spark.driver.extraJavaOptions` and `spark.executor.extraJavaOptions` respectively.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "spark_env_vars", + "description": "An object containing a set of optional, user-specified environment variable key-value pairs.\nPlease note that key-value pair of the form (X,Y) will be exported as is (i.e.,\n`export X='Y'`) while launching the driver and workers.\n\nIn order to specify an additional set of `SPARK_DAEMON_JAVA_OPTS`, we recommend appending\nthem to `$SPARK_DAEMON_JAVA_OPTS` as shown in the example below. This ensures that all\ndefault databricks managed environmental variables are included as well.\n\nExample Spark environment variables:\n`{\"SPARK_WORKER_MEMORY\": \"28000m\", \"SPARK_LOCAL_DIRS\": \"/local_disk0\"}` or\n`{\"SPARK_DAEMON_JAVA_OPTS\": \"$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true\"}`", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "spark_version", + "description": "The Spark version of the cluster, e.g. `3.3.x-scala2.11`.\nA list of available Spark versions can be retrieved by using\nthe [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "ssh_public_keys", + "description": "SSH public key contents that will be added to each Spark node in this cluster. The\ncorresponding private keys can be used to login with the user name `ubuntu` on port `2200`.\nUp to 10 keys can be specified.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "total_initial_remote_disk_size", + "description": "If set, what the total initial volume size (in GB) of the remote disks should be. Supported for GCP.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "use_ml_runtime", + "description": "This field can only be used when `kind = CLASSIC_PREVIEW`.\n\n`effective_spark_version` is determined by `spark_version` (DBR release), this field `use_ml_runtime`, and whether `node_type_id` is gpu node or not.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "worker_node_type_flexibility", + "description": "Flexible node type configuration for worker nodes.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "NodeTypeFlexibility", + "is_object": true + } + }, + { + "name": "workload_type", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "WorkloadType", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "ID of the cluster", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spark_version", + "description": "The Spark version of the cluster, e.g. `3.3.x-scala2.11`.\nA list of available Spark versions can be retrieved by using\nthe [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "RUNNING" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "ClusterDetails" + } + }, + "status_path": [ + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "StateMessage" + } + ], + "message_path_head": { + "pascal_name": "StateMessage" + } + } + }, + { + "name": "Events", + "description": "Retrieves a list of events about the activity of a cluster.\nThis API is paginated. If there are more events to read, the response includes all the\nparameters necessary to request the next page of events.", + "summary": "List cluster activity events.", + "path": "/api/2.1/clusters/events", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetEvents", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "The ID of the cluster to retrieve events about.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cluster_id", + "description": "The ID of the cluster to retrieve events about.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetEventsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "cluster_id", + "description": "The ID of the cluster to retrieve events about.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "end_time", + "description": "The end time in epoch milliseconds.\nIf empty, returns events up to the current time.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "event_types", + "description": "An optional set of event types to filter on.\nIf empty, all event types are returned.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EventTypeList", + "array_value": { + "pascal_name": "EventType", + "enum": [ + { + "content": "ADD_NODES_FAILED" + }, + { + "content": "AUTOMATIC_CLUSTER_UPDATE" + }, + { + "content": "AUTOSCALING_BACKOFF" + }, + { + "content": "AUTOSCALING_FAILED" + }, + { + "content": "AUTOSCALING_STATS_REPORT" + }, + { + "content": "CLUSTER_MIGRATED" + }, + { + "content": "CREATING" + }, + { + "content": "DBFS_DOWN" + }, + { + "content": "DECOMMISSION_ENDED" + }, + { + "content": "DECOMMISSION_STARTED" + }, + { + "content": "DEFERRED_POLICY_ENFORCEMENT_FAILED" + }, + { + "content": "DEFERRED_POLICY_ENFORCEMENT_SCHEDULED" + }, + { + "content": "DID_NOT_EXPAND_DISK" + }, + { + "content": "DRIVER_HEALTHY" + }, + { + "content": "DRIVER_NOT_RESPONDING" + }, + { + "content": "DRIVER_UNAVAILABLE" + }, + { + "content": "EDITED" + }, + { + "content": "EXPANDED_DISK" + }, + { + "content": "FAILED_TO_EXPAND_DISK" + }, + { + "content": "INIT_SCRIPTS_FINISHED" + }, + { + "content": "INIT_SCRIPTS_STARTED" + }, + { + "content": "METASTORE_DOWN" + }, + { + "content": "NODES_LOST" + }, + { + "content": "NODE_BLACKLISTED" + }, + { + "content": "NODE_EXCLUDED_DECOMMISSIONED" + }, + { + "content": "PINNED" + }, + { + "content": "RESIZING" + }, + { + "content": "RESTARTING" + }, + { + "content": "RUNNING" + }, + { + "content": "SPARK_EXCEPTION" + }, + { + "content": "STARTING" + }, + { + "content": "TERMINATING" + }, + { + "content": "UC_VOLUME_MISCONFIGURED" + }, + { + "content": "UNPINNED" + }, + { + "content": "UPSIZE_COMPLETED" + } + ] + } + } + }, + { + "name": "limit", + "description": "Deprecated: use page_token in combination with page_size instead.\n\nThe maximum number of events to include in a page of events.\nDefaults to 50, and maximum allowed value is 500.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "offset", + "description": "Deprecated: use page_token in combination with page_size instead.\n\nThe offset in the result set. Defaults to 0 (no offset). When an offset is specified\nand the results are requested in descending order, the end_time field is required.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "order", + "description": "The order to list events in; either \"ASC\" or \"DESC\". Defaults to \"DESC\".", + "is_request_body_field": true, + "entity": { + "pascal_name": "GetEventsOrder", + "enum": [ + { + "content": "ASC" + }, + { + "content": "DESC" + } + ] + } + }, + { + "name": "page_size", + "description": "The maximum number of events to include in a page of events.\nThe server may further constrain the maximum number of results returned in a single page.\nIf the page_size is empty or 0, the server will decide the number of results to be returned.\nThe field has to be in the range [0,500]. If the value is outside the range, the server enforces 0 or 500.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Use next_page_token or prev_page_token returned from the previous request to list the next or previous page of events respectively.\nIf page_token is empty, the first page is returned.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "start_time", + "description": "The start time in epoch milliseconds.\nIf empty, returns events starting from the beginning of time.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "The ID of the cluster to retrieve events about.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Use next_page_token or prev_page_token returned from the previous request to list the next or previous page of events respectively.\nIf page_token is empty, the first page is returned.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Get", + "description": "Retrieves the information for a cluster given its identifier.\nClusters can be described while they are running, or up to 60 days after they are terminated.", + "summary": "Get cluster info.", + "path": "/api/2.1/clusters/get", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetClusterRequest", + "is_object": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "The cluster about which to retrieve information.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "cluster_id", + "description": "The cluster about which to retrieve information.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ClusterDetails", + "is_object": true + }, + "all_fields": [ + { + "name": "cluster_id", + "description": "The cluster about which to retrieve information.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "The cluster about which to retrieve information.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get cluster permission levels.", + "path": "/api/2.0/permissions/clusters/{cluster_id}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetClusterPermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetClusterPermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of a cluster. Clusters can inherit permissions from their root object.", + "summary": "Get cluster permissions.", + "path": "/api/2.0/permissions/clusters/{cluster_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetClusterPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ClusterPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Return information about all pinned and active clusters, and all clusters terminated within the last 30 days. Clusters terminated prior to this period are not included.", + "summary": "List clusters.", + "path": "/api/2.1/clusters/list", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListClustersRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListClustersResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter_by", + "description": "Filters to apply to the list of clusters.", + "is_query": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ListClustersFilterBy", + "is_object": true + } + }, + { + "name": "page_size", + "description": "Use this field to specify the maximum number of results to be returned by the server. The server may further constrain the maximum number of results returned in a single page.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Use next_page_token or prev_page_token returned from the previous request to list the next or previous page of clusters respectively.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sort_by", + "description": "Sort the list of clusters by a specific criteria.", + "is_query": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ListClustersSortBy", + "is_object": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Use next_page_token or prev_page_token returned from the previous request to list the next or previous page of clusters respectively.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListNodeTypes", + "description": "Returns a list of supported Spark node types. These node types can be used to launch a cluster.", + "summary": "List node types.", + "path": "/api/2.1/clusters/list-node-types", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListNodeTypesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListNodeTypesResponse", + "is_object": true + } + }, + { + "name": "ListZones", + "description": "Returns a list of availability zones where clusters can be created in (For example, us-west-2a).\nThese zones can be used to launch a cluster.", + "summary": "List availability zones.", + "path": "/api/2.1/clusters/list-zones", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListZonesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListAvailableZonesResponse", + "is_object": true + } + }, + { + "name": "PermanentDelete", + "description": "Permanently deletes a Spark cluster. This cluster is terminated and resources are asynchronously removed.\n\nIn addition, users will no longer see permanently deleted clusters in the cluster list, and API users can no longer\nperform any action on permanently deleted clusters.", + "summary": "Permanently delete cluster.", + "path": "/api/2.1/clusters/permanent-delete", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "PermanentDeleteCluster", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "The cluster to be deleted.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cluster_id", + "description": "The cluster to be deleted.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PermanentDeleteClusterResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "cluster_id", + "description": "The cluster to be deleted.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "The cluster to be deleted.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Pin", + "description": "Pinning a cluster ensures that the cluster will always be returned by the ListClusters API.\nPinning a cluster that is already pinned will have no effect.\nThis API can only be called by workspace admins.", + "summary": "Pin cluster.", + "path": "/api/2.1/clusters/pin", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "PinCluster", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cluster_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cluster_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PinClusterResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "cluster_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Resize", + "description": "Resizes a cluster to have a desired number of workers. This will fail unless the cluster is in a `RUNNING` state.", + "summary": "Resize cluster.", + "path": "/api/2.1/clusters/resize", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ResizeCluster", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "The cluster to be resized.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cluster_id", + "description": "The cluster to be resized.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ResizeClusterResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "autoscale", + "description": "Parameters needed in order to automatically scale clusters up and down based on load.\nNote: autoscaling works best with DB runtime versions 3.0 or later.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AutoScale", + "is_object": true + } + }, + { + "name": "cluster_id", + "description": "The cluster to be resized.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "num_workers", + "description": "Number of worker nodes that this cluster should have. A cluster has one Spark Driver\nand `num_workers` Executors for a total of `num_workers` + 1 Spark nodes.\n\nNote: When reading the properties of a cluster, this field reflects the desired number\nof workers rather than the actual current number of workers. For instance, if a cluster\nis resized from 5 to 10 workers, this field will immediately be updated to reflect\nthe target size of 10 workers, whereas the workers listed in `spark_info` will gradually\nincrease from 5 to 10 as the new nodes are provisioned.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "The cluster to be resized.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "RUNNING" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "ClusterDetails" + } + }, + "status_path": [ + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "StateMessage" + } + ], + "message_path_head": { + "pascal_name": "StateMessage" + } + } + }, + { + "name": "Restart", + "description": "Restarts a Spark cluster with the supplied ID. If the cluster is not currently in a `RUNNING` state, nothing will happen.", + "summary": "Restart cluster.", + "path": "/api/2.1/clusters/restart", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RestartCluster", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "The cluster to be started.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cluster_id", + "description": "The cluster to be started.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RestartClusterResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "cluster_id", + "description": "The cluster to be started.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "restart_user", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "The cluster to be started.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "RUNNING" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "ClusterDetails" + } + }, + "status_path": [ + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "StateMessage" + } + ], + "message_path_head": { + "pascal_name": "StateMessage" + } + } + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set cluster permissions.", + "path": "/api/2.0/permissions/clusters/{cluster_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ClusterPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ClusterPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "ClusterAccessControlRequestList", + "array_value": { + "pascal_name": "ClusterAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SparkVersions", + "description": "Returns the list of available Spark versions. These versions can be used to launch a cluster.", + "summary": "List available Spark versions.", + "path": "/api/2.1/clusters/spark-versions", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SparkVersionsRequest", + "is_object": true + }, + "response": { + "pascal_name": "GetSparkVersionsResponse", + "is_object": true + } + }, + { + "name": "Start", + "description": "Starts a terminated Spark cluster with the supplied ID. This works similar to `createCluster` except:\n- The previous cluster id and attributes are preserved.\n- The cluster starts with the last specified cluster size.\n- If the previous cluster was an autoscaling cluster, the current cluster starts with\nthe minimum number of nodes.\n- If the cluster is not currently in a ``TERMINATED`` state, nothing will happen.\n- Clusters launched to run a job cannot be started.", + "summary": "Start terminated cluster.", + "path": "/api/2.1/clusters/start", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "StartCluster", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "The cluster to be started.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cluster_id", + "description": "The cluster to be started.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "StartClusterResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "cluster_id", + "description": "The cluster to be started.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "The cluster to be started.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "RUNNING" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "ClusterDetails" + } + }, + "status_path": [ + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "StateMessage" + } + ], + "message_path_head": { + "pascal_name": "StateMessage" + } + } + }, + { + "name": "Unpin", + "description": "Unpinning a cluster will allow the cluster to eventually be removed from the ListClusters API.\nUnpinning a cluster that is not pinned will have no effect.\nThis API can only be called by workspace admins.", + "summary": "Unpin cluster.", + "path": "/api/2.1/clusters/unpin", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UnpinCluster", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cluster_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cluster_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UnpinClusterResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "cluster_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the configuration of a cluster to match the partial set of attributes and size.\nDenote which fields to update using the `update_mask` field in the request body.\nA cluster can be updated if it is in a `RUNNING` or `TERMINATED` state.\nIf a cluster is updated while in a `RUNNING` state, it will be restarted so that the new attributes can take effect.\nIf a cluster is updated while in a `TERMINATED` state, it will remain `TERMINATED`.\nThe updated attributes will take effect the next time the cluster is started using the `clusters/start` API.\nAttempts to update a cluster in any other state will be rejected with an `INVALID_STATE` error code.\nClusters created by the Databricks Jobs service cannot be updated.", + "summary": "Update cluster configuration (partial).", + "path": "/api/2.1/clusters/update", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateCluster", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "ID of the cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Used to specify which cluster attributes and size fields to update. See https://google.aip.dev/161 for more details.\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cluster_id", + "description": "ID of the cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Used to specify which cluster attributes and size fields to update. See https://google.aip.dev/161 for more details.\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateClusterResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "cluster", + "description": "The cluster to be updated.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "UpdateClusterResource", + "is_object": true + } + }, + { + "name": "cluster_id", + "description": "ID of the cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Used to specify which cluster attributes and size fields to update. See https://google.aip.dev/161 for more details.\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "ID of the cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Used to specify which cluster attributes and size fields to update. See https://google.aip.dev/161 for more details.\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "RUNNING" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "ClusterDetails" + } + }, + "status_path": [ + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "StateMessage" + } + ], + "message_path_head": { + "pascal_name": "StateMessage" + } + } + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on a cluster. Clusters can inherit permissions from their root object.", + "summary": "Update cluster permissions.", + "path": "/api/2.0/permissions/clusters/{cluster_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ClusterPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ClusterPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "ClusterAccessControlRequestList", + "array_value": { + "pascal_name": "ClusterAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "The cluster for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "compute.CommandExecution", + "name": "CommandExecution", + "description": "This API allows execution of Python, Scala, SQL, or R commands on running\nDatabricks Clusters. This API only supports (classic) all-purpose clusters.\nServerless compute is not supported.", + "package": { + "name": "compute" + }, + "docs_group": "compute", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Cancel", + "description": "Cancels a currently running command within an execution context.\n\nThe command ID is obtained from a prior successful call to __execute__.", + "summary": "Cancel a command.", + "path": "/api/1.2/commands/cancel", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CancelCommand", + "is_object": true + }, + "response": { + "pascal_name": "CancelResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "clusterId", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "commandId", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "contextId", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "Cancelled" + } + ], + "timeout": 20, + "complex_message_path": true, + "poll": { + "response": { + "pascal_name": "CommandStatusResponse" + } + }, + "status_path": [ + { + "pascal_name": "Status" + } + ], + "message_path": [ + { + "pascal_name": "Results" + }, + { + "pascal_name": "Cause" + } + ], + "message_path_head": { + "pascal_name": "Results" + } + } + }, + { + "name": "CommandStatus", + "description": "Gets the status of and, if available, the results from a currently executing command.\n\nThe command ID is obtained from a prior successful call to __execute__.", + "summary": "Get command info.", + "path": "/api/1.2/commands/status", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CommandStatusRequest", + "is_object": true, + "required_fields": [ + { + "name": "clusterId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "contextId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "commandId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clusterId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "contextId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "commandId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CommandStatusResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "clusterId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "commandId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "contextId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clusterId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "contextId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "commandId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ContextStatus", + "description": "Gets the status for an execution context.", + "summary": "Get status.", + "path": "/api/1.2/contexts/status", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ContextStatusRequest", + "is_object": true, + "required_fields": [ + { + "name": "clusterId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "contextId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "clusterId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "contextId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ContextStatusResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "clusterId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "contextId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clusterId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "contextId", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Create", + "description": "Creates an execution context for running cluster commands.\n\nIf successful, this method returns the ID of the new execution context.", + "summary": "Create an execution context.", + "path": "/api/1.2/contexts/create", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateContext", + "is_object": true + }, + "response": { + "pascal_name": "Created", + "is_object": true + }, + "all_fields": [ + { + "name": "clusterId", + "description": "Running cluster id", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "language", + "is_request_body_field": true, + "entity": { + "pascal_name": "Language", + "enum": [ + { + "content": "python" + }, + { + "content": "r" + }, + { + "content": "scala" + }, + { + "content": "sql" + } + ] + } + } + ], + "wait": { + "success": [ + { + "content": "Running" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "ContextStatusResponse" + } + }, + "status_path": [ + { + "pascal_name": "Status" + } + ] + } + }, + { + "name": "Destroy", + "description": "Deletes an execution context.", + "summary": "Delete an execution context.", + "path": "/api/1.2/contexts/destroy", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DestroyContext", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "clusterId", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "contextId", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "clusterId", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "contextId", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DestroyResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "clusterId", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "contextId", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "clusterId", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "contextId", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Execute", + "description": "Runs a cluster command in the given execution context, using the provided language.\n\nIf successful, it returns an ID for tracking the status of the command's execution.", + "summary": "Run a command.", + "path": "/api/1.2/commands/execute", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "Command", + "is_object": true + }, + "response": { + "pascal_name": "Created", + "is_object": true + }, + "all_fields": [ + { + "name": "clusterId", + "description": "Running cluster id", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "command", + "description": "Executable code", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "contextId", + "description": "Running context id", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "language", + "is_request_body_field": true, + "entity": { + "pascal_name": "Language", + "enum": [ + { + "content": "python" + }, + { + "content": "r" + }, + { + "content": "scala" + }, + { + "content": "sql" + } + ] + } + } + ], + "wait": { + "success": [ + { + "content": "Finished" + }, + { + "content": "Error" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "CommandStatusResponse" + } + }, + "status_path": [ + { + "pascal_name": "Status" + } + ] + } + } + ] + }, + { + "id": "settings.ComplianceSecurityProfile", + "name": "ComplianceSecurityProfile", + "description": "Controls whether to enable the compliance security profile for the current workspace. Enabling it on a workspace is permanent.\nBy default, it is turned off.\n\nThis settings can NOT be disabled once it is enabled.", + "package": { + "name": "settings" + }, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "Get", + "description": "Gets the compliance security profile setting.", + "summary": "Get the compliance security profile setting.", + "path": "/api/2.0/settings/types/shield_csp_enablement_ws_db/names/default", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetComplianceSecurityProfileSettingRequest", + "is_object": true + }, + "response": { + "pascal_name": "ComplianceSecurityProfileSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "compliance_security_profile_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplianceSecurityProfile", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "compliance_security_profile_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplianceSecurityProfile", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the compliance security profile setting for the workspace. A fresh etag needs\nto be provided in `PATCH` requests (as part of the setting field). The etag can be retrieved by making a `GET`\nrequest before the `PATCH` request. If the setting is updated concurrently, `PATCH` fails with 409 and the\nrequest must be retried by using the fresh etag in the 409 response.", + "summary": "Update the compliance security profile setting.", + "path": "/api/2.0/settings/types/shield_csp_enablement_ws_db/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateComplianceSecurityProfileSettingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplianceSecurityProfileSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplianceSecurityProfileSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ComplianceSecurityProfileSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "compliance_security_profile_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplianceSecurityProfile", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "compliance_security_profile_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplianceSecurityProfile", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplianceSecurityProfileSetting", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "catalog.Connections", + "name": "Connections", + "description": "A connection represents an external data source for use within Databricks.\n\nCreating a connection object is the first step to managing external data sources within Unity Catalog. The\nsecond step is creating a data object (catalog, schema, or table) using the connection. Data objects\nderived from a connection can be written to or read from similar to other Unity Catalog data objects based on\ncloud storage. You can create different types of connections, and each connection has a unique set of\nconfiguration options to support credential management and other settings.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "ConnectionInfoNameToFullNameMap" + }, + "request": { + "pascal_name": "ListConnectionsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new connection\n\nCreates a new connection to an external data source. It allows users to specify connection details and\nconfigurations for interaction with the external server.", + "summary": "Create a connection.", + "path": "/api/2.1/unity-catalog/connections", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateConnection", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "connection_type", + "description": "The type of connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ConnectionType", + "enum": [ + { + "content": "AWS_SECRETS_MANAGER" + }, + { + "content": "AZURE_KEY_VAULT" + }, + { + "content": "BIGQUERY" + }, + { + "content": "CONFLUENCE" + }, + { + "content": "DATABRICKS" + }, + { + "content": "DYNAMICS365" + }, + { + "content": "GA4_RAW_DATA" + }, + { + "content": "GITHUB" + }, + { + "content": "GLUE" + }, + { + "content": "HIVE_METASTORE" + }, + { + "content": "HTTP" + }, + { + "content": "HUBSPOT" + }, + { + "content": "JDBC" + }, + { + "content": "META_MARKETING" + }, + { + "content": "MYSQL" + }, + { + "content": "NETSUITE" + }, + { + "content": "ORACLE" + }, + { + "content": "OUTLOOK" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "REDSHIFT" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SALESFORCE_DATA_CLOUD" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SMARTSHEET" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "SQLDW" + }, + { + "content": "SQLSERVER" + }, + { + "content": "TERADATA" + }, + { + "content": "TIKTOK_ADS" + }, + { + "content": "UNKNOWN_CONNECTION_TYPE" + }, + { + "content": "WORKDAY_RAAS" + }, + { + "content": "ZENDESK" + } + ] + } + }, + { + "name": "options", + "description": "A map of key-value properties attached to the securable.", + "required": true, + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "connection_type", + "description": "The type of connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ConnectionType", + "enum": [ + { + "content": "AWS_SECRETS_MANAGER" + }, + { + "content": "AZURE_KEY_VAULT" + }, + { + "content": "BIGQUERY" + }, + { + "content": "CONFLUENCE" + }, + { + "content": "DATABRICKS" + }, + { + "content": "DYNAMICS365" + }, + { + "content": "GA4_RAW_DATA" + }, + { + "content": "GITHUB" + }, + { + "content": "GLUE" + }, + { + "content": "HIVE_METASTORE" + }, + { + "content": "HTTP" + }, + { + "content": "HUBSPOT" + }, + { + "content": "JDBC" + }, + { + "content": "META_MARKETING" + }, + { + "content": "MYSQL" + }, + { + "content": "NETSUITE" + }, + { + "content": "ORACLE" + }, + { + "content": "OUTLOOK" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "REDSHIFT" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SALESFORCE_DATA_CLOUD" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SMARTSHEET" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "SQLDW" + }, + { + "content": "SQLSERVER" + }, + { + "content": "TERADATA" + }, + { + "content": "TIKTOK_ADS" + }, + { + "content": "UNKNOWN_CONNECTION_TYPE" + }, + { + "content": "WORKDAY_RAAS" + }, + { + "content": "ZENDESK" + } + ] + } + }, + { + "name": "options", + "description": "A map of key-value properties attached to the securable.", + "required": true, + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ] + }, + "response": { + "pascal_name": "ConnectionInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "User-provided free-form text description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "connection_type", + "description": "The type of connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ConnectionType", + "enum": [ + { + "content": "AWS_SECRETS_MANAGER" + }, + { + "content": "AZURE_KEY_VAULT" + }, + { + "content": "BIGQUERY" + }, + { + "content": "CONFLUENCE" + }, + { + "content": "DATABRICKS" + }, + { + "content": "DYNAMICS365" + }, + { + "content": "GA4_RAW_DATA" + }, + { + "content": "GITHUB" + }, + { + "content": "GLUE" + }, + { + "content": "HIVE_METASTORE" + }, + { + "content": "HTTP" + }, + { + "content": "HUBSPOT" + }, + { + "content": "JDBC" + }, + { + "content": "META_MARKETING" + }, + { + "content": "MYSQL" + }, + { + "content": "NETSUITE" + }, + { + "content": "ORACLE" + }, + { + "content": "OUTLOOK" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "REDSHIFT" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SALESFORCE_DATA_CLOUD" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SMARTSHEET" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "SQLDW" + }, + { + "content": "SQLSERVER" + }, + { + "content": "TERADATA" + }, + { + "content": "TIKTOK_ADS" + }, + { + "content": "UNKNOWN_CONNECTION_TYPE" + }, + { + "content": "WORKDAY_RAAS" + }, + { + "content": "ZENDESK" + } + ] + } + }, + { + "name": "environment_settings", + "description": "[Create,Update:OPT] Connection environment settings as EnvironmentSettings object.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EnvironmentSettings", + "is_object": true + } + }, + { + "name": "name", + "description": "Name of the connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "A map of key-value properties attached to the securable.", + "required": true, + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "parent", + "description": "Parent schema for schema-level connections, in format \"schemas/{catalog}.{schema}\".\nAbsent for metastore-level (L1) connections.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "properties", + "description": "A map of key-value properties attached to the securable.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "read_only", + "description": "If the connection is read only.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "secrets", + "description": "A map of option names to UC Secret references. Keys are connection option names\n(same as in OptionsKVPairs) and values are UC Secret fully qualified names.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes the connection that matches the supplied name.", + "summary": "Delete a connection.", + "path": "/api/2.1/unity-catalog/connections/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteConnectionRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the connection to be deleted.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the connection to be deleted.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the connection to be deleted.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the connection to be deleted.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a connection from it's name.", + "summary": "Get a connection.", + "path": "/api/2.1/unity-catalog/connections/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetConnectionRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the connection.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the connection.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ConnectionInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the connection.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the connection.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List all connections.\n\nNOTE: we recommend using max_results=0 to use the paginated version of this API. Unpaginated calls will be deprecated soon.\n\nPAGINATION BEHAVIOR: When using pagination (max_results \u003e= 0), a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List connections.", + "path": "/api/2.1/unity-catalog/connections", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListConnectionsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListConnectionsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "max_results", + "description": "Maximum number of connections to return.\n- If not set, all connections are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Optional. Parent schema filter for listing schema-level connections, in format \"schemas/{catalog}.{schema}\".", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + }, + "max_results": { + "name": "max_results", + "description": "Maximum number of connections to return.\n- If not set, all connections are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "is_query": true, + "entity": { + "is_int": true + } + } + } + }, + { + "name": "Update", + "description": "Updates the connection that matches the supplied name.", + "summary": "Update a connection.", + "path": "/api/2.1/unity-catalog/connections/{name}", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateConnection", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the connection.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "A map of key-value properties attached to the securable.", + "required": true, + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the connection.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "options", + "description": "A map of key-value properties attached to the securable.", + "required": true, + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ] + }, + "response": { + "pascal_name": "ConnectionInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "environment_settings", + "description": "[Create,Update:OPT] Connection environment settings as EnvironmentSettings object.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EnvironmentSettings", + "is_object": true + } + }, + { + "name": "name", + "description": "Name of the connection.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "new_name", + "description": "New name for the connection.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "A map of key-value properties attached to the securable.", + "required": true, + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "owner", + "description": "Username of current owner of the connection.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "secrets", + "description": "A map of option names to UC Secret references. Keys are connection option names\n(same as in OptionsKVPairs) and values are UC Secret fully qualified names.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the connection.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "marketplace.ConsumerFulfillments", + "name": "ConsumerFulfillments", + "description": "Fulfillments are entities that allow consumers to preview installations.", + "package": { + "name": "marketplace" + }, + "docs_group": "marketplace", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "GetListingContentMetadataRequest" + } + }, + "methods": [ + { + "name": "Get", + "description": "Get a high level preview of the metadata of listing installable content.", + "summary": "Get listing content metadata.", + "path": "/api/2.1/marketplace-consumer/listings/{listing_id}/content", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetListingContentMetadataRequest", + "is_object": true, + "required_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetListingContentMetadataResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "List", + "description": "Get all listings fulfillments associated with a listing. A _fulfillment_ is a potential installation.\nStandard installations contain metadata about the attached share or git repo. Only one of these fields will be present.\nPersonalized installations contain metadata about the attached share or git repo, as well as the Delta Sharing recipient type.", + "summary": "List all listing fulfillments.", + "path": "/api/2.1/marketplace-consumer/listings/{listing_id}/fulfillments", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListFulfillmentsRequest", + "is_object": true, + "required_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListFulfillmentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "marketplace.ConsumerInstallations", + "name": "ConsumerInstallations", + "description": "Installations are entities that allow consumers to interact with Databricks Marketplace listings.", + "package": { + "name": "marketplace" + }, + "docs_group": "marketplace", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListAllInstallationsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Install payload associated with a Databricks Marketplace listing.", + "summary": "Install from a listing.", + "path": "/api/2.1/marketplace-consumer/listings/{listing_id}/installations", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateInstallationRequest", + "is_object": true, + "required_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Installation", + "is_object": true + }, + "all_fields": [ + { + "name": "accepted_consumer_terms", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ConsumerTerms", + "is_object": true + } + }, + { + "name": "catalog_name", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "recipient_type", + "is_request_body_field": true, + "entity": { + "pascal_name": "DeltaSharingRecipientType", + "enum": [ + { + "content": "DELTA_SHARING_RECIPIENT_TYPE_DATABRICKS" + }, + { + "content": "DELTA_SHARING_RECIPIENT_TYPE_OPEN" + } + ] + } + }, + { + "name": "repo_detail", + "description": "for git repo installations", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RepoInstallation", + "is_object": true + } + }, + { + "name": "share_name", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Uninstall an installation associated with a Databricks Marketplace listing.", + "summary": "Uninstall from a listing.", + "path": "/api/2.1/marketplace-consumer/listings/{listing_id}/installations/{installation_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteInstallationRequest", + "is_object": true, + "required_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "installation_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "installation_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteInstallationResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "installation_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "installation_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List all installations across all listings.", + "summary": "List all installations.", + "path": "/api/2.1/marketplace-consumer/installations", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAllInstallationsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListAllInstallationsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListListingInstallations", + "description": "List all installations for a particular listing.", + "summary": "List installations for a listing.", + "path": "/api/2.1/marketplace-consumer/listings/{listing_id}/installations", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListInstallationsRequest", + "is_object": true, + "required_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListInstallationsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "This is a update API that will update the part of the fields defined in the installation table as well\nas interact with external services according to the fields not included in the installation table\n1. the token will be rotate if the rotateToken flag is true\n2. the token will be forcibly rotate if the rotateToken flag is true and the tokenInfo field is empty", + "summary": "Update an installation.", + "path": "/api/2.1/marketplace-consumer/listings/{listing_id}/installations/{installation_id}", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateInstallationRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "installation_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "installation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "InstallationDetail", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "installation_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "installation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "InstallationDetail", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateInstallationResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "installation", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "InstallationDetail", + "is_object": true + } + }, + { + "name": "installation_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rotate_token", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "installation_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "marketplace.ConsumerListings", + "name": "ConsumerListings", + "description": "Listings are the core entities in the Marketplace. They represent the products that are available for consumption.", + "package": { + "name": "marketplace" + }, + "docs_group": "marketplace", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "ListingSummaryNameToIdMap" + }, + "request": { + "pascal_name": "ListListingsRequest" + } + }, + "methods": [ + { + "name": "BatchGet", + "description": "Batch get a published listing in the Databricks Marketplace that the consumer has access to.", + "summary": "Get one batch of listings. One may specify up to 50 IDs per request.", + "path": "/api/2.1/marketplace-consumer/listings:batchGet", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "BatchGetListingsRequest", + "is_object": true + }, + "response": { + "pascal_name": "BatchGetListingsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "ids", + "is_query": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + }, + { + "name": "Get", + "description": "Get a published listing in the Databricks Marketplace that the consumer has access to.", + "summary": "Get listing.", + "path": "/api/2.1/marketplace-consumer/listings/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetListingRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetListingResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List all published listings in the Databricks Marketplace that the consumer has access to.", + "summary": "List listings.", + "path": "/api/2.1/marketplace-consumer/listings", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListListingsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListListingsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "assets", + "description": "Matches any of the following asset types", + "is_query": true, + "entity": { + "pascal_name": "AssetTypeList", + "array_value": { + "pascal_name": "AssetType", + "enum": [ + { + "content": "ASSET_TYPE_APP" + }, + { + "content": "ASSET_TYPE_DATA_TABLE" + }, + { + "content": "ASSET_TYPE_GIT_REPO" + }, + { + "content": "ASSET_TYPE_MCP" + }, + { + "content": "ASSET_TYPE_MEDIA" + }, + { + "content": "ASSET_TYPE_MODEL" + }, + { + "content": "ASSET_TYPE_NOTEBOOK" + }, + { + "content": "ASSET_TYPE_PARTNER_INTEGRATION" + } + ] + } + } + }, + { + "name": "categories", + "description": "Matches any of the following categories", + "is_query": true, + "entity": { + "pascal_name": "CategoryList", + "array_value": { + "pascal_name": "Category", + "enum": [ + { + "content": "ADVERTISING_AND_MARKETING" + }, + { + "content": "CLIMATE_AND_ENVIRONMENT" + }, + { + "content": "COMMERCE" + }, + { + "content": "DEMOGRAPHICS" + }, + { + "content": "ECONOMICS" + }, + { + "content": "EDUCATION" + }, + { + "content": "ENERGY" + }, + { + "content": "FINANCIAL" + }, + { + "content": "GAMING" + }, + { + "content": "GEOSPATIAL" + }, + { + "content": "HEALTH" + }, + { + "content": "LOOKUP_TABLES" + }, + { + "content": "MANUFACTURING" + }, + { + "content": "MEDIA" + }, + { + "content": "OTHER" + }, + { + "content": "PUBLIC_SECTOR" + }, + { + "content": "RETAIL" + }, + { + "content": "SCIENCE_AND_RESEARCH" + }, + { + "content": "SECURITY" + }, + { + "content": "SPORTS" + }, + { + "content": "TRANSPORTATION_AND_LOGISTICS" + }, + { + "content": "TRAVEL_AND_TOURISM" + } + ] + } + } + }, + { + "name": "is_free", + "description": "Filters each listing based on if it is free.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "is_private_exchange", + "description": "Filters each listing based on if it is a private exchange.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "is_staff_pick", + "description": "Filters each listing based on whether it is a staff pick.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "provider_ids", + "description": "Matches any of the following provider ids", + "is_query": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "tags", + "description": "Matches listings with this tag", + "is_query": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ListingTag", + "is_object": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Search", + "description": "Search published listings in the Databricks Marketplace that the consumer has access to.\nThis query supports a variety of different search parameters and performs fuzzy matching.", + "summary": "Search listings.", + "path": "/api/2.1/marketplace-consumer/search-listings", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SearchListingsRequest", + "is_object": true, + "required_fields": [ + { + "name": "query", + "description": "Fuzzy matches query", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "query", + "description": "Fuzzy matches query", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SearchListingsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "assets", + "description": "Matches any of the following asset types", + "is_query": true, + "entity": { + "pascal_name": "AssetTypeList", + "array_value": { + "pascal_name": "AssetType", + "enum": [ + { + "content": "ASSET_TYPE_APP" + }, + { + "content": "ASSET_TYPE_DATA_TABLE" + }, + { + "content": "ASSET_TYPE_GIT_REPO" + }, + { + "content": "ASSET_TYPE_MCP" + }, + { + "content": "ASSET_TYPE_MEDIA" + }, + { + "content": "ASSET_TYPE_MODEL" + }, + { + "content": "ASSET_TYPE_NOTEBOOK" + }, + { + "content": "ASSET_TYPE_PARTNER_INTEGRATION" + } + ] + } + } + }, + { + "name": "categories", + "description": "Matches any of the following categories", + "is_query": true, + "entity": { + "pascal_name": "CategoryList", + "array_value": { + "pascal_name": "Category", + "enum": [ + { + "content": "ADVERTISING_AND_MARKETING" + }, + { + "content": "CLIMATE_AND_ENVIRONMENT" + }, + { + "content": "COMMERCE" + }, + { + "content": "DEMOGRAPHICS" + }, + { + "content": "ECONOMICS" + }, + { + "content": "EDUCATION" + }, + { + "content": "ENERGY" + }, + { + "content": "FINANCIAL" + }, + { + "content": "GAMING" + }, + { + "content": "GEOSPATIAL" + }, + { + "content": "HEALTH" + }, + { + "content": "LOOKUP_TABLES" + }, + { + "content": "MANUFACTURING" + }, + { + "content": "MEDIA" + }, + { + "content": "OTHER" + }, + { + "content": "PUBLIC_SECTOR" + }, + { + "content": "RETAIL" + }, + { + "content": "SCIENCE_AND_RESEARCH" + }, + { + "content": "SECURITY" + }, + { + "content": "SPORTS" + }, + { + "content": "TRANSPORTATION_AND_LOGISTICS" + }, + { + "content": "TRAVEL_AND_TOURISM" + } + ] + } + } + }, + { + "name": "is_free", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "is_private_exchange", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "provider_ids", + "description": "Matches any of the following provider ids", + "is_query": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "query", + "description": "Fuzzy matches query", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "query", + "description": "Fuzzy matches query", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "marketplace.ConsumerPersonalizationRequests", + "name": "ConsumerPersonalizationRequests", + "description": "Personalization Requests allow customers to interact with the individualized Marketplace listing flow.", + "package": { + "name": "marketplace" + }, + "docs_group": "marketplace", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListAllPersonalizationRequestsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Create a personalization request for a listing.", + "summary": "Create a personalization request.", + "path": "/api/2.1/marketplace-consumer/listings/{listing_id}/personalization-requests", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreatePersonalizationRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "intended_use", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "accepted_consumer_terms", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ConsumerTerms", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "intended_use", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "accepted_consumer_terms", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ConsumerTerms", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "CreatePersonalizationRequestResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "accepted_consumer_terms", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ConsumerTerms", + "is_object": true + } + }, + { + "name": "comment", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "company", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "first_name", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "intended_use", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "is_from_lighthouse", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "last_name", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "recipient_type", + "is_request_body_field": true, + "entity": { + "pascal_name": "DeltaSharingRecipientType", + "enum": [ + { + "content": "DELTA_SHARING_RECIPIENT_TYPE_DATABRICKS" + }, + { + "content": "DELTA_SHARING_RECIPIENT_TYPE_OPEN" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Get the personalization request for a listing. Each consumer can make at *most* one personalization request for a listing.", + "summary": "Get the personalization request for a listing.", + "path": "/api/2.1/marketplace-consumer/listings/{listing_id}/personalization-requests", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetPersonalizationRequestRequest", + "is_object": true, + "required_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetPersonalizationRequestResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List personalization requests for a consumer across all listings.", + "summary": "List all personalization requests.", + "path": "/api/2.1/marketplace-consumer/personalization-requests", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAllPersonalizationRequestsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListAllPersonalizationRequestsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "marketplace.ConsumerProviders", + "name": "ConsumerProviders", + "description": "Providers are the entities that publish listings to the Marketplace.", + "package": { + "name": "marketplace" + }, + "docs_group": "marketplace", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "ProviderInfoNameToIdMap" + }, + "request": { + "pascal_name": "ListConsumerProvidersRequest" + } + }, + "methods": [ + { + "name": "BatchGet", + "description": "Batch get a provider in the Databricks Marketplace with at least one visible listing.", + "summary": "Get one batch of providers. One may specify up to 50 IDs per request.", + "path": "/api/2.1/marketplace-consumer/providers:batchGet", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "BatchGetProvidersRequest", + "is_object": true + }, + "response": { + "pascal_name": "BatchGetProvidersResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "ids", + "is_query": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + }, + { + "name": "Get", + "description": "Get a provider in the Databricks Marketplace with at least one visible listing.", + "summary": "Get a provider.", + "path": "/api/2.1/marketplace-consumer/providers/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetProviderRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetProviderResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List all providers in the Databricks Marketplace with at least one visible listing.", + "summary": "List providers.", + "path": "/api/2.1/marketplace-consumer/providers", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListConsumerProvidersRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListProvidersResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "is_featured", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "catalog.Credentials", + "name": "Credentials", + "description": "A credential represents an authentication and authorization mechanism for accessing services on your cloud tenant. Each credential is subject to Unity Catalog access-control policies that control which users and groups can access the credential.\n\nTo create credentials, you must be a Databricks account admin or have the `CREATE SERVICE CREDENTIAL` privilege. The user who creates the credential can delegate ownership to another user or group to manage permissions on it.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListCredentialsRequest" + } + }, + "methods": [ + { + "name": "CreateCredential", + "description": "Creates a new credential. The type of credential to be created is determined by the **purpose** field,\nwhich should be either **SERVICE** or **STORAGE**.\n\nThe caller must be a metastore admin or have the metastore privilege **CREATE_STORAGE_CREDENTIAL** for storage\ncredentials, or **CREATE_SERVICE_CREDENTIAL** for service credentials.", + "summary": "Create a credential.", + "path": "/api/2.1/unity-catalog/credentials", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateCredentialRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The credential name. The name must be unique among storage and service\ncredentials within the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The credential name. The name must be unique among storage and service\ncredentials within the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CredentialInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "aws_iam_role", + "description": "The AWS IAM role configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AwsIamRole", + "is_object": true + } + }, + { + "name": "azure_managed_identity", + "description": "The Azure managed identity configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzureManagedIdentity", + "is_object": true + } + }, + { + "name": "azure_service_principal", + "description": "The Azure service principal configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzureServicePrincipal", + "is_object": true + } + }, + { + "name": "comment", + "description": "Comment associated with the credential.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "databricks_gcp_service_account", + "description": "The Databricks managed GCP service account configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DatabricksGcpServiceAccount", + "is_object": true + } + }, + { + "name": "name", + "description": "The credential name. The name must be unique among storage and service\ncredentials within the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "purpose", + "description": "Indicates the purpose of the credential.", + "is_request_body_field": true, + "entity": { + "pascal_name": "CredentialPurpose", + "enum": [ + { + "content": "SERVICE" + }, + { + "content": "STORAGE" + } + ] + } + }, + { + "name": "read_only", + "description": "Whether the credential is usable only for read operations. Only applicable\nwhen purpose is **STORAGE**.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "skip_validation", + "description": "Optional. Supplying true to this argument skips validation of the created\nset of credentials.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The credential name. The name must be unique among storage and service\ncredentials within the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteCredential", + "description": "Deletes a service or storage credential from the metastore. The caller must be an owner of the credential.", + "summary": "Delete a credential.", + "path": "/api/2.1/unity-catalog/credentials/{name_arg}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteCredentialRequest", + "is_object": true, + "required_fields": [ + { + "name": "name_arg", + "description": "Name of the credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name_arg", + "description": "Name of the credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteCredentialResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "force", + "description": "Force an update even if there are dependent services (when purpose is\n**SERVICE**) or dependent external locations and external tables (when\npurpose is **STORAGE**).", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name_arg", + "description": "Name of the credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name_arg", + "description": "Name of the credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GenerateTemporaryServiceCredential", + "description": "Returns a set of temporary credentials generated using the specified service credential.\nThe caller must be a metastore admin or have the metastore privilege **ACCESS** on the service credential.", + "summary": "Generate a temporary service credential.", + "path": "/api/2.1/unity-catalog/temporary-service-credentials", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenerateTemporaryServiceCredentialRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "credential_name", + "description": "The name of the service credential used to generate a temporary credential", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "credential_name", + "description": "The name of the service credential used to generate a temporary credential", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "TemporaryCredentials", + "is_object": true + }, + "all_fields": [ + { + "name": "azure_options", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GenerateTemporaryServiceCredentialAzureOptions", + "is_object": true + } + }, + { + "name": "credential_name", + "description": "The name of the service credential used to generate a temporary credential", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "gcp_options", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GenerateTemporaryServiceCredentialGcpOptions", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "credential_name", + "description": "The name of the service credential used to generate a temporary credential", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetCredential", + "description": "Gets a service or storage credential from the metastore.\nThe caller must be a metastore admin, the owner of the credential, or have any permission on the credential.", + "summary": "Get a credential.", + "path": "/api/2.1/unity-catalog/credentials/{name_arg}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetCredentialRequest", + "is_object": true, + "required_fields": [ + { + "name": "name_arg", + "description": "Name of the credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name_arg", + "description": "Name of the credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CredentialInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "name_arg", + "description": "Name of the credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name_arg", + "description": "Name of the credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListCredentials", + "description": "Gets an array of credentials (as __CredentialInfo__ objects).\n\nThe array is limited to only the credentials that the caller has permission to access.\nIf the caller is a metastore admin, retrieval of credentials is unrestricted.\nThere is no guarantee of a specific ordering of the elements in the array.\n\nPAGINATION BEHAVIOR: The API is by default paginated, a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List credentials.", + "path": "/api/2.1/unity-catalog/credentials", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListCredentialsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListCredentialsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "include_unbound", + "description": "Whether to include credentials not bound to the workspace.\nEffective only if the user has permission to update the credential–workspace binding.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "max_results", + "description": "Maximum number of credentials to return.\n- If not set, the default max page size is used.\n- When set to a value greater than 0, the page length is the minimum of\nthis value and a server-configured value.\n- When set to 0, the page length is set to a server-configured value\n(recommended).\n- When set to a value less than 0, an invalid parameter error is\nreturned.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque token to retrieve the next page of results.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "purpose", + "description": "Return only credentials for the specified purpose.", + "is_query": true, + "entity": { + "pascal_name": "CredentialPurpose", + "enum": [ + { + "content": "SERVICE" + }, + { + "content": "STORAGE" + } + ] + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque token to retrieve the next page of results.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateCredential", + "description": "Updates a service or storage credential on the metastore.\n\nThe caller must be the owner of the credential or a metastore admin or have the `MANAGE` permission. If the caller is\na metastore admin, only the __owner__ field can be changed.", + "summary": "Update a credential.", + "path": "/api/2.1/unity-catalog/credentials/{name_arg}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateCredentialRequest", + "is_object": true, + "required_fields": [ + { + "name": "name_arg", + "description": "Name of the credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name_arg", + "description": "Name of the credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CredentialInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "aws_iam_role", + "description": "The AWS IAM role configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AwsIamRole", + "is_object": true + } + }, + { + "name": "azure_managed_identity", + "description": "The Azure managed identity configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzureManagedIdentity", + "is_object": true + } + }, + { + "name": "azure_service_principal", + "description": "The Azure service principal configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzureServicePrincipal", + "is_object": true + } + }, + { + "name": "comment", + "description": "Comment associated with the credential.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "databricks_gcp_service_account", + "description": "The Databricks managed GCP service account configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DatabricksGcpServiceAccount", + "is_object": true + } + }, + { + "name": "force", + "description": "Force an update even if there are dependent services (when purpose is\n**SERVICE**) or dependent external locations and external tables (when\npurpose is **STORAGE**).", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "isolation_mode", + "description": "Whether the current securable is accessible from all workspaces or a\nspecific set of workspaces.", + "is_request_body_field": true, + "entity": { + "pascal_name": "IsolationMode", + "enum": [ + { + "content": "ISOLATION_MODE_ISOLATED" + }, + { + "content": "ISOLATION_MODE_OPEN" + } + ] + } + }, + { + "name": "name_arg", + "description": "Name of the credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "new_name", + "description": "New name of credential.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "Username of current owner of credential.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "read_only", + "description": "Whether the credential is usable only for read operations. Only applicable\nwhen purpose is **STORAGE**.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "skip_validation", + "description": "Supply true to this argument to skip validation of the updated credential.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name_arg", + "description": "Name of the credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ValidateCredential", + "description": "Validates a credential.\n\nFor service credentials (purpose is **SERVICE**), either the __credential_name__ or the cloud-specific credential\nmust be provided.\n\nFor storage credentials (purpose is **STORAGE**), at least one of __external_location_name__ and __url__ need to be\nprovided. If only one of them is provided, it will be used for validation. And if both are provided, the __url__\nwill be used for validation, and __external_location_name__ will be ignored when checking overlapping urls. Either\nthe __credential_name__ or the cloud-specific credential must be provided.\n\nThe caller must be a metastore admin or the credential owner or have the required permission on the metastore and\nthe credential (e.g., **CREATE_EXTERNAL_LOCATION** when purpose is **STORAGE**).", + "summary": "Validate a credential.", + "path": "/api/2.1/unity-catalog/validate-credentials", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ValidateCredentialRequest", + "is_object": true + }, + "response": { + "pascal_name": "ValidateCredentialResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "aws_iam_role", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AwsIamRole", + "is_object": true + } + }, + { + "name": "azure_managed_identity", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzureManagedIdentity", + "is_object": true + } + }, + { + "name": "credential_name", + "description": "Required. The name of an existing credential or long-lived cloud\ncredential to validate.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "databricks_gcp_service_account", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DatabricksGcpServiceAccount", + "is_object": true + } + }, + { + "name": "external_location_name", + "description": "The name of an existing external location to validate. Only applicable for\nstorage credentials (purpose is\n**STORAGE**.)", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "purpose", + "description": "The purpose of the credential. This should only be used when the credential\nis specified.", + "is_request_body_field": true, + "entity": { + "pascal_name": "CredentialPurpose", + "enum": [ + { + "content": "SERVICE" + }, + { + "content": "STORAGE" + } + ] + } + }, + { + "name": "read_only", + "description": "Whether the credential is only usable for read operations. Only applicable\nfor storage credentials (purpose is\n**STORAGE**.)", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "url", + "description": "The external location url to validate. Only applicable when purpose is\n**STORAGE**.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "provisioning.Credentials", + "name": "Credentials", + "description": "These APIs manage credential configurations for this workspace. Databricks needs access to\na cross-account service IAM role in your AWS account so that Databricks can deploy clusters\nin the appropriate VPC for the new workspace. A credential configuration encapsulates this\nrole information, and its ID is used when creating a new workspace.", + "package": { + "name": "provisioning" + }, + "is_accounts": true, + "docs_group": "provisioning", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Create", + "description": "Creates a Databricks credential configuration that represents cloud cross-account credentials for a specified account. Databricks uses this to set up network infrastructure properly to host Databricks clusters. For your AWS IAM role, you need to trust the External ID (the Databricks Account API account ID) in the returned credential object, and configure the required access policy.\n\nSave the response's `credentials_id` field, which is the ID for your new credential configuration object.\n\nFor information about how to create a new workspace with this API, see [Create a new workspace using the Account API](http://docs.databricks.com/administration-guide/account-api/new-workspace.html)", + "summary": "Create credential configuration.", + "path": "/api/2.0/accounts/{account_id}/credentials", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateCredentialRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "credentials_name", + "description": "The human-readable name of the credential configuration object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "aws_credentials", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateCredentialAwsCredentials", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "credentials_name", + "description": "The human-readable name of the credential configuration object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "aws_credentials", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateCredentialAwsCredentials", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "Credential", + "is_object": true + }, + "all_fields": [ + { + "name": "aws_credentials", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateCredentialAwsCredentials", + "is_object": true + } + }, + { + "name": "credentials_name", + "description": "The human-readable name of the credential configuration object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a Databricks credential configuration object for an account, both specified by ID. You cannot delete a credential that is associated with any workspace.", + "summary": "Delete credential configuration.", + "path": "/api/2.0/accounts/{account_id}/credentials/{credentials_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteCredentialRequest", + "is_object": true, + "required_fields": [ + { + "name": "credentials_id", + "description": "Databricks Account API credential configuration ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "credentials_id", + "description": "Databricks Account API credential configuration ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Credential", + "is_object": true + }, + "all_fields": [ + { + "name": "credentials_id", + "description": "Databricks Account API credential configuration ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "credentials_id", + "description": "Databricks Account API credential configuration ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a Databricks credential configuration object for an account, both specified by ID.", + "summary": "Get credential configuration.", + "path": "/api/2.0/accounts/{account_id}/credentials/{credentials_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetCredentialRequest", + "is_object": true, + "required_fields": [ + { + "name": "credentials_id", + "description": "Credential configuration ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "credentials_id", + "description": "Credential configuration ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Credential", + "is_object": true + }, + "all_fields": [ + { + "name": "credentials_id", + "description": "Credential configuration ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "credentials_id", + "description": "Credential configuration ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List Databricks credential configuration objects for an account, specified by ID.", + "summary": "List credential configuration.", + "path": "/api/2.0/accounts/{account_id}/credentials", + "is_legacy_empty_request": true, + "is_crud_read": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListCredentialsRequest", + "is_object": true + }, + "response": { + "pascal_name": "CredentialList", + "array_value": { + "pascal_name": "Credential", + "is_object": true + } + } + } + ] + }, + { + "id": "settings.CredentialsManager", + "name": "CredentialsManager", + "description": "Credentials manager interacts with with Identity Providers to to perform token exchanges\nusing stored credentials and refresh tokens.", + "package": { + "name": "settings" + }, + "is_hidden_cli": true, + "docs_group": "settings", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "methods": [ + { + "name": "ExchangeToken", + "description": "Exchange tokens with an Identity Provider to get a new access token. It allows\nspecifying scopes to determine token permissions.\n\nPOST /exchange-tokens/token is the documented public form, expressed via\n`google.api.http` below. GET /exchange-tokens/$exchange is a legacy alias\nused by the Spark driver's OAuth refresh path (DBHttpClient#get sends a body\nvia HttpGetWithEntity) and stays on the legacy `option (rpc).endpoints`\nannotation: its path contains a literal `$`, which `google.api.http`'s\nLITERAL grammar does not allow, and `HttpPathParser` does not percent-decode\ntemplate segments (so encoding as `%24exchange` would not match the literal\n`$exchange` path the Spark driver sends). Per-endpoint\n`visibility: PUBLIC_UNDOCUMENTED` preserves the DECO-7732 intent of\nsuppressing the GET alias from the public API spec.", + "summary": "Exchange token.", + "path": "/api/2.0/credentials-manager/exchange-tokens/token", + "can_use_json": true, + "must_use_json": true, + "is_hidden_cli": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ExchangeTokenRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "partitionId", + "description": "The partition of Credentials store", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PartitionId", + "is_object": true + } + }, + { + "name": "tokenType", + "description": "A list of token types being requested", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TokenTypeList", + "array_value": { + "pascal_name": "TokenType", + "enum": [ + { + "content": "ARCLIGHT_AZURE_EXCHANGE_TOKEN" + }, + { + "content": "ARCLIGHT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY" + }, + { + "content": "ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN" + }, + { + "content": "ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY" + }, + { + "content": "AZURE_ACTIVE_DIRECTORY_TOKEN" + } + ] + } + } + }, + { + "name": "scopes", + "description": "Array of scopes for the token request.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_request_body_fields": [ + { + "name": "partitionId", + "description": "The partition of Credentials store", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PartitionId", + "is_object": true + } + }, + { + "name": "tokenType", + "description": "A list of token types being requested", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TokenTypeList", + "array_value": { + "pascal_name": "TokenType", + "enum": [ + { + "content": "ARCLIGHT_AZURE_EXCHANGE_TOKEN" + }, + { + "content": "ARCLIGHT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY" + }, + { + "content": "ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN" + }, + { + "content": "ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY" + }, + { + "content": "AZURE_ACTIVE_DIRECTORY_TOKEN" + } + ] + } + } + }, + { + "name": "scopes", + "description": "Array of scopes for the token request.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + }, + "response": { + "pascal_name": "ExchangeTokenResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "partitionId", + "description": "The partition of Credentials store", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PartitionId", + "is_object": true + } + }, + { + "name": "scopes", + "description": "Array of scopes for the token request.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "tokenType", + "description": "A list of token types being requested", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TokenTypeList", + "array_value": { + "pascal_name": "TokenType", + "enum": [ + { + "content": "ARCLIGHT_AZURE_EXCHANGE_TOKEN" + }, + { + "content": "ARCLIGHT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY" + }, + { + "content": "ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN" + }, + { + "content": "ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY" + }, + { + "content": "AZURE_ACTIVE_DIRECTORY_TOKEN" + } + ] + } + } + } + ] + } + ] + }, + { + "id": "settings.CspEnablementAccount", + "name": "CspEnablementAccount", + "description": "The compliance security profile settings at the account level control whether to enable it for new workspaces.\nBy default, this account-level setting is disabled for new workspaces. After workspace creation, account admins can enable the compliance security profile individually for each workspace.\n\nThis settings can be disabled so that new workspaces do not have compliance security profile enabled by default.", + "package": { + "name": "settings" + }, + "is_accounts": true, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "parent_service_id": "settings.AccountSettings", + "methods": [ + { + "name": "Get", + "description": "Gets the compliance security profile setting for new workspaces.", + "summary": "Get the compliance security profile setting for new workspaces.", + "path": "/api/2.0/accounts/{account_id}/settings/types/shield_csp_enablement_ac/names/default", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetCspEnablementAccountSettingRequest", + "is_object": true + }, + "response": { + "pascal_name": "CspEnablementAccountSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "csp_enablement_account", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CspEnablementAccount", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "csp_enablement_account", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CspEnablementAccount", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the value of the compliance security profile setting for new workspaces.", + "summary": "Update the compliance security profile setting for new workspaces.", + "path": "/api/2.0/accounts/{account_id}/settings/types/shield_csp_enablement_ac/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateCspEnablementAccountSettingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CspEnablementAccountSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CspEnablementAccountSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CspEnablementAccountSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "csp_enablement_account", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CspEnablementAccount", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "csp_enablement_account", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CspEnablementAccount", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CspEnablementAccountSetting", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "iam.CurrentUser", + "name": "CurrentUser", + "description": "This API allows retrieving information about currently authenticated user or\nservice principal.", + "package": { + "name": "iam" + }, + "docs_group": "iam", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "methods": [ + { + "name": "Me", + "description": "Get details about the current method caller's identity.", + "summary": "Get current user info.", + "path": "/api/2.0/preview/scim/v2/Me", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "MeRequest", + "is_object": true + }, + "response": { + "pascal_name": "User", + "is_object": true + }, + "all_fields": [ + { + "name": "attributes", + "description": "Comma-separated list of attributes to return in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "excludedAttributes", + "description": "Comma-separated list of attributes to exclude in response.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "oauth2.CustomAppIntegration", + "name": "CustomAppIntegration", + "description": "These APIs enable administrators to manage custom OAuth app integrations, which is required for\nadding/using Custom OAuth App Integration like Tableau Cloud for Databricks in AWS cloud.", + "package": { + "name": "oauth2" + }, + "is_accounts": true, + "docs_group": "oauth2", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListCustomAppIntegrationsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Create Custom OAuth App Integration.\n\nYou can retrieve the custom OAuth app integration via [CustomAppIntegration/get](https://docs.databricks.com/api/account/customappintegration/get).", + "summary": "Create Custom OAuth App Integration.", + "path": "/api/2.0/accounts/{account_id}/oauth2/custom-app-integrations", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateCustomAppIntegration", + "is_object": true + }, + "response": { + "pascal_name": "CreateCustomAppIntegrationOutput", + "is_object": true + }, + "all_fields": [ + { + "name": "confidential", + "description": "This field indicates whether an OAuth client secret is required to authenticate this client.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "Name of the custom OAuth app", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "redirect_urls", + "description": "List of OAuth redirect urls", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "scopes", + "description": "OAuth scopes granted to the application.\nSupported scopes: all-apis, sql, offline_access, openid, profile, email.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "token_access_policy", + "description": "Token access policy", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "TokenAccessPolicy", + "is_object": true + } + }, + { + "name": "user_authorized_scopes", + "description": "Scopes that will need to be consented by end user to mint the access token. If the user does\nnot authorize the access token will not be minted.\nMust be a subset of scopes.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + }, + { + "name": "Delete", + "description": "Delete an existing Custom OAuth App Integration.\nYou can retrieve the custom OAuth app integration via [CustomAppIntegration/get](https://docs.databricks.com/api/account/customappintegration/get).", + "summary": "Delete Custom OAuth App Integration.", + "path": "/api/2.0/accounts/{account_id}/oauth2/custom-app-integrations/{integration_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteCustomAppIntegrationRequest", + "is_object": true, + "required_fields": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteCustomAppIntegrationOutput", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the Custom OAuth App Integration for the given integration id.", + "summary": "Get OAuth Custom App Integration.", + "path": "/api/2.0/accounts/{account_id}/oauth2/custom-app-integrations/{integration_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetCustomAppIntegrationRequest", + "is_object": true, + "required_fields": [ + { + "name": "integration_id", + "description": "The OAuth app integration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "integration_id", + "description": "The OAuth app integration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetCustomAppIntegrationOutput", + "is_object": true + }, + "all_fields": [ + { + "name": "integration_id", + "description": "The OAuth app integration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "integration_id", + "description": "The OAuth app integration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Get the list of custom OAuth app integrations for the specified Databricks account", + "summary": "Get custom oauth app integrations.", + "path": "/api/2.0/accounts/{account_id}/oauth2/custom-app-integrations", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListCustomAppIntegrationsRequest", + "is_object": true + }, + "response": { + "pascal_name": "GetCustomAppIntegrationsOutput", + "is_object": true + }, + "all_fields": [ + { + "name": "include_creator_username", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Updates an existing custom OAuth App Integration.\nYou can retrieve the custom OAuth app integration via [CustomAppIntegration/get](https://docs.databricks.com/api/account/customappintegration/get).", + "summary": "Updates Custom OAuth App Integration.", + "path": "/api/2.0/accounts/{account_id}/oauth2/custom-app-integrations/{integration_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateCustomAppIntegration", + "is_object": true, + "required_fields": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateCustomAppIntegrationOutput", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "redirect_urls", + "description": "List of OAuth redirect urls to be updated in the custom OAuth app integration", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "scopes", + "description": "List of OAuth scopes to be updated in the custom OAuth app integration, similar to redirect URIs this will fully\nreplace the existing values instead of appending", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "token_access_policy", + "description": "Token access policy to be updated in the custom OAuth app integration", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "TokenAccessPolicy", + "is_object": true + } + }, + { + "name": "user_authorized_scopes", + "description": "Scopes that will need to be consented by end user to mint the access token. If the user does\nnot authorize the access token will not be minted.\nMust be a subset of scopes.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "settings.DashboardEmailSubscriptions", + "name": "DashboardEmailSubscriptions", + "description": "Controls whether schedules or workload tasks for refreshing AI/BI Dashboards in the workspace can send subscription emails containing PDFs and/or images of the dashboard. By default, this setting is enabled (set to `true`)", + "package": { + "name": "settings" + }, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "Delete", + "description": "Reverts the Dashboard Email Subscriptions setting to its default value.", + "summary": "Delete the Dashboard Email Subscriptions setting.", + "path": "/api/2.0/settings/types/dashboard_email_subscriptions/names/default", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteDashboardEmailSubscriptionsRequest", + "is_object": true + }, + "response": { + "pascal_name": "DeleteDashboardEmailSubscriptionsResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the Dashboard Email Subscriptions setting.", + "summary": "Get the Dashboard Email Subscriptions setting.", + "path": "/api/2.0/settings/types/dashboard_email_subscriptions/names/default", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetDashboardEmailSubscriptionsRequest", + "is_object": true + }, + "response": { + "pascal_name": "DashboardEmailSubscriptions", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the Dashboard Email Subscriptions setting.", + "summary": "Update the Dashboard Email Subscriptions setting.", + "path": "/api/2.0/settings/types/dashboard_email_subscriptions/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateDashboardEmailSubscriptionsRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DashboardEmailSubscriptions", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DashboardEmailSubscriptions", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DashboardEmailSubscriptions", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DashboardEmailSubscriptions", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "sql.DashboardWidgets", + "name": "DashboardWidgets", + "description": "This is an evolving API that facilitates the addition and removal of widgets from existing\ndashboards within the Databricks Workspace. Data structures may change over time.", + "package": { + "name": "sql" + }, + "is_hidden_cli": true, + "docs_group": "sql", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "methods": [ + { + "name": "Create", + "description": "Adds a widget to a dashboard", + "summary": "Add widget to a dashboard.", + "path": "/api/2.0/preview/sql/widgets", + "can_use_json": true, + "must_use_json": true, + "is_hidden_cli": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateWidget", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "Dashboard ID returned by :method:dashboards/create.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WidgetOptions", + "is_object": true + } + }, + { + "name": "width", + "description": "Width of a widget", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ], + "required_request_body_fields": [ + { + "name": "dashboard_id", + "description": "Dashboard ID returned by :method:dashboards/create.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WidgetOptions", + "is_object": true + } + }, + { + "name": "width", + "description": "Width of a widget", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ] + }, + "response": { + "pascal_name": "Widget", + "is_object": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "Dashboard ID returned by :method:dashboards/create.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WidgetOptions", + "is_object": true + } + }, + { + "name": "text", + "description": "If this is a textbox widget, the application displays this text. This field is ignored if the widget contains a visualization in the `visualization` field.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "visualization_id", + "description": "Query Visualization ID returned by :method:queryvisualizations/create.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "width", + "description": "Width of a widget", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ] + }, + { + "name": "Delete", + "description": "Removes a widget from a dashboard", + "summary": "Remove widget.", + "path": "/api/2.0/preview/sql/widgets/{id}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteDashboardWidgetRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Widget ID returned by :method:dashboardwidgets/create", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Widget ID returned by :method:dashboardwidgets/create", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Widget ID returned by :method:dashboardwidgets/create", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Widget ID returned by :method:dashboardwidgets/create", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates an existing widget", + "summary": "Update existing widget.", + "path": "/api/2.0/preview/sql/widgets/{id}", + "can_use_json": true, + "must_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateWidgetRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "description": "Widget ID returned by :method:dashboardwidgets/create", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "dashboard_id", + "description": "Dashboard ID returned by :method:dashboards/create.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WidgetOptions", + "is_object": true + } + }, + { + "name": "width", + "description": "Width of a widget", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Widget ID returned by :method:dashboardwidgets/create", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "dashboard_id", + "description": "Dashboard ID returned by :method:dashboards/create.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WidgetOptions", + "is_object": true + } + }, + { + "name": "width", + "description": "Width of a widget", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ] + }, + "response": { + "pascal_name": "Widget", + "is_object": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "Dashboard ID returned by :method:dashboards/create.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Widget ID returned by :method:dashboardwidgets/create", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WidgetOptions", + "is_object": true + } + }, + { + "name": "text", + "description": "If this is a textbox widget, the application displays this text. This field is ignored if the widget contains a visualization in the `visualization` field.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "visualization_id", + "description": "Query Visualization ID returned by :method:queryvisualizations/create.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "width", + "description": "Width of a widget", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Widget ID returned by :method:dashboardwidgets/create", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "sql.Dashboards", + "name": "Dashboards", + "description": "In general, there is little need to modify dashboards using the API. However, it can be\nuseful to use dashboard objects to look-up a collection of related query IDs. The API can\nalso be used to duplicate multiple dashboards at once since you can get a dashboard\ndefinition with a GET request and then POST it to create a new one.\nDashboards can be scheduled using the `sql_task` type of the Jobs API, e.g. :method:jobs/create.\n\n**Warning**: This API is deprecated. Please use the AI/BI Dashboards API instead. [Learn more](https://docs.databricks.com/en/dashboards/)", + "package": { + "name": "sql" + }, + "docs_group": "sql", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Delete", + "description": "Moves a dashboard to the trash. Trashed dashboards do not appear in list views or searches, and cannot be shared.\n\n**Warning**: This API is deprecated. Please use the AI/BI Dashboards API instead. [Learn more](https://docs.databricks.com/en/dashboards/)", + "summary": "Remove a dashboard.", + "path": "/api/2.0/preview/sql/dashboards/{dashboard_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteDashboardRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Returns a JSON representation of a dashboard object, including its visualization and query objects.\n\n**Warning**: This API is deprecated. Please use the AI/BI Dashboards API instead. [Learn more](https://docs.databricks.com/en/dashboards/)", + "summary": "Retrieve a definition.", + "path": "/api/2.0/preview/sql/dashboards/{dashboard_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetDashboardRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Dashboard", + "is_object": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Fetch a paginated list of dashboard objects.\n\n**Warning**: Calling this API concurrently 10 or more times could result in throttling, service degradation, or a temporary ban.\n\n**Warning**: This API is deprecated. Please use the AI/BI Dashboards API instead. [Learn more](https://docs.databricks.com/en/dashboards/)", + "summary": "Get dashboard objects.", + "path": "/api/2.0/preview/sql/dashboards", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListDashboardsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "order", + "description": "Name of dashboard attribute to order by.", + "is_query": true, + "entity": { + "pascal_name": "ListOrder", + "enum": [ + { + "content": "created_at" + }, + { + "content": "name" + } + ] + } + }, + { + "name": "page", + "description": "Page number to retrieve.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_size", + "description": "Number of dashboards to return per page.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "q", + "description": "Full text search term.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "offset": { + "name": "page", + "description": "Page number to retrieve.", + "is_query": true, + "entity": { + "is_int": true + } + }, + "limit": { + "name": "page_size", + "description": "Number of dashboards to return per page.", + "is_query": true, + "entity": { + "is_int": true + } + } + } + }, + { + "name": "Restore", + "description": "A restored dashboard appears in list views and searches and can be shared.\n\n**Warning**: This API is deprecated. Please use the AI/BI Dashboards API instead. [Learn more](https://docs.databricks.com/en/dashboards/)", + "summary": "Restore a dashboard.", + "path": "/api/2.0/preview/sql/dashboards/trash/{dashboard_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RestoreDashboardRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RestoreResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Modify this dashboard definition. This operation only affects attributes of the dashboard object. It does not add, modify, or remove widgets.\n\n**Note**: You cannot undo this operation.\n\n**Warning**: This API is deprecated. Please use the AI/BI Dashboards API instead. [Learn more](https://docs.databricks.com/en/dashboards/)", + "summary": "Change a dashboard definition.", + "path": "/api/2.0/preview/sql/dashboards/{dashboard_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DashboardEditContent", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Dashboard", + "is_object": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The title of this dashboard that appears in list views and at the top of the dashboard page.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_as_role", + "description": "Sets the **Run as** role for the object. Must be set to one of `\"viewer\"` (signifying \"run as viewer\" behavior) or `\"owner\"` (signifying \"run as owner\" behavior)", + "is_request_body_field": true, + "entity": { + "pascal_name": "RunAsRole", + "enum": [ + { + "content": "owner" + }, + { + "content": "viewer" + } + ] + } + }, + { + "name": "tags", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "dataclassification.DataClassification", + "name": "DataClassification", + "description": "Manage data classification for Unity Catalog catalogs.\nData classification automatically identifies and tags sensitive data (PII) in Unity Catalog tables.\nEach catalog can have at most one configuration resource that controls scanning behavior and auto-tagging rules.", + "package": { + "name": "dataclassification" + }, + "docs_group": "dataclassification", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "CreateCatalogConfig", + "description": "Create Data Classification configuration for a catalog.\n\nCreates a new config resource, which enables Data Classification\nfor the specified catalog.\n- The config must not already exist for the catalog.", + "summary": "Create config for a catalog.", + "path": "/api/data-classification/v1/{parent=catalogs/*}/config", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateCatalogConfigRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "Parent resource in the format: catalogs/{catalog_name}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_config", + "description": "The configuration to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CatalogConfig", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Parent resource in the format: catalogs/{catalog_name}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "catalog_config", + "description": "The configuration to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CatalogConfig", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "catalog_config", + "description": "The configuration to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CatalogConfig", + "is_object": true + } + }, + "response": { + "pascal_name": "CatalogConfig", + "is_object": true + }, + "all_fields": [ + { + "name": "catalog_config", + "description": "The configuration to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CatalogConfig", + "is_object": true + } + }, + { + "name": "parent", + "description": "Parent resource in the format: catalogs/{catalog_name}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "auto_tag_configs", + "description": "List of auto-tagging configurations for this catalog.\nEmpty list means no auto-tagging is enabled.", + "is_request_body_field": true, + "entity": { + "pascal_name": "AutoTaggingConfigList", + "array_value": { + "pascal_name": "AutoTaggingConfig", + "is_object": true + } + } + }, + { + "name": "excluded_schemas", + "description": "Schemas to exclude from the scan, each named relative to the parent catalog.\nIf specified, all schemas except the specified ones will be scanned.\nMutually exclusive with `included_schemas`: only one may be set per request.\nIf neither `included_schemas` nor `excluded_schemas` is set, all schemas are scanned.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CatalogConfigSchemaNames", + "is_object": true + } + }, + { + "name": "included_schemas", + "description": "Schemas to include in the scan, each named relative to the parent catalog.\nIf specified, only listed schemas will be scanned.\nMutually exclusive with `excluded_schemas`: only one may be set per request.\nIf neither `included_schemas` nor `excluded_schemas` is set, all schemas are scanned.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CatalogConfigSchemaNames", + "is_object": true + } + }, + { + "name": "name", + "description": "Resource name in the format: catalogs/{catalog_name}/config.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Parent resource in the format: catalogs/{catalog_name}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteCatalogConfig", + "description": "Delete Data Classification configuration for a catalog.", + "summary": "Delete config for a catalog.", + "path": "/api/data-classification/v1/{name=catalogs/*/config}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteCatalogConfigRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name in the format: catalogs/{catalog_name}/config", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name in the format: catalogs/{catalog_name}/config", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name in the format: catalogs/{catalog_name}/config", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name in the format: catalogs/{catalog_name}/config", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetCatalogConfig", + "description": "Get the Data Classification configuration for a catalog.", + "summary": "Get config for a catalog.", + "path": "/api/data-classification/v1/{name=catalogs/*/config}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetCatalogConfigRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name in the format: catalogs/{catalog_name}/config", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name in the format: catalogs/{catalog_name}/config", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CatalogConfig", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name in the format: catalogs/{catalog_name}/config", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name in the format: catalogs/{catalog_name}/config", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateCatalogConfig", + "description": "Update the Data Classification configuration for a catalog.\n- The config must already exist for the catalog.\n- Updates fields specified in the update_mask. Use update_mask field to perform partial updates of the configuration.", + "summary": "Update config for a catalog.", + "path": "/api/data-classification/v1/{name=catalogs/*/config}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateCatalogConfigRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name in the format: catalogs/{catalog_name}/config.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_config", + "description": "The configuration to apply to the catalog.\nThe name field in catalog_config identifies which resource to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CatalogConfig", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Field mask specifying which fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name in the format: catalogs/{catalog_name}/config.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Field mask specifying which fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "catalog_config", + "description": "The configuration to apply to the catalog.\nThe name field in catalog_config identifies which resource to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CatalogConfig", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "catalog_config", + "description": "The configuration to apply to the catalog.\nThe name field in catalog_config identifies which resource to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CatalogConfig", + "is_object": true + } + }, + "response": { + "pascal_name": "CatalogConfig", + "is_object": true + }, + "all_fields": [ + { + "name": "catalog_config", + "description": "The configuration to apply to the catalog.\nThe name field in catalog_config identifies which resource to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CatalogConfig", + "is_object": true + } + }, + { + "name": "name", + "description": "Resource name in the format: catalogs/{catalog_name}/config.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Field mask specifying which fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "auto_tag_configs", + "description": "List of auto-tagging configurations for this catalog.\nEmpty list means no auto-tagging is enabled.", + "is_request_body_field": true, + "entity": { + "pascal_name": "AutoTaggingConfigList", + "array_value": { + "pascal_name": "AutoTaggingConfig", + "is_object": true + } + } + }, + { + "name": "excluded_schemas", + "description": "Schemas to exclude from the scan, each named relative to the parent catalog.\nIf specified, all schemas except the specified ones will be scanned.\nMutually exclusive with `included_schemas`: only one may be set per request.\nIf neither `included_schemas` nor `excluded_schemas` is set, all schemas are scanned.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CatalogConfigSchemaNames", + "is_object": true + } + }, + { + "name": "included_schemas", + "description": "Schemas to include in the scan, each named relative to the parent catalog.\nIf specified, only listed schemas will be scanned.\nMutually exclusive with `excluded_schemas`: only one may be set per request.\nIf neither `included_schemas` nor `excluded_schemas` is set, all schemas are scanned.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CatalogConfigSchemaNames", + "is_object": true + } + }, + { + "name": "name", + "description": "Resource name in the format: catalogs/{catalog_name}/config.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name in the format: catalogs/{catalog_name}/config.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Field mask specifying which fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ] + } + ] + }, + { + "id": "dataquality.DataQuality", + "name": "DataQuality", + "description": "Manage the data quality of Unity Catalog objects (currently support `schema` and `table`)", + "package": { + "name": "dataquality" + }, + "docs_group": "dataquality", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "request": { + "pascal_name": "ListMonitorRequest" + } + }, + "methods": [ + { + "name": "CancelRefresh", + "description": "Cancels a data quality monitor refresh. Currently only supported for the `table` `object_type`.\nThe call must be made in the same workspace as where the monitor was created.\n\nThe caller must have either of the following sets of permissions:\n1. **MANAGE** and **USE_CATALOG** on the table's parent catalog.\n2. **USE_CATALOG** on the table's parent catalog, and **MANAGE** and **USE_SCHEMA** on the table's parent schema.\n3. **USE_CATALOG** on the table's parent catalog, **USE_SCHEMA** on the table's parent schema, and **MANAGE** on the table.", + "summary": "Cancel a refresh.", + "path": "/api/data-quality/v1/monitors/{object_type}/{object_id}/refreshes/{refresh_id}/cancel", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CancelRefreshRequest", + "is_object": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "CancelRefreshResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "CreateMonitor", + "description": "Create a data quality monitor on a Unity Catalog object. The caller must provide either `anomaly_detection_config` for a schema monitor or `data_profiling_config` for a table monitor.\n\nFor the `table` `object_type`, the caller must have either of the following sets of permissions:\n1. **MANAGE** and **USE_CATALOG** on the table's parent catalog, **USE_SCHEMA** on the table's parent schema, and **SELECT** on the table\n2. **USE_CATALOG** on the table's parent catalog, **MANAGE** and **USE_SCHEMA** on the table's parent schema, and **SELECT** on the table.\n3. **USE_CATALOG** on the table's parent catalog, **USE_SCHEMA** on the table's parent schema, and **MANAGE** and **SELECT** on the table.\n\nWorkspace assets, such as the dashboard, will be created in the workspace where this call was made.\n\nFor the `schema` `object_type`, the caller must have either of the following sets of permissions:\n1. **MANAGE** and **USE_CATALOG** on the schema's parent catalog.\n2. **USE_CATALOG** on the schema's parent catalog, and **MANAGE** and **USE_SCHEMA** on the schema.", + "summary": "Create a monitor.", + "path": "/api/data-quality/v1/monitors", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateMonitorRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "monitor", + "description": "The monitor to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Monitor", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "monitor", + "description": "The monitor to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Monitor", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "monitor", + "description": "The monitor to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Monitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Monitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "monitor", + "description": "The monitor to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Monitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "anomaly_detection_config", + "description": "Anomaly Detection Configuration, applicable to `schema` object types.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AnomalyDetectionConfig", + "is_object": true + } + }, + { + "name": "data_profiling_config", + "description": "Data Profiling Configuration, applicable to `table` object types. Exactly one `Analysis Configuration`\nmust be present.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DataProfilingConfig", + "is_object": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateRefresh", + "description": "Creates a refresh. Currently only supported for the `table` `object_type`.\nThe call must be made in the same workspace as where the monitor was created.\n\nThe caller must have either of the following sets of permissions:\n1. **MANAGE** and **USE_CATALOG** on the table's parent catalog.\n2. **USE_CATALOG** on the table's parent catalog, and **MANAGE** and **USE_SCHEMA** on the table's parent schema.\n3. **USE_CATALOG** on the table's parent catalog, **USE_SCHEMA** on the table's parent schema, and **MANAGE** on the table.", + "summary": "Create a refresh.", + "path": "/api/data-quality/v1/monitors/{object_type}/{object_id}/refreshes", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateRefreshRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh", + "description": "The refresh to create", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Refresh", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "refresh", + "description": "The refresh to create", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Refresh", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "refresh", + "description": "The refresh to create", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Refresh", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Refresh", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh", + "description": "The refresh to create", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Refresh", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "end_time_ms", + "description": "Time when the refresh ended (milliseconds since 1/1/1970 UTC).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "message", + "description": "An optional message to give insight into the current state of the refresh (e.g. FAILURE messages).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "start_time_ms", + "description": "Time when the refresh started (milliseconds since 1/1/1970 UTC).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "state", + "description": "The current state of the refresh.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RefreshState", + "enum": [ + { + "content": "MONITOR_REFRESH_STATE_CANCELED" + }, + { + "content": "MONITOR_REFRESH_STATE_FAILED" + }, + { + "content": "MONITOR_REFRESH_STATE_PENDING" + }, + { + "content": "MONITOR_REFRESH_STATE_RUNNING" + }, + { + "content": "MONITOR_REFRESH_STATE_SUCCESS" + }, + { + "content": "MONITOR_REFRESH_STATE_UNKNOWN" + } + ] + } + }, + { + "name": "trigger", + "description": "What triggered the refresh.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RefreshTrigger", + "enum": [ + { + "content": "MONITOR_REFRESH_TRIGGER_DATA_CHANGE" + }, + { + "content": "MONITOR_REFRESH_TRIGGER_MANUAL" + }, + { + "content": "MONITOR_REFRESH_TRIGGER_SCHEDULE" + }, + { + "content": "MONITOR_REFRESH_TRIGGER_UNKNOWN" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteMonitor", + "description": "Delete a data quality monitor on Unity Catalog object.\n\nFor the `table` `object_type`, the caller must have either of the following sets of permissions:\n**MANAGE** and **USE_CATALOG** on the table's parent catalog.\n**USE_CATALOG** on the table's parent catalog, and **MANAGE** and **USE_SCHEMA** on the table's parent schema.\n**USE_CATALOG** on the table's parent catalog, **USE_SCHEMA** on the table's parent schema, and **MANAGE** on the table.\n\nNote that the metric tables and dashboard will not be deleted as part of this call; those\nassets must be manually cleaned up (if desired).\n\nFor the `schema` `object_type`, the caller must have either of the following sets of permissions:\n1. **MANAGE** and **USE_CATALOG** on the schema's parent catalog.\n2. **USE_CATALOG** on the schema's parent catalog, and **MANAGE** and **USE_SCHEMA** on the schema.", + "summary": "Delete a monitor.", + "path": "/api/data-quality/v1/monitors/{object_type}/{object_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteMonitorRequest", + "is_object": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteRefresh", + "description": "(Unimplemented) Delete a refresh", + "summary": "Delete a refresh.", + "path": "/api/data-quality/v1/monitors/{object_type}/{object_id}/refreshes/{refresh_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteRefreshRequest", + "is_object": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "GetMonitor", + "description": "Read a data quality monitor on a Unity Catalog object.\n\nFor the `table` `object_type`, the caller must have either of the following sets of permissions:\n1. **MANAGE** and **USE_CATALOG** on the table's parent catalog.\n2. **USE_CATALOG** on the table's parent catalog, and **MANAGE** and **USE_SCHEMA** on the table's parent schema.\n3. **USE_CATALOG** on the table's parent catalog, **USE_SCHEMA** on the table's parent schema, and **SELECT** on the table.\n\nFor the `schema` `object_type`, the caller must have either of the following sets of permissions:\n1. **MANAGE** and **USE_CATALOG** on the schema's parent catalog.\n2. **USE_CATALOG** on the schema's parent catalog, and **USE_SCHEMA** on the schema.\n\nThe returned information includes configuration values on the entity and parent entity as well as information on\nassets created by the monitor. Some information (e.g. dashboard) may be filtered out\nif the caller is in a different workspace than where the monitor was created.", + "summary": "Read a monitor.", + "path": "/api/data-quality/v1/monitors/{object_type}/{object_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetMonitorRequest", + "is_object": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Monitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetRefresh", + "description": "Get data quality monitor refresh. The call must be made in the same workspace as where the monitor was created.\n\nFor the `table` `object_type`, the caller must have either of the following sets of permissions:\n1. **MANAGE** and **USE_CATALOG** on the table's parent catalog.\n2. **USE_CATALOG** on the table's parent catalog, and **MANAGE** and **USE_SCHEMA** on the table's parent schema.\n3. **USE_CATALOG** on the table's parent catalog, **USE_SCHEMA** on the table's parent schema, and **SELECT** on the table.\n\nFor the `schema` `object_type`, the caller must have either of the following sets of permissions:\n1. **MANAGE** and **USE_CATALOG** on the schema's parent catalog.\n2. **USE_CATALOG** on the schema's parent catalog, and **USE_SCHEMA** on the schema.", + "summary": "Get a refresh.", + "path": "/api/data-quality/v1/monitors/{object_type}/{object_id}/refreshes/{refresh_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetRefreshRequest", + "is_object": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "Refresh", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "ListMonitor", + "description": "(Unimplemented) List data quality monitors.", + "summary": "List monitors.", + "path": "/api/data-quality/v1/monitors", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListMonitorRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListMonitorResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListRefresh", + "description": "List data quality monitor refreshes. The call must be made in the same workspace as where the monitor was created.\n\nFor the `table` `object_type`, the caller must have either of the following sets of permissions:\n1. **MANAGE** and **USE_CATALOG** on the table's parent catalog.\n2. **USE_CATALOG** on the table's parent catalog, and **MANAGE** and **USE_SCHEMA** on the table's parent schema.\n3. **USE_CATALOG** on the table's parent catalog, **USE_SCHEMA** on the table's parent schema, and **SELECT** on the table.\n\nFor the `schema` `object_type`, the caller must have either of the following sets of permissions:\n1. **MANAGE** and **USE_CATALOG** on the schema's parent catalog.\n2. **USE_CATALOG** on the schema's parent catalog, and **USE_SCHEMA** on the schema.", + "summary": "List refreshes.", + "path": "/api/data-quality/v1/monitors/{object_type}/{object_id}/refreshes", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListRefreshRequest", + "is_object": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListRefreshResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateMonitor", + "description": "Update a data quality monitor on Unity Catalog object.\n\nFor the `table` `object_type`, the caller must have either of the following sets of permissions:\n1. **MANAGE** and **USE_CATALOG** on the table's parent catalog.\n2. **USE_CATALOG** on the table's parent catalog, and **MANAGE** and **USE_SCHEMA** on the table's parent schema.\n3. **USE_CATALOG** on the table's parent catalog, **USE_SCHEMA** on the table's parent schema, and **MANAGE** on the table.\n\nFor the `schema` `object_type`, the caller must have either of the following sets of permissions:\n1. **MANAGE** and **USE_CATALOG** on the schema's parent catalog.\n2. **USE_CATALOG** on the schema's parent catalog, and **MANAGE** and **USE_SCHEMA** on the schema.", + "summary": "Update a monitor.", + "path": "/api/data-quality/v1/monitors/{object_type}/{object_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateMonitorRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "monitor", + "description": "The monitor to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Monitor", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The field mask to specify which fields to update as a comma-separated list.\nExample value: `data_profiling_config.custom_metrics,data_profiling_config.schedule.quartz_cron_expression`", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask to specify which fields to update as a comma-separated list.\nExample value: `data_profiling_config.custom_metrics,data_profiling_config.schedule.quartz_cron_expression`", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "monitor", + "description": "The monitor to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Monitor", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "monitor", + "description": "The monitor to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Monitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Monitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "monitor", + "description": "The monitor to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Monitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask to specify which fields to update as a comma-separated list.\nExample value: `data_profiling_config.custom_metrics,data_profiling_config.schedule.quartz_cron_expression`", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "anomaly_detection_config", + "description": "Anomaly Detection Configuration, applicable to `schema` object types.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AnomalyDetectionConfig", + "is_object": true + } + }, + { + "name": "data_profiling_config", + "description": "Data Profiling Configuration, applicable to `table` object types. Exactly one `Analysis Configuration`\nmust be present.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DataProfilingConfig", + "is_object": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask to specify which fields to update as a comma-separated list.\nExample value: `data_profiling_config.custom_metrics,data_profiling_config.schedule.quartz_cron_expression`", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateRefresh", + "description": "(Unimplemented) Update a refresh", + "summary": "Update a refresh.", + "path": "/api/data-quality/v1/monitors/{object_type}/{object_id}/refreshes/{refresh_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateRefreshRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "refresh", + "description": "The refresh to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Refresh", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The field mask to specify which fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "The field mask to specify which fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "refresh", + "description": "The refresh to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Refresh", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "refresh", + "description": "The refresh to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Refresh", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Refresh", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh", + "description": "The refresh to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Refresh", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "The field mask to specify which fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "end_time_ms", + "description": "Time when the refresh ended (milliseconds since 1/1/1970 UTC).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "message", + "description": "An optional message to give insight into the current state of the refresh (e.g. FAILURE messages).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "start_time_ms", + "description": "Time when the refresh started (milliseconds since 1/1/1970 UTC).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "state", + "description": "The current state of the refresh.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RefreshState", + "enum": [ + { + "content": "MONITOR_REFRESH_STATE_CANCELED" + }, + { + "content": "MONITOR_REFRESH_STATE_FAILED" + }, + { + "content": "MONITOR_REFRESH_STATE_PENDING" + }, + { + "content": "MONITOR_REFRESH_STATE_RUNNING" + }, + { + "content": "MONITOR_REFRESH_STATE_SUCCESS" + }, + { + "content": "MONITOR_REFRESH_STATE_UNKNOWN" + } + ] + } + }, + { + "name": "trigger", + "description": "What triggered the refresh.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RefreshTrigger", + "enum": [ + { + "content": "MONITOR_REFRESH_TRIGGER_DATA_CHANGE" + }, + { + "content": "MONITOR_REFRESH_TRIGGER_MANUAL" + }, + { + "content": "MONITOR_REFRESH_TRIGGER_SCHEDULE" + }, + { + "content": "MONITOR_REFRESH_TRIGGER_UNKNOWN" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "The field mask to specify which fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: `schema` or `table`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The UUID of the request object. It is `schema_id` for `schema`, and `table_id` for `table`.\n\nFind the `schema_id` from either:\n1. The [schema_id](https://docs.databricks.com/api/workspace/schemas/get#schema_id) of the `Schemas` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `schema` \u003e go to the `Details` tab \u003e the `Schema ID` field.\n\nFind the `table_id` from either:\n1. The [table_id](https://docs.databricks.com/api/workspace/tables/get#table_id) of the `Tables` resource.\n2. In [Catalog Explorer](https://docs.databricks.com/aws/en/catalog-explorer/) \u003e select the `table` \u003e go to the `Details` tab \u003e the `Table ID` field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "sql.DataSources", + "name": "DataSources", + "description": "This API is provided to assist you in making new query objects. When creating a query object,\nyou may optionally specify a `data_source_id` for the SQL warehouse against which it will run.\nIf you don't already know the `data_source_id` for your desired SQL warehouse, this API will\nhelp you find it.\n\nThis API does not support searches. It returns the full list of SQL warehouses in your\nworkspace. We advise you to use any text editor, REST client, or `grep` to search the\nresponse from this API for the name of your SQL warehouse as it appears in Databricks SQL.\n\n**Warning**: This API is deprecated. Please see the latest version of the Databricks SQL API. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "package": { + "name": "sql" + }, + "docs_group": "sql", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "List", + "description": "Retrieves a full list of SQL warehouses available in this workspace.\nAll fields that appear in this API response are enumerated for clarity.\nHowever, you need only a SQL warehouse's `id` to create new queries against it.\n\n**Warning**: This API is deprecated. Please use :method:warehouses/list instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Get a list of SQL warehouses.", + "path": "/api/2.0/preview/sql/data_sources", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListRequest", + "is_object": true + }, + "response": { + "pascal_name": "DataSourceList", + "array_value": { + "pascal_name": "DataSource", + "is_object": true + } + } + } + ] + }, + { + "id": "database.Database", + "name": "Database", + "description": "Database Instances provide access to a database via REST API or direct SQL.", + "package": { + "name": "database" + }, + "docs_group": "database", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "request": { + "pascal_name": "ListDatabaseCatalogsRequest" + } + }, + "methods": [ + { + "name": "CreateDatabaseCatalog", + "description": "Create a Database Catalog.", + "summary": "Create a Database Catalog.", + "path": "/api/2.0/database/catalogs", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateDatabaseCatalogRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "catalog", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseCatalog", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "catalog", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseCatalog", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "catalog", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseCatalog", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "DatabaseCatalog", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "catalog", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseCatalog", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "create_database_if_not_exists", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "uid", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateDatabaseInstance", + "description": "Create a Database Instance.", + "summary": "Create a Database Instance.", + "path": "/api/2.0/database/instances", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateDatabaseInstanceRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "database_instance", + "description": "Instance to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstance", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "database_instance", + "description": "Instance to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstance", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "database_instance", + "description": "Instance to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstance", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "DatabaseInstance", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "database_instance", + "description": "Instance to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstance", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "capacity", + "description": "The sku of the instance. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "child_instance_refs", + "description": "The refs of the child instances. This is only available if the instance is\nparent instance.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstanceRefList", + "array_value": { + "pascal_name": "DatabaseInstanceRef", + "is_object": true + } + } + }, + { + "name": "creation_time", + "description": "The timestamp when the instance was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "creator", + "description": "The email of the creator of the instance.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_tags", + "description": "Custom tags associated with the instance. This field is only included on create and update responses.", + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTagList", + "array_value": { + "pascal_name": "CustomTag", + "is_object": true + } + } + }, + { + "name": "effective_capacity", + "description": "Deprecated. The sku of the instance; this field will always match the value of capacity.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_custom_tags", + "description": "The recorded custom tags associated with the instance.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTagList", + "array_value": { + "pascal_name": "CustomTag", + "is_object": true + } + } + }, + { + "name": "effective_enable_pg_native_login", + "description": "Whether the instance has PG native password login enabled.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "effective_enable_readable_secondaries", + "description": "Whether secondaries serving read-only traffic are enabled. Defaults to false.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "effective_node_count", + "description": "The number of nodes in the instance, composed of 1 primary and 0 or more secondaries. Defaults to\n1 primary and 0 secondaries.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "effective_retention_window_in_days", + "description": "The retention window for the instance. This is the time window in days\nfor which the historical data is retained.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "effective_stopped", + "description": "Whether the instance is stopped.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "effective_usage_policy_id", + "description": "The policy that is applied to the instance.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "enable_pg_native_login", + "description": "Whether to enable PG native password login on the instance. Defaults to false.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "enable_readable_secondaries", + "description": "Whether to enable secondaries to serve read-only traffic. Defaults to false.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "node_count", + "description": "The number of nodes in the instance, composed of 1 primary and 0 or more secondaries. Defaults to\n1 primary and 0 secondaries. This field is input only, see effective_node_count for the output.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "parent_instance_ref", + "description": "The ref of the parent instance. This is only available if the instance is\nchild instance.\nInput: For specifying the parent instance to create a child instance. Optional.\nOutput: Only populated if provided as input to create a child instance.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DatabaseInstanceRef", + "is_object": true + } + }, + { + "name": "pg_version", + "description": "The version of Postgres running on the instance.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "read_only_dns", + "description": "The DNS endpoint to connect to the instance for read only access. This is only available if\nenable_readable_secondaries is true.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "read_write_dns", + "description": "The DNS endpoint to connect to the instance for read+write access.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "retention_window_in_days", + "description": "The retention window for the instance. This is the time window in days\nfor which the historical data is retained. The default value is 7 days.\nValid values are 2 to 35 days.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "state", + "description": "The current state of the instance.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstanceState", + "enum": [ + { + "content": "AVAILABLE" + }, + { + "content": "DELETING" + }, + { + "content": "FAILING_OVER" + }, + { + "content": "STARTING" + }, + { + "content": "STOPPED" + }, + { + "content": "UPDATING" + } + ] + } + }, + { + "name": "stopped", + "description": "Whether to stop the instance. An input only param, see effective_stopped for the output.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "uid", + "description": "An immutable UUID identifier for the instance.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "usage_policy_id", + "description": "The desired usage policy to associate with the instance.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "AVAILABLE" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "DatabaseInstance" + } + }, + "status_path": [ + { + "pascal_name": "State" + } + ] + } + }, + { + "name": "CreateDatabaseInstanceRole", + "description": "Create a role for a Database Instance.", + "summary": "Create a role for a Database Instance.", + "path": "/api/2.0/database/instances/{instance_name}/roles", + "can_use_json": true, + "is_crud_create": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateDatabaseInstanceRoleRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_role", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstanceRole", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "database_instance_role", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstanceRole", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "database_instance_role", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstanceRole", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the role. This is the unique identifier for the role in an instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the role. This is the unique identifier for the role in an instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "DatabaseInstanceRole", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the role. This is the unique identifier for the role in an instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the role. This is the unique identifier for the role in an instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "database_instance_name", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_role", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstanceRole", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the role. This is the unique identifier for the role in an instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the role. This is the unique identifier for the role in an instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attributes", + "description": "The desired API-exposed Postgres role attribute to associate with the role. Optional.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DatabaseInstanceRoleAttributes", + "is_object": true + } + }, + { + "name": "effective_attributes", + "description": "The attributes that are applied to the role.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DatabaseInstanceRoleAttributes", + "is_object": true + } + }, + { + "name": "identity_type", + "description": "The type of the role.", + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstanceRoleIdentityType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "PG_ONLY" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + }, + { + "name": "instance_name", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "membership_role", + "description": "An enum value for a standard role that this role is a member of.", + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstanceRoleMembershipRole", + "enum": [ + { + "content": "DATABRICKS_SUPERUSER" + } + ] + } + }, + { + "name": "name", + "description": "The name of the role. This is the unique identifier for the role in an instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the role. This is the unique identifier for the role in an instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateDatabaseTable", + "description": "Create a Database Table. Useful for registering pre-existing PG tables in UC.\nSee CreateSyncedDatabaseTable for creating synced tables in PG from a source table in UC.", + "summary": "Create a Database Table.", + "path": "/api/2.0/database/tables", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateDatabaseTableRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "table", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseTable", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "table", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseTable", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "table", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseTable", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "DatabaseTable", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "table", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseTable", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "database_instance_name", + "description": "Name of the target database instance. This is required when creating database tables in standard catalogs.\nThis is optional when creating database tables in registered catalogs. If this field is specified\nwhen creating database tables in registered catalogs, the database instance name MUST\nmatch that of the registered catalog (or the request will be rejected).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "logical_database_name", + "description": "Target Postgres database object (logical database) name for this table.\n\nWhen creating a table in a standard catalog, this field is required.\nIn this scenario, specifying this field will allow targeting an arbitrary postgres database.\n\nRegistration of database tables via /database/tables is currently only supported in standard catalogs.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateSyncedDatabaseTable", + "description": "Create a Synced Database Table.", + "summary": "Create a Synced Database Table.", + "path": "/api/2.0/database/synced_tables", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateSyncedDatabaseTableRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "synced_table", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SyncedDatabaseTable", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "synced_table", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SyncedDatabaseTable", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "synced_table", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SyncedDatabaseTable", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "SyncedDatabaseTable", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "synced_table", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SyncedDatabaseTable", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "data_synchronization_status", + "description": "Synced Table data synchronization status", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SyncedTableStatus", + "is_object": true + } + }, + { + "name": "database_instance_name", + "description": "Name of the target database instance. This is required when creating synced database tables in standard catalogs.\nThis is optional when creating synced database tables in registered catalogs. If this field is specified\nwhen creating synced database tables in registered catalogs, the database instance name MUST\nmatch that of the registered catalog (or the request will be rejected).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_database_instance_name", + "description": "The name of the database instance that this table is registered to. This field is always returned, and for\ntables inside database catalogs is inferred database instance associated with the catalog.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_logical_database_name", + "description": "The name of the logical database that this table is registered to.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "logical_database_name", + "description": "Target Postgres database object (logical database) name for this table.\n\nWhen creating a synced table in a registered Postgres catalog, the\ntarget Postgres database name is inferred to be that of the registered catalog.\nIf this field is specified in this scenario, the Postgres database name MUST\nmatch that of the registered catalog (or the request will be rejected).\n\nWhen creating a synced table in a standard catalog, this field is required.\nIn this scenario, specifying this field will allow targeting an arbitrary postgres database.\nNote that this has implications for the `create_database_objects_is_missing` field in `spec`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SyncedTableSpec", + "is_object": true + } + }, + { + "name": "unity_catalog_provisioning_state", + "description": "The provisioning state of the synced table entity in Unity Catalog. This is distinct from the\nstate of the data synchronization pipeline (i.e. the table may be in \"ACTIVE\" but the pipeline\nmay be in \"PROVISIONING\" as it runs asynchronously).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ProvisioningInfoState", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "DEGRADED" + }, + { + "content": "DELETING" + }, + { + "content": "FAILED" + }, + { + "content": "PROVISIONING" + }, + { + "content": "UPDATING" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteDatabaseCatalog", + "description": "Delete a Database Catalog.", + "summary": "Delete a Database Catalog.", + "path": "/api/2.0/database/catalogs/{name}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteDatabaseCatalogRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteDatabaseInstance", + "description": "Delete a Database Instance.", + "summary": "Delete a Database Instance.", + "path": "/api/2.0/database/instances/{name}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteDatabaseInstanceRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the instance to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the instance to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "force", + "description": "By default, an instance cannot be deleted if it has descendant instances created via PITR. If\nthis flag is specified as true, all descendent instances will be deleted as well.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "Name of the instance to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "purge", + "description": "Deprecated. Omitting the field or setting it to true will result in the field being hard deleted. Setting a value\nof false will throw a bad request.", + "is_query": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the instance to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteDatabaseInstanceRole", + "description": "Deletes a role for a Database Instance.", + "summary": "Delete a role for a Database Instance.", + "path": "/api/2.0/database/instances/{instance_name}/roles/{name}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteDatabaseInstanceRoleRequest", + "is_object": true, + "required_fields": [ + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This is the AIP standard name for the equivalent of Postgres' `IF EXISTS` option", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "reassign_owned_to", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteDatabaseTable", + "description": "Delete a Database Table.", + "summary": "Delete a Database Table.", + "path": "/api/2.0/database/tables/{name}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteDatabaseTableRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteSyncedDatabaseTable", + "description": "Delete a Synced Database Table.", + "summary": "Delete a Synced Database Table.", + "path": "/api/2.0/database/synced_tables/{name}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteSyncedDatabaseTableRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "purge_data", + "description": "Optional. When set to true, the actual PostgreSQL table will be dropped from the database.", + "is_query": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "FindDatabaseInstanceByUid", + "description": "Find a Database Instance by uid.", + "summary": "Find a Database Instance by uid.", + "path": "/api/2.0/database/instances:findByUid", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "FindDatabaseInstanceByUidRequest", + "is_object": true + }, + "response": { + "pascal_name": "DatabaseInstance", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "uid", + "description": "UID of the cluster to get.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GenerateDatabaseCredential", + "description": "Generates a credential that can be used to access database instances.", + "summary": "Generates a credential that can be used to access database instances.", + "path": "/api/2.0/database/credentials", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GenerateDatabaseCredentialRequest", + "is_object": true + }, + "response": { + "pascal_name": "DatabaseCredential", + "is_object": true + }, + "all_fields": [ + { + "name": "claims", + "description": "A set of UC permissions to add to the credential. We verify that the caller has the necessary\npermissions in UC and include a reference in the token. Postgres uses that token to give the\nconnecting user additional grants to the Postgres resources that correspond to the UC resources.\nThe UC resources need to be something that have a Postgres counterpart. For example, a synced table or\na table in a UC database catalog.", + "is_request_body_field": true, + "entity": { + "pascal_name": "RequestedClaimsList", + "array_value": { + "pascal_name": "RequestedClaims", + "is_object": true + } + } + }, + { + "name": "instance_names", + "description": "Instances to request a credential for. At least one of instance_names or claims must be specified.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "request_id", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetDatabaseCatalog", + "description": "Get a Database Catalog.", + "summary": "Get a Database Catalog.", + "path": "/api/2.0/database/catalogs/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetDatabaseCatalogRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DatabaseCatalog", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetDatabaseInstance", + "description": "Get a Database Instance.", + "summary": "Get a Database Instance.", + "path": "/api/2.0/database/instances/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetDatabaseInstanceRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the cluster to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the cluster to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DatabaseInstance", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the cluster to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the cluster to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetDatabaseInstanceRole", + "description": "Gets a role for a Database Instance.", + "summary": "Get a role for a Database Instance.", + "path": "/api/2.0/database/instances/{instance_name}/roles/{name}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetDatabaseInstanceRoleRequest", + "is_object": true, + "required_fields": [ + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DatabaseInstanceRole", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the role. This is the unique identifier for the role in an instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the role. This is the unique identifier for the role in an instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetDatabaseTable", + "description": "Get a Database Table.", + "summary": "Get a Database Table.", + "path": "/api/2.0/database/tables/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetDatabaseTableRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DatabaseTable", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSyncedDatabaseTable", + "description": "Get a Synced Database Table.", + "summary": "Get a Synced Database Table.", + "path": "/api/2.0/database/synced_tables/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetSyncedDatabaseTableRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SyncedDatabaseTable", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListDatabaseCatalogs", + "description": "This API is currently unimplemented, but exposed for Terraform support.", + "summary": "List all Database Catalogs in a Database Instance.", + "path": "/api/2.0/database/instances/{instance_name}/catalogs", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListDatabaseCatalogsRequest", + "is_object": true, + "required_fields": [ + { + "name": "instance_name", + "description": "Name of the instance to get database catalogs for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "instance_name", + "description": "Name of the instance to get database catalogs for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListDatabaseCatalogsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "instance_name", + "description": "Name of the instance to get database catalogs for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Upper bound for items returned.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page of synced database tables. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_name", + "description": "Name of the instance to get database catalogs for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page of synced database tables. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListDatabaseInstanceRoles", + "description": "START OF PG ROLE APIs Section\nThese APIs are marked a PUBLIC with stage \u003c PUBLIC_PREVIEW. With more recent Lakebase V2 plans, we don't plan to\never advance these to PUBLIC_PREVIEW. These APIs will remain effectively undocumented/UI-only and we'll aim for a\nnew public roles API as part of V2 PuPr.", + "summary": "List roles for a Database Instance.", + "path": "/api/2.0/database/instances/{instance_name}/roles", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListDatabaseInstanceRolesRequest", + "is_object": true, + "required_fields": [ + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListDatabaseInstanceRolesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Upper bound for items returned.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page of Database Instances. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page of Database Instances. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListDatabaseInstances", + "description": "List Database Instances.", + "summary": "List Database Instances.", + "path": "/api/2.0/database/instances", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListDatabaseInstancesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListDatabaseInstancesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Upper bound for items returned. The maximum value is 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page of Database Instances. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page of Database Instances. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListSyncedDatabaseTables", + "description": "List synced database tables in a Database Instance.", + "summary": "List all synced database tables in a Database Instance.", + "path": "/api/2.0/database/instances/{instance_name}/synced_tables", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListSyncedDatabaseTablesRequest", + "is_object": true, + "required_fields": [ + { + "name": "instance_name", + "description": "Name of the instance to get synced tables for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "instance_name", + "description": "Name of the instance to get synced tables for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListSyncedDatabaseTablesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "instance_name", + "description": "Name of the instance to get synced tables for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Upper bound for items returned.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page of synced database tables. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_name", + "description": "Name of the instance to get synced tables for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page of synced database tables. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateDatabaseCatalog", + "description": "This API is currently unimplemented, but exposed for Terraform support.", + "summary": "Update a Database Catalog.", + "path": "/api/2.0/database/catalogs/{name}", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateDatabaseCatalogRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_catalog", + "description": "Note that updating a database catalog is not yet supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseCatalog", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update. Setting this field is not yet supported.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update. Setting this field is not yet supported.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "database_catalog", + "description": "Note that updating a database catalog is not yet supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseCatalog", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "database_catalog", + "description": "Note that updating a database catalog is not yet supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseCatalog", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "DatabaseCatalog", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "database_catalog", + "description": "Note that updating a database catalog is not yet supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseCatalog", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update. Setting this field is not yet supported.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_database_if_not_exists", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "uid", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the catalog in UC.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update. Setting this field is not yet supported.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance_name", + "description": "The name of the DatabaseInstance housing the database.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_name", + "description": "The name of the database (in an instance) associated with the catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateDatabaseInstance", + "description": "Update a Database Instance.", + "summary": "Update a Database Instance.", + "path": "/api/2.0/database/instances/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateDatabaseInstanceRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "database_instance", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstance", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update. If unspecified, all fields will be updated when possible. To wipe out custom_tags,\nspecify custom_tags in the update_mask with an empty custom_tags map.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update. If unspecified, all fields will be updated when possible. To wipe out custom_tags,\nspecify custom_tags in the update_mask with an empty custom_tags map.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "database_instance", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstance", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "database_instance", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstance", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "DatabaseInstance", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "database_instance", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstance", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update. If unspecified, all fields will be updated when possible. To wipe out custom_tags,\nspecify custom_tags in the update_mask with an empty custom_tags map.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The sku of the instance. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "child_instance_refs", + "description": "The refs of the child instances. This is only available if the instance is\nparent instance.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstanceRefList", + "array_value": { + "pascal_name": "DatabaseInstanceRef", + "is_object": true + } + } + }, + { + "name": "creation_time", + "description": "The timestamp when the instance was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "creator", + "description": "The email of the creator of the instance.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_tags", + "description": "Custom tags associated with the instance. This field is only included on create and update responses.", + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTagList", + "array_value": { + "pascal_name": "CustomTag", + "is_object": true + } + } + }, + { + "name": "effective_capacity", + "description": "Deprecated. The sku of the instance; this field will always match the value of capacity.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_custom_tags", + "description": "The recorded custom tags associated with the instance.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTagList", + "array_value": { + "pascal_name": "CustomTag", + "is_object": true + } + } + }, + { + "name": "effective_enable_pg_native_login", + "description": "Whether the instance has PG native password login enabled.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "effective_enable_readable_secondaries", + "description": "Whether secondaries serving read-only traffic are enabled. Defaults to false.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "effective_node_count", + "description": "The number of nodes in the instance, composed of 1 primary and 0 or more secondaries. Defaults to\n1 primary and 0 secondaries.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "effective_retention_window_in_days", + "description": "The retention window for the instance. This is the time window in days\nfor which the historical data is retained.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "effective_stopped", + "description": "Whether the instance is stopped.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "effective_usage_policy_id", + "description": "The policy that is applied to the instance.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "enable_pg_native_login", + "description": "Whether to enable PG native password login on the instance. Defaults to false.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "enable_readable_secondaries", + "description": "Whether to enable secondaries to serve read-only traffic. Defaults to false.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "node_count", + "description": "The number of nodes in the instance, composed of 1 primary and 0 or more secondaries. Defaults to\n1 primary and 0 secondaries. This field is input only, see effective_node_count for the output.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "parent_instance_ref", + "description": "The ref of the parent instance. This is only available if the instance is\nchild instance.\nInput: For specifying the parent instance to create a child instance. Optional.\nOutput: Only populated if provided as input to create a child instance.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DatabaseInstanceRef", + "is_object": true + } + }, + { + "name": "pg_version", + "description": "The version of Postgres running on the instance.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "read_only_dns", + "description": "The DNS endpoint to connect to the instance for read only access. This is only available if\nenable_readable_secondaries is true.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "read_write_dns", + "description": "The DNS endpoint to connect to the instance for read+write access.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "retention_window_in_days", + "description": "The retention window for the instance. This is the time window in days\nfor which the historical data is retained. The default value is 7 days.\nValid values are 2 to 35 days.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "state", + "description": "The current state of the instance.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DatabaseInstanceState", + "enum": [ + { + "content": "AVAILABLE" + }, + { + "content": "DELETING" + }, + { + "content": "FAILING_OVER" + }, + { + "content": "STARTING" + }, + { + "content": "STOPPED" + }, + { + "content": "UPDATING" + } + ] + } + }, + { + "name": "stopped", + "description": "Whether to stop the instance. An input only param, see effective_stopped for the output.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "uid", + "description": "An immutable UUID identifier for the instance.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "usage_policy_id", + "description": "The desired usage policy to associate with the instance.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the instance. This is the unique identifier for the instance.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update. If unspecified, all fields will be updated when possible. To wipe out custom_tags,\nspecify custom_tags in the update_mask with an empty custom_tags map.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateSyncedDatabaseTable", + "description": "This API is currently unimplemented, but exposed for Terraform support.", + "summary": "Update a Synced Database Table.", + "path": "/api/2.0/database/synced_tables/{name}", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateSyncedDatabaseTableRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "synced_table", + "description": "Note that updating a synced database table is not yet supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SyncedDatabaseTable", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update. Setting this field is not yet supported.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update. Setting this field is not yet supported.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "synced_table", + "description": "Note that updating a synced database table is not yet supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SyncedDatabaseTable", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "synced_table", + "description": "Note that updating a synced database table is not yet supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SyncedDatabaseTable", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "SyncedDatabaseTable", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "synced_table", + "description": "Note that updating a synced database table is not yet supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SyncedDatabaseTable", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "update_mask", + "description": "The list of fields to update. Setting this field is not yet supported.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "data_synchronization_status", + "description": "Synced Table data synchronization status", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SyncedTableStatus", + "is_object": true + } + }, + { + "name": "database_instance_name", + "description": "Name of the target database instance. This is required when creating synced database tables in standard catalogs.\nThis is optional when creating synced database tables in registered catalogs. If this field is specified\nwhen creating synced database tables in registered catalogs, the database instance name MUST\nmatch that of the registered catalog (or the request will be rejected).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_database_instance_name", + "description": "The name of the database instance that this table is registered to. This field is always returned, and for\ntables inside database catalogs is inferred database instance associated with the catalog.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_logical_database_name", + "description": "The name of the logical database that this table is registered to.\nThis is an output only field that contains the value computed from the input field combined with\nserver side defaults. Use the field without the effective_ prefix to set the value.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "logical_database_name", + "description": "Target Postgres database object (logical database) name for this table.\n\nWhen creating a synced table in a registered Postgres catalog, the\ntarget Postgres database name is inferred to be that of the registered catalog.\nIf this field is specified in this scenario, the Postgres database name MUST\nmatch that of the registered catalog (or the request will be rejected).\n\nWhen creating a synced table in a standard catalog, this field is required.\nIn this scenario, specifying this field will allow targeting an arbitrary postgres database.\nNote that this has implications for the `create_database_objects_is_missing` field in `spec`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SyncedTableSpec", + "is_object": true + } + }, + { + "name": "unity_catalog_provisioning_state", + "description": "The provisioning state of the synced table entity in Unity Catalog. This is distinct from the\nstate of the data synchronization pipeline (i.e. the table may be in \"ACTIVE\" but the pipeline\nmay be in \"PROVISIONING\" as it runs asynchronously).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ProvisioningInfoState", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "DEGRADED" + }, + { + "content": "DELETING" + }, + { + "content": "FAILED" + }, + { + "content": "PROVISIONING" + }, + { + "content": "UPDATING" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update. Setting this field is not yet supported.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "files.Dbfs", + "name": "Dbfs", + "description": "DBFS API makes it simple to interact with various data sources without having to include\na users credentials every time to read a file.", + "package": { + "name": "files" + }, + "docs_group": "files", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListDbfsRequest" + } + }, + "methods": [ + { + "name": "AddBlock", + "description": "Appends a block of data to the stream specified by the input handle. If the handle does not\nexist, this call will throw an exception with ``RESOURCE_DOES_NOT_EXIST``.\n\nIf the block of data exceeds 1 MB, this call will throw an exception with ``MAX_BLOCK_SIZE_EXCEEDED``.", + "summary": "Append data block.", + "path": "/api/2.0/dbfs/add-block", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "AddBlock", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "handle", + "description": "The handle on an open stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "data", + "description": "The base64-encoded data to append to the stream. This has a limit of 1 MB.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "handle", + "description": "The handle on an open stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "data", + "description": "The base64-encoded data to append to the stream. This has a limit of 1 MB.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AddBlockResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "data", + "description": "The base64-encoded data to append to the stream. This has a limit of 1 MB.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "handle", + "description": "The handle on an open stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "handle", + "description": "The handle on an open stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "data", + "description": "The base64-encoded data to append to the stream. This has a limit of 1 MB.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Close", + "description": "Closes the stream specified by the input handle. If the handle does not exist, this call\nthrows an exception with ``RESOURCE_DOES_NOT_EXIST``.", + "summary": "Close the stream.", + "path": "/api/2.0/dbfs/close", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "Close", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "handle", + "description": "The handle on an open stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "handle", + "description": "The handle on an open stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "CloseResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "handle", + "description": "The handle on an open stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "handle", + "description": "The handle on an open stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "Create", + "description": "Opens a stream to write to a file and returns a handle to this stream.\nThere is a 10 minute idle timeout on this handle. If a file or directory already exists on the given path\nand __overwrite__ is set to false, this call will throw an exception with ``RESOURCE_ALREADY_EXISTS``.\n\nA typical workflow for file upload would be:\n\n1. Issue a ``create`` call and get a handle.\n2. Issue one or more ``add-block`` calls with the handle you have.\n3. Issue a ``close`` call with the handle you have.", + "summary": "Open a stream.", + "path": "/api/2.0/dbfs/create", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "Create", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "path", + "description": "The path of the new file. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "path", + "description": "The path of the new file. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "overwrite", + "description": "The flag that specifies whether to overwrite existing file/files.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "path", + "description": "The path of the new file. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "path", + "description": "The path of the new file. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Delete the file or directory (optionally recursively delete all files in the directory).\nThis call throws an exception with `IO_ERROR` if the path is a non-empty directory and `recursive` is set to\n`false` or on other similar errors.\n\nWhen you delete a large number of files, the delete operation is done in increments. The call returns\na response after approximately 45 seconds with an error message (503 Service Unavailable) asking you to\nre-invoke the delete operation until the directory structure is fully deleted.\n\nFor operations that delete more than 10K files, we discourage using the DBFS REST API, but advise you to\nperform such operations in the context of a cluster, using\nthe [File system utility (dbutils.fs)](/dev-tools/databricks-utils.html#dbutils-fs). `dbutils.fs`\ncovers the functional scope of the DBFS REST API, but from notebooks. Running such operations using notebooks\nprovides better control and manageability, such as selective deletes, and the possibility to automate periodic\ndelete jobs.", + "summary": "Delete a file/directory.", + "path": "/api/2.0/dbfs/delete", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "Delete", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "path", + "description": "The path of the file or directory to delete. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "path", + "description": "The path of the file or directory to delete. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "path", + "description": "The path of the file or directory to delete. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "recursive", + "description": "Whether or not to recursively delete the directory's contents. Deleting empty directories can be done without providing the recursive flag.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "path", + "description": "The path of the file or directory to delete. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetStatus", + "description": "Gets the file information for a file or directory.\nIf the file or directory does not exist, this call throws an exception with `RESOURCE_DOES_NOT_EXIST`.", + "summary": "Get the information of a file or directory.", + "path": "/api/2.0/dbfs/get-status", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetStatusRequest", + "is_object": true, + "required_fields": [ + { + "name": "path", + "description": "The path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "path", + "description": "The path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "FileInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "path", + "description": "The path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "path", + "description": "The path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List the contents of a directory, or details of the file. If the file or directory does not exist, this call\nthrows an exception with `RESOURCE_DOES_NOT_EXIST`.\n\nWhen calling list on a large directory, the list operation will time out after approximately 60 seconds.\nWe strongly recommend using list only on directories containing less than 10K files and discourage using\nthe DBFS REST API for operations that list more than 10K files. Instead, we recommend that you perform such\noperations in the context of a cluster, using\nthe [File system utility (dbutils.fs)](/dev-tools/databricks-utils.html#dbutils-fs), which provides the same\nfunctionality without timing out.", + "summary": "List directory contents or file details.", + "path": "/api/2.0/dbfs/list", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListDbfsRequest", + "is_object": true, + "required_fields": [ + { + "name": "path", + "description": "The path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "path", + "description": "The path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListStatusResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "path", + "description": "The path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "path", + "description": "The path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": {} + }, + { + "name": "Mkdirs", + "description": "Creates the given directory and necessary parent directories if they do not exist.\nIf a file (not a directory) exists at any prefix of the input path, this call throws an exception with `RESOURCE_ALREADY_EXISTS`.\n**Note**: If this operation fails, it might have succeeded in creating some of the necessary parent directories.", + "summary": "Create a directory.", + "path": "/api/2.0/dbfs/mkdirs", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "MkDirs", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "path", + "description": "The path of the new directory. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "path", + "description": "The path of the new directory. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "MkDirsResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "path", + "description": "The path of the new directory. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "path", + "description": "The path of the new directory. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Move", + "description": "Moves a file from one location to another location within DBFS.\nIf the source file does not exist, this call throws an exception with `RESOURCE_DOES_NOT_EXIST`.\nIf a file already exists in the destination path, this call throws an exception with `RESOURCE_ALREADY_EXISTS`.\nIf the given source path is a directory, this call always recursively moves all files.", + "summary": "Move a file.", + "path": "/api/2.0/dbfs/move", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "Move", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "source_path", + "description": "The source path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "destination_path", + "description": "The destination path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "source_path", + "description": "The source path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "destination_path", + "description": "The destination path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "MoveResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "destination_path", + "description": "The destination path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_path", + "description": "The source path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "source_path", + "description": "The source path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "destination_path", + "description": "The destination path of the file or directory. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Put", + "description": "Uploads a file through the use of multipart form post.\nIt is mainly used for streaming uploads, but can also be used as a convenient single call for data upload.\n\nAlternatively you can pass contents as base64 string.\n\nThe amount of data that can be passed (when not streaming) using the __contents__ parameter is limited to 1 MB.\n`MAX_BLOCK_SIZE_EXCEEDED` will be thrown if this limit is exceeded.\n\nIf you want to upload large files, use the streaming upload. For details, see :method:dbfs/create,\n:method:dbfs/addBlock, :method:dbfs/close.", + "summary": "Upload a file.", + "path": "/api/2.0/dbfs/put", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "Put", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "path", + "description": "The path of the new file. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "path", + "description": "The path of the new file. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PutResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "contents", + "description": "This parameter might be absent, and instead a posted file will be used.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "overwrite", + "description": "The flag that specifies whether to overwrite existing file/files.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "path", + "description": "The path of the new file. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "path", + "description": "The path of the new file. The path should be the absolute DBFS path.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Read", + "description": "Returns the contents of a file. If the file does not exist, this call throws an exception with `RESOURCE_DOES_NOT_EXIST`.\nIf the path is a directory, the read length is negative, or if the offset is negative, this call throws an exception with\n`INVALID_PARAMETER_VALUE`. If the read length exceeds 1 MB, this call throws an\nexception with `MAX_READ_SIZE_EXCEEDED`.\n\nIf `offset + length` exceeds the number of bytes in a file, it reads the contents until the end of file.", + "summary": "Get the contents of a file.", + "path": "/api/2.0/dbfs/read", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ReadDbfsRequest", + "is_object": true, + "required_fields": [ + { + "name": "path", + "description": "The path of the file to read. The path should be the absolute DBFS path.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "path", + "description": "The path of the file to read. The path should be the absolute DBFS path.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ReadResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "length", + "description": "The number of bytes to read starting from the offset. This has a limit of 1 MB, and a default\nvalue of 0.5 MB.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "offset", + "description": "The offset to read from in bytes.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "path", + "description": "The path of the file to read. The path should be the absolute DBFS path.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "path", + "description": "The path of the file to read. The path should be the absolute DBFS path.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "sql.DbsqlPermissions", + "name": "DbsqlPermissions", + "description": "The SQL Permissions API is similar to the endpoints of the :method:permissions/set. However, this\nexposes only one endpoint, which gets the Access Control List for a given object. You cannot\nmodify any permissions using this API.\n\nThere are three levels of permission:\n\n- `CAN_VIEW`: Allows read-only access\n\n- `CAN_RUN`: Allows read access and run access (superset of `CAN_VIEW`)\n\n- `CAN_MANAGE`: Allows all actions: read, run, edit, delete, modify permissions (superset of `CAN_RUN`)\n\n**Warning**: This API is deprecated. Please see the latest version of the Databricks SQL API. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "package": { + "name": "sql" + }, + "docs_group": "sql", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Get", + "description": "Gets a JSON representation of the access control list (ACL) for a specified object.\n\n**Warning**: This API is deprecated. Please use :method:workspace/getpermissions instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Get object ACL.", + "path": "/api/2.0/preview/sql/permissions/{objectType}/{objectId}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetDbsqlPermissionRequest", + "is_object": true, + "required_fields": [ + { + "name": "objectType", + "description": "The type of object permissions to check.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ObjectTypePlural", + "enum": [ + { + "content": "alerts" + }, + { + "content": "dashboards" + }, + { + "content": "data_sources" + }, + { + "content": "queries" + } + ] + } + }, + { + "name": "objectId", + "description": "Object ID. An ACL is returned for the object with this UUID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "objectType", + "description": "The type of object permissions to check.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ObjectTypePlural", + "enum": [ + { + "content": "alerts" + }, + { + "content": "dashboards" + }, + { + "content": "data_sources" + }, + { + "content": "queries" + } + ] + } + }, + { + "name": "objectId", + "description": "Object ID. An ACL is returned for the object with this UUID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "objectId", + "description": "Object ID. An ACL is returned for the object with this UUID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "objectType", + "description": "The type of object permissions to check.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ObjectTypePlural", + "enum": [ + { + "content": "alerts" + }, + { + "content": "dashboards" + }, + { + "content": "data_sources" + }, + { + "content": "queries" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "objectType", + "description": "The type of object permissions to check.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ObjectTypePlural", + "enum": [ + { + "content": "alerts" + }, + { + "content": "dashboards" + }, + { + "content": "data_sources" + }, + { + "content": "queries" + } + ] + } + }, + { + "name": "objectId", + "description": "Object ID. An ACL is returned for the object with this UUID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Set", + "description": "Sets the access control list (ACL) for a specified object. This operation will complete rewrite the ACL.\n\n**Warning**: This API is deprecated. Please use :method:workspace/setpermissions instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Set object ACL.", + "path": "/api/2.0/preview/sql/permissions/{objectType}/{objectId}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SetRequest", + "is_object": true, + "required_fields": [ + { + "name": "objectType", + "description": "The type of object permission to set.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ObjectTypePlural", + "enum": [ + { + "content": "alerts" + }, + { + "content": "dashboards" + }, + { + "content": "data_sources" + }, + { + "content": "queries" + } + ] + } + }, + { + "name": "objectId", + "description": "Object ID. The ACL for the object with this UUID is overwritten by this request's POST content.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "objectType", + "description": "The type of object permission to set.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ObjectTypePlural", + "enum": [ + { + "content": "alerts" + }, + { + "content": "dashboards" + }, + { + "content": "data_sources" + }, + { + "content": "queries" + } + ] + } + }, + { + "name": "objectId", + "description": "Object ID. The ACL for the object with this UUID is overwritten by this request's POST content.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SetResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "AccessControlList", + "array_value": { + "pascal_name": "AccessControl", + "is_object": true + } + } + }, + { + "name": "objectId", + "description": "Object ID. The ACL for the object with this UUID is overwritten by this request's POST content.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "objectType", + "description": "The type of object permission to set.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ObjectTypePlural", + "enum": [ + { + "content": "alerts" + }, + { + "content": "dashboards" + }, + { + "content": "data_sources" + }, + { + "content": "queries" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "objectType", + "description": "The type of object permission to set.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "ObjectTypePlural", + "enum": [ + { + "content": "alerts" + }, + { + "content": "dashboards" + }, + { + "content": "data_sources" + }, + { + "content": "queries" + } + ] + } + }, + { + "name": "objectId", + "description": "Object ID. The ACL for the object with this UUID is overwritten by this request's POST content.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "TransferOwnership", + "description": "Transfers ownership of a dashboard, query, or alert to an active user. Requires an admin API key.\n\n**Warning**: This API is deprecated. For queries and alerts, please use :method:queries/update and :method:alerts/update respectively instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Transfer object ownership.", + "path": "/api/2.0/preview/sql/permissions/{objectType}/{objectId}/transfer", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "TransferOwnershipRequest", + "is_object": true, + "required_fields": [ + { + "name": "objectType", + "description": "The type of object on which to change ownership.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "OwnableObjectType", + "enum": [ + { + "content": "alert" + }, + { + "content": "dashboard" + }, + { + "content": "query" + } + ] + } + }, + { + "name": "objectId", + "description": "The ID of the object on which to change ownership.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "TransferOwnershipObjectId", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "objectType", + "description": "The type of object on which to change ownership.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "OwnableObjectType", + "enum": [ + { + "content": "alert" + }, + { + "content": "dashboard" + }, + { + "content": "query" + } + ] + } + }, + { + "name": "objectId", + "description": "The ID of the object on which to change ownership.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "TransferOwnershipObjectId", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "Success", + "is_object": true + }, + "all_fields": [ + { + "name": "new_owner", + "description": "Email address for the new owner, who must exist in the workspace.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "objectId", + "description": "The ID of the object on which to change ownership.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "TransferOwnershipObjectId", + "is_object": true + } + }, + { + "name": "objectType", + "description": "The type of object on which to change ownership.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "OwnableObjectType", + "enum": [ + { + "content": "alert" + }, + { + "content": "dashboard" + }, + { + "content": "query" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "objectType", + "description": "The type of object on which to change ownership.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "OwnableObjectType", + "enum": [ + { + "content": "alert" + }, + { + "content": "dashboard" + }, + { + "content": "query" + } + ] + } + }, + { + "name": "objectId", + "description": "The ID of the object on which to change ownership.", + "required": true, + "is_path": true, + "entity": { + "pascal_name": "TransferOwnershipObjectId", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "settings.DefaultNamespace", + "name": "DefaultNamespace", + "description": "The default namespace setting API allows users to configure the default namespace for a Databricks workspace.\n\nThrough this API, users can retrieve, set, or modify the default namespace used when queries do not reference\na fully qualified three-level name. For example, if you use the API to set 'retail_prod' as the default catalog, then a query\n'SELECT * FROM myTable' would reference the object 'retail_prod.default.myTable' (the schema 'default' is always assumed).\n\nThis setting requires a restart of clusters and SQL warehouses to take effect. Additionally, the default namespace only applies when using Unity Catalog-enabled compute.", + "package": { + "name": "settings" + }, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "Delete", + "description": "Deletes the default namespace setting for the workspace. A fresh etag needs to be provided in `DELETE`\nrequests (as a query parameter). The etag can be retrieved by making a `GET` request before the `DELETE` request.\nIf the setting is updated/deleted concurrently, `DELETE` fails with 409 and the\nrequest must be retried by using the fresh etag in the 409 response.", + "summary": "Delete the default namespace setting.", + "path": "/api/2.0/settings/types/default_namespace_ws/names/default", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteDefaultNamespaceSettingRequest", + "is_object": true + }, + "response": { + "pascal_name": "DeleteDefaultNamespaceSettingResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the default namespace setting.", + "summary": "Get the default namespace setting.", + "path": "/api/2.0/settings/types/default_namespace_ws/names/default", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetDefaultNamespaceSettingRequest", + "is_object": true + }, + "response": { + "pascal_name": "DefaultNamespaceSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "namespace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StringMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "namespace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StringMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the default namespace setting for the workspace. A fresh etag needs to be provided in `PATCH`\nrequests (as part of the setting field). The etag can be retrieved by making a `GET` request before the `PATCH` request.\nNote that if the setting does not exist, `GET` returns a NOT_FOUND error and the etag is present in the error response,\nwhich should be set in the `PATCH` request. If the setting is updated concurrently, `PATCH` fails with 409 and the request\nmust be retried by using the fresh etag in the 409 response.", + "summary": "Update the default namespace setting.", + "path": "/api/2.0/settings/types/default_namespace_ws/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateDefaultNamespaceSettingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultNamespaceSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultNamespaceSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DefaultNamespaceSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "namespace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StringMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "namespace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StringMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultNamespaceSetting", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "settings.DefaultWarehouseId", + "name": "DefaultWarehouseId", + "description": "Warehouse to be selected by default for users in this workspace. Covers SQL workloads only and can be overridden by users.", + "package": { + "name": "settings" + }, + "has_parent": true, + "is_hidden_cli": true, + "docs_group": "settings", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "Delete", + "description": "Reverts the Default Warehouse Id setting to its default value.", + "summary": "Delete the Default Warehouse Id setting.", + "path": "/api/2.0/settings/types/default_warehouse_id/names/default", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteDefaultWarehouseIdRequest", + "is_object": true + }, + "response": { + "pascal_name": "DeleteDefaultWarehouseIdResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the Default Warehouse Id setting.", + "summary": "Get the Default Warehouse Id setting.", + "path": "/api/2.0/settings/types/default_warehouse_id/names/default", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetDefaultWarehouseIdRequest", + "is_object": true + }, + "response": { + "pascal_name": "DefaultWarehouseId", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "string_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StringMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "string_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StringMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the Default Warehouse Id setting.", + "summary": "Update the Default Warehouse Id setting.", + "path": "/api/2.0/settings/types/default_warehouse_id/names/default", + "can_use_json": true, + "must_use_json": true, + "is_hidden_cli": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateDefaultWarehouseIdRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseId", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseId", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DefaultWarehouseId", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "string_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StringMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "string_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StringMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseId", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "settings.DisableLegacyAccess", + "name": "DisableLegacyAccess", + "description": "'Disabling legacy access' has the following impacts:\n\n1. Disables direct access to Hive Metastores from the workspace. However, you can still access a Hive Metastore through Hive Metastore federation.\n2. Disables fallback mode on external location access from the workspace.\n3. Disables Databricks Runtime versions prior to 13.3LTS.", + "package": { + "name": "settings" + }, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "Delete", + "description": "Deletes legacy access disablement status.", + "summary": "Delete Legacy Access Disablement Status.", + "path": "/api/2.0/settings/types/disable_legacy_access/names/default", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteDisableLegacyAccessRequest", + "is_object": true + }, + "response": { + "pascal_name": "DeleteDisableLegacyAccessResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Retrieves legacy access disablement Status.", + "summary": "Retrieve Legacy Access Disablement Status.", + "path": "/api/2.0/settings/types/disable_legacy_access/names/default", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetDisableLegacyAccessRequest", + "is_object": true + }, + "response": { + "pascal_name": "DisableLegacyAccess", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "disable_legacy_access", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "disable_legacy_access", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates legacy access disablement status.", + "summary": "Update Legacy Access Disablement Status.", + "path": "/api/2.0/settings/types/disable_legacy_access/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateDisableLegacyAccessRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DisableLegacyAccess", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DisableLegacyAccess", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DisableLegacyAccess", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "disable_legacy_access", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "disable_legacy_access", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DisableLegacyAccess", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "settings.DisableLegacyDbfs", + "name": "DisableLegacyDbfs", + "description": "Disabling legacy DBFS has the following implications:\n\n1. Access to DBFS root and DBFS mounts is disallowed (as well as the creation of new mounts).\n2. Disables Databricks Runtime versions prior to 13.3LTS.\n\nWhen the setting is off, all DBFS functionality is enabled and no restrictions are imposed on Databricks Runtime versions.\nThis setting can take up to 20 minutes to take effect and requires a manual restart of all-purpose compute clusters and SQL warehouses.", + "package": { + "name": "settings" + }, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "Delete", + "description": "Deletes the disable legacy DBFS setting for a workspace, reverting back to the default.", + "summary": "Delete the disable legacy DBFS setting.", + "path": "/api/2.0/settings/types/disable_legacy_dbfs/names/default", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteDisableLegacyDbfsRequest", + "is_object": true + }, + "response": { + "pascal_name": "DeleteDisableLegacyDbfsResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the disable legacy DBFS setting.", + "summary": "Get the disable legacy DBFS setting.", + "path": "/api/2.0/settings/types/disable_legacy_dbfs/names/default", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetDisableLegacyDbfsRequest", + "is_object": true + }, + "response": { + "pascal_name": "DisableLegacyDbfs", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "disable_legacy_dbfs", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "disable_legacy_dbfs", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the disable legacy DBFS setting for the workspace.", + "summary": "Update the disable legacy DBFS setting.", + "path": "/api/2.0/settings/types/disable_legacy_dbfs/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateDisableLegacyDbfsRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DisableLegacyDbfs", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DisableLegacyDbfs", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DisableLegacyDbfs", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "disable_legacy_dbfs", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "disable_legacy_dbfs", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DisableLegacyDbfs", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "settings.DisableLegacyFeatures", + "name": "DisableLegacyFeatures", + "description": "Disable legacy features for new Databricks workspaces.\n\nFor newly created workspaces:\n1. Disables the use of DBFS root and mounts.\n2. Hive Metastore will not be provisioned.\n3. Disables the use of ‘No-isolation clusters’.\n4. Disables Databricks Runtime versions prior to 13.3LTS.", + "package": { + "name": "settings" + }, + "is_accounts": true, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "parent_service_id": "settings.AccountSettings", + "methods": [ + { + "name": "Delete", + "description": "Deletes the disable legacy features setting.", + "summary": "Delete the disable legacy features setting.", + "path": "/api/2.0/accounts/{account_id}/settings/types/disable_legacy_features/names/default", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteDisableLegacyFeaturesRequest", + "is_object": true + }, + "response": { + "pascal_name": "DeleteDisableLegacyFeaturesResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the value of the disable legacy features setting.", + "summary": "Get the disable legacy features setting.", + "path": "/api/2.0/accounts/{account_id}/settings/types/disable_legacy_features/names/default", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetDisableLegacyFeaturesRequest", + "is_object": true + }, + "response": { + "pascal_name": "DisableLegacyFeatures", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "disable_legacy_features", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "disable_legacy_features", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the value of the disable legacy features setting.", + "summary": "Update the disable legacy features setting.", + "path": "/api/2.0/accounts/{account_id}/settings/types/disable_legacy_features/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateDisableLegacyFeaturesRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DisableLegacyFeatures", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DisableLegacyFeatures", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DisableLegacyFeatures", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "disable_legacy_features", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "disable_legacy_features", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DisableLegacyFeatures", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "disasterrecovery.DisasterRecovery", + "name": "DisasterRecovery", + "description": "Manage disaster recovery configurations and execute failover operations.", + "package": { + "name": "disasterrecovery" + }, + "is_accounts": true, + "docs_group": "disasterrecovery", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListFailoverGroupsRequest" + } + }, + "methods": [ + { + "name": "CreateFailoverGroup", + "description": "Create a new failover group.", + "summary": "Create a Failover Group.", + "path": "/api/disaster-recovery/v1/{parent=accounts/*}/failover-groups", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateFailoverGroupRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "failover_group", + "description": "The failover group to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FailoverGroup", + "is_object": true + } + }, + { + "name": "failover_group_id", + "description": "Client-provided identifier for the failover group. Used to construct the\nresource name as {parent}/failover-groups/{failover_group_id}.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "failover_group_id", + "description": "Client-provided identifier for the failover group. Used to construct the\nresource name as {parent}/failover-groups/{failover_group_id}.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "failover_group", + "description": "The failover group to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FailoverGroup", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "failover_group", + "description": "The failover group to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FailoverGroup", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "FailoverGroup", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "failover_group", + "description": "The failover group to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FailoverGroup", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "failover_group_id", + "description": "Client-provided identifier for the failover group. Used to construct the\nresource name as {parent}/failover-groups/{failover_group_id}.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "validate_only", + "description": "When true, validates the request without creating the failover group.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "create_time", + "description": "Time at which this failover group was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "effective_primary_region", + "description": "Current effective primary region. Replication flows FROM workspaces in this region.\nChanges after a successful failover.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Opaque version string for optimistic locking. Server-generated and returned in responses.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "has_replication_point_blocking_errors", + "description": "True if errors currently block the replication point.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "initial_replication_progress", + "description": "Initial replication progress of all in-scope assets. Set only when the FailoverGroup is in INITIAL_REPLICATION state.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "InitialReplicationProgress", + "is_object": true + } + }, + { + "name": "name", + "description": "Fully qualified resource name in the format\naccounts/{account_id}/failover-groups/{failover_group_id}.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "replication_point", + "description": "The latest point in time to which data has been replicated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "state", + "description": "Aggregate state of the failover group.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FailoverGroupState", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "CREATING" + }, + { + "content": "CREATION_FAILED" + }, + { + "content": "DELETING" + }, + { + "content": "DELETION_FAILED" + }, + { + "content": "FAILING_OVER" + }, + { + "content": "FAILOVER_FAILED" + }, + { + "content": "INITIAL_REPLICATION" + } + ] + } + }, + { + "name": "unity_catalog_assets", + "description": "Unity Catalog replication configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "UcReplicationConfig", + "is_object": true + } + }, + { + "name": "update_time", + "description": "Time at which this failover group was last modified.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "failover_group_id", + "description": "Client-provided identifier for the failover group. Used to construct the\nresource name as {parent}/failover-groups/{failover_group_id}.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateStableUrl", + "description": "Create a new stable URL.", + "summary": "Create a Stable URL.", + "path": "/api/disaster-recovery/v1/{parent=accounts/*}/stable-urls", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateStableUrlRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "stable_url", + "description": "The stable URL to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StableUrl", + "is_object": true + } + }, + { + "name": "stable_url_id", + "description": "Client-provided identifier for the stable URL. Used to construct the\nresource name as {parent}/stable-urls/{stable_url_id}.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "stable_url_id", + "description": "Client-provided identifier for the stable URL. Used to construct the\nresource name as {parent}/stable-urls/{stable_url_id}.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "stable_url", + "description": "The stable URL to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StableUrl", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "stable_url", + "description": "The stable URL to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StableUrl", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "initial_workspace_id", + "description": "The workspace this stable URL is initially bound to. Used only in Create\nrequests to associate the stable URL with a workspace. Not returned in\nresponses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "initial_workspace_id", + "description": "The workspace this stable URL is initially bound to. Used only in Create\nrequests to associate the stable URL with a workspace. Not returned in\nresponses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "StableUrl", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "initial_workspace_id", + "description": "The workspace this stable URL is initially bound to. Used only in Create\nrequests to associate the stable URL with a workspace. Not returned in\nresponses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "initial_workspace_id", + "description": "The workspace this stable URL is initially bound to. Used only in Create\nrequests to associate the stable URL with a workspace. Not returned in\nresponses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "stable_url", + "description": "The stable URL to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StableUrl", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "initial_workspace_id", + "description": "The workspace this stable URL is initially bound to. Used only in Create\nrequests to associate the stable URL with a workspace. Not returned in\nresponses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "initial_workspace_id", + "description": "The workspace this stable URL is initially bound to. Used only in Create\nrequests to associate the stable URL with a workspace. Not returned in\nresponses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "stable_url_id", + "description": "Client-provided identifier for the stable URL. Used to construct the\nresource name as {parent}/stable-urls/{stable_url_id}.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "validate_only", + "description": "When true, validates the request without creating the stable URL.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "effective_workspace_id", + "description": "The workspace this stable URL currently routes to. Set to\n`initial_workspace_id` at creation, advanced to the failover group's primary\nwhile attached (including across a failover), and preserved when the stable\nURL is detached from its failover group. Read this to see where an unattached\nstable URL points: after a failover followed by a detach it reflects the\npost-failover primary, not `initial_workspace_id`.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "failover_group_name", + "description": "Fully qualified resource name of the FailoverGroup this stable URL is\ncurrently linked to, in the format\n`accounts/{account_id}/failover-groups/{failover_group_id}`. Empty when\nthe stable URL is not attached to any failover group.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "initial_workspace_id", + "description": "The workspace this stable URL is initially bound to. Used only in Create\nrequests to associate the stable URL with a workspace. Not returned in\nresponses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Fully qualified resource name.\nFormat: accounts/{account_id}/stable-urls/{stable_url_id}.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stable_workspace_id", + "description": "The stable workspace ID for this stable URL. Generated on creation and\nimmutable thereafter; identifies the URL across failovers and is the same\nvalue embedded in the `url` (as the `w=` query parameter for SPOG URLs,\nor in the `conn-\u003cid\u003e` hostname for Private-Link URLs).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "url", + "description": "The stable URL endpoint. Generated on creation and\nimmutable thereafter. For non-Private-Link workspaces this is\n`https://\u003cspog_host\u003e/?w=\u003cconnection_id\u003e`. For Private-Link workspaces\nthis is the per-connection hostname.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "stable_url_id", + "description": "Client-provided identifier for the stable URL. Used to construct the\nresource name as {parent}/stable-urls/{stable_url_id}.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "initial_workspace_id", + "description": "The workspace this stable URL is initially bound to. Used only in Create\nrequests to associate the stable URL with a workspace. Not returned in\nresponses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteFailoverGroup", + "description": "Delete a failover group.", + "summary": "Delete a Failover Group.", + "path": "/api/disaster-recovery/v1/{name=accounts/*/failover-groups/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteFailoverGroupRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The fully qualified resource name of the failover group to delete.\nFormat: accounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The fully qualified resource name of the failover group to delete.\nFormat: accounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "etag", + "description": "Opaque version string for optimistic locking. If provided, must match the\ncurrent etag. If omitted, the delete proceeds without an etag check.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The fully qualified resource name of the failover group to delete.\nFormat: accounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The fully qualified resource name of the failover group to delete.\nFormat: accounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteStableUrl", + "description": "Delete a stable URL.", + "summary": "Delete a Stable URL.", + "path": "/api/disaster-recovery/v1/{name=accounts/*/stable-urls/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteStableUrlRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The fully qualified resource name.\nFormat: accounts/{account_id}/stable-urls/{stable_url_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The fully qualified resource name.\nFormat: accounts/{account_id}/stable-urls/{stable_url_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "The fully qualified resource name.\nFormat: accounts/{account_id}/stable-urls/{stable_url_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The fully qualified resource name.\nFormat: accounts/{account_id}/stable-urls/{stable_url_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "FailoverFailoverGroup", + "description": "Initiate a failover to a new primary region.", + "summary": "Failover a Failover Group to a new primary region.", + "path": "/api/disaster-recovery/v1/{name=accounts/*/failover-groups/*}/failover", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "FailoverFailoverGroupRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The fully qualified resource name of the failover group to failover.\nFormat: accounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "target_primary_region", + "description": "The target primary region. Must be one of the participating regions and different\nfrom the current effective_primary_region. Serves as an idempotency check.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "failover_type", + "description": "The type of failover to perform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FailoverFailoverGroupRequestFailoverType", + "enum": [ + { + "content": "FORCED" + } + ] + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The fully qualified resource name of the failover group to failover.\nFormat: accounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "target_primary_region", + "description": "The target primary region. Must be one of the participating regions and different\nfrom the current effective_primary_region. Serves as an idempotency check.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "failover_type", + "description": "The type of failover to perform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FailoverFailoverGroupRequestFailoverType", + "enum": [ + { + "content": "FORCED" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "FailoverGroup", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "Opaque version string for optimistic locking. If provided, must match the\ncurrent etag. If omitted, the failover proceeds regardless of current state.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "failover_type", + "description": "The type of failover to perform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FailoverFailoverGroupRequestFailoverType", + "enum": [ + { + "content": "FORCED" + } + ] + } + }, + { + "name": "name", + "description": "The fully qualified resource name of the failover group to failover.\nFormat: accounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "target_primary_region", + "description": "The target primary region. Must be one of the participating regions and different\nfrom the current effective_primary_region. Serves as an idempotency check.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The fully qualified resource name of the failover group to failover.\nFormat: accounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "target_primary_region", + "description": "The target primary region. Must be one of the participating regions and different\nfrom the current effective_primary_region. Serves as an idempotency check.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "failover_type", + "description": "The type of failover to perform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FailoverFailoverGroupRequestFailoverType", + "enum": [ + { + "content": "FORCED" + } + ] + } + } + ] + }, + { + "name": "GetFailoverGroup", + "description": "Get a failover group.", + "summary": "Get a Failover Group.", + "path": "/api/disaster-recovery/v1/{name=accounts/*/failover-groups/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetFailoverGroupRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The fully qualified resource name of the failover group.\nFormat: accounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The fully qualified resource name of the failover group.\nFormat: accounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "FailoverGroup", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The fully qualified resource name of the failover group.\nFormat: accounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The fully qualified resource name of the failover group.\nFormat: accounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetStableUrl", + "description": "Get a stable URL.", + "summary": "Get a Stable URL.", + "path": "/api/disaster-recovery/v1/{name=accounts/*/stable-urls/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetStableUrlRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The fully qualified resource name.\nFormat: accounts/{account_id}/stable-urls/{stable_url_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The fully qualified resource name.\nFormat: accounts/{account_id}/stable-urls/{stable_url_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "StableUrl", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "initial_workspace_id", + "description": "The workspace this stable URL is initially bound to. Used only in Create\nrequests to associate the stable URL with a workspace. Not returned in\nresponses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "initial_workspace_id", + "description": "The workspace this stable URL is initially bound to. Used only in Create\nrequests to associate the stable URL with a workspace. Not returned in\nresponses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The fully qualified resource name.\nFormat: accounts/{account_id}/stable-urls/{stable_url_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The fully qualified resource name.\nFormat: accounts/{account_id}/stable-urls/{stable_url_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListFailoverGroups", + "description": "List failover groups.\n\nList entries are abbreviated: `state` and `replication_point` are not\npopulated. Call GetFailoverGroup to retrieve the full resource.", + "summary": "List Failover Groups.", + "path": "/api/disaster-recovery/v1/{parent=accounts/*}/failover-groups", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListFailoverGroupsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListFailoverGroupsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Maximum number of failover groups to return per page:\n- when set to a value greater than 0, the page length is the minimum of this value\nand a server configured value;\n- when set to 0 or unset, the page length is set to a server configured value\n(recommended);\n- when set to a value less than 0, an invalid parameter error is returned.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Page token received from a previous ListFailoverGroups call.\nProvide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Page token received from a previous ListFailoverGroups call.\nProvide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListStableUrls", + "description": "List stable URLs for an account.", + "summary": "List Stable URLs.", + "path": "/api/disaster-recovery/v1/{parent=accounts/*}/stable-urls", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListStableUrlsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListStableUrlsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Maximum number of stable URLs to return per page:\n- when set to a value greater than 0, the page length is the minimum of this value\nand a server configured value;\n- when set to 0 or unset, the page length is set to a server configured value\n(recommended);\n- when set to a value less than 0, an invalid parameter error is returned.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Page token received from a previous ListStableUrls call.\nProvide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The parent resource. Format: accounts/{account_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Page token received from a previous ListStableUrls call.\nProvide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateFailoverGroup", + "description": "Update a failover group.", + "summary": "Update a Failover Group.", + "path": "/api/disaster-recovery/v1/{name=accounts/*/failover-groups/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateFailoverGroupRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Fully qualified resource name in the format\naccounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "failover_group", + "description": "The failover group with updated fields. The name field identifies the resource\nand is populated from the URL path.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FailoverGroup", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Comma-separated list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Fully qualified resource name in the format\naccounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Comma-separated list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "failover_group", + "description": "The failover group with updated fields. The name field identifies the resource\nand is populated from the URL path.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FailoverGroup", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "failover_group", + "description": "The failover group with updated fields. The name field identifies the resource\nand is populated from the URL path.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FailoverGroup", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "FailoverGroup", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "Optional opaque version string for optimistic locking, obtained from a prior read of\nthe failover group. If provided, the update is rejected unless it matches the failover\ngroup's current etag. If omitted, the update proceeds without an optimistic-lock check.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "failover_group", + "description": "The failover group with updated fields. The name field identifies the resource\nand is populated from the URL path.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FailoverGroup", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "name", + "description": "Fully qualified resource name in the format\naccounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Comma-separated list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "create_time", + "description": "Time at which this failover group was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "effective_primary_region", + "description": "Current effective primary region. Replication flows FROM workspaces in this region.\nChanges after a successful failover.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "Opaque version string for optimistic locking. Server-generated and returned in responses.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "has_replication_point_blocking_errors", + "description": "True if errors currently block the replication point.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "initial_replication_progress", + "description": "Initial replication progress of all in-scope assets. Set only when the FailoverGroup is in INITIAL_REPLICATION state.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "InitialReplicationProgress", + "is_object": true + } + }, + { + "name": "name", + "description": "Fully qualified resource name in the format\naccounts/{account_id}/failover-groups/{failover_group_id}.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "replication_point", + "description": "The latest point in time to which data has been replicated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "state", + "description": "Aggregate state of the failover group.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FailoverGroupState", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "CREATING" + }, + { + "content": "CREATION_FAILED" + }, + { + "content": "DELETING" + }, + { + "content": "DELETION_FAILED" + }, + { + "content": "FAILING_OVER" + }, + { + "content": "FAILOVER_FAILED" + }, + { + "content": "INITIAL_REPLICATION" + } + ] + } + }, + { + "name": "unity_catalog_assets", + "description": "Unity Catalog replication configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "UcReplicationConfig", + "is_object": true + } + }, + { + "name": "update_time", + "description": "Time at which this failover group was last modified.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Fully qualified resource name in the format\naccounts/{account_id}/failover-groups/{failover_group_id}.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Comma-separated list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "regions", + "description": "List of all regions participating in this failover group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "workspace_sets", + "description": "Workspace sets, each containing workspaces that replicate to each other.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceSetList", + "array_value": { + "pascal_name": "WorkspaceSet", + "is_object": true + } + } + }, + { + "name": "initial_primary_region", + "description": "Initial primary region. Used only in Create requests to set the starting\nprimary region. Not returned in responses.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "domains.Domains", + "name": "Domains", + "description": "Manage domains for organizing and discovering data assets.", + "package": { + "name": "domains" + }, + "docs_group": "domains", + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "list": { + "request": { + "pascal_name": "ListDomainsRequest" + } + }, + "methods": [ + { + "name": "CreateDomain", + "description": "Create a domain. If `domain_id` is omitted, the server generates one.", + "summary": "Create a domain.", + "path": "/api/2.0/domains", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateDomainRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "domain", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Domain", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "domain", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Domain", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "domain", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Domain", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Domain", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "domain", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Domain", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "domain_id", + "description": "Client-supplied resource ID for the new domain. If omitted, the server\ngenerates one.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "business_owner_ids", + "description": "Principal IDs of the business owners (users, groups, or service principals).", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_int64": true + } + } + }, + { + "name": "create_time", + "description": "Timestamp when the domain was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "description", + "description": "Full description (max 4096 chars)", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "domain_id", + "description": "Unique identifier for the domain. If omitted at Create, the server\ngenerates one.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "draft", + "description": "Whether to mark the domain as a draft. If omitted on Create, the server\napplies a default; the resolved value is returned in `effective_draft`.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "effective_draft", + "description": "Resolved draft state of the domain.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "icon", + "description": "Icon to display for the domain.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DomainIcon", + "is_object": true + } + }, + { + "name": "name", + "description": "Full resource name of the domain. The primary identifier for this resource.\nFormat: `domains/{domain_id}`\nIdentifies the domain on get, update, and delete. Not an input on\ncreate — to choose the id, set `CreateDomainRequest.domain_id`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent_domain_id", + "description": "Domain ID of the parent. If absent, this is a top-level domain.\nIf present, this domain is a subdomain of the specified parent.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subtitle", + "description": "Short description (max 280 chars)", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "technical_owner_ids", + "description": "Principal IDs of the technical owners (users, groups, or service principals).", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_int64": true + } + } + }, + { + "name": "update_time", + "description": "Timestamp when the domain was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteDomain", + "description": "Delete a domain. By default the request fails if the domain still has\nGlossary pages; set `force` to delete those pages along with the domain.", + "summary": "Delete a domain.", + "path": "/api/2.0/{name=domains/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteDomainRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name of the domain to delete.\nFormat: `domains/{domain_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name of the domain to delete.\nFormat: `domains/{domain_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "force", + "description": "When false (default), DeleteDomain is rejected with FAILED_PRECONDITION if\nthe domain still has Glossary pages. When true, those pages are deleted\nfirst and then the domain is removed.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "Full resource name of the domain to delete.\nFormat: `domains/{domain_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name of the domain to delete.\nFormat: `domains/{domain_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetDomain", + "description": "Get a domain by resource name.\n\nAuthorization: external callers must have the `MANAGE DISCOVER` permission.", + "summary": "Get a domain.", + "path": "/api/2.0/{name=domains/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetDomainRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name of the domain to retrieve.\nFormat: `domains/{domain_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name of the domain to retrieve.\nFormat: `domains/{domain_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Domain", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Full resource name of the domain to retrieve.\nFormat: `domains/{domain_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name of the domain to retrieve.\nFormat: `domains/{domain_id}`", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListDomains", + "description": "List domains in the account. Set `parent_domain_id` to return only the\ndirect subdomains of a given domain.\n\nAuthorization: external callers must have the `MANAGE DISCOVER` permission;\nonly domains the caller is authorized to read are returned.", + "summary": "List domains.", + "path": "/api/2.0/domains", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListDomainsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListDomainsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent_domain_id", + "description": "Filter by parent domain.\n- Absent: return all domains regardless of hierarchy.\n- Present: return only direct children of the specified domain.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateDomain", + "description": "Update a domain. `update_mask` selects which fields to modify; the domain\nis identified by its resource `name`.", + "summary": "Update a domain.", + "path": "/api/2.0/{name=domains/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateDomainRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name of the domain. The primary identifier for this resource.\nFormat: `domains/{domain_id}`\nIdentifies the domain on get, update, and delete. Not an input on\ncreate — to choose the id, set `CreateDomainRequest.domain_id`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "domain", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Domain", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name of the domain. The primary identifier for this resource.\nFormat: `domains/{domain_id}`\nIdentifies the domain on get, update, and delete. Not an input on\ncreate — to choose the id, set `CreateDomainRequest.domain_id`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "domain", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Domain", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "domain", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Domain", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Domain", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "domain", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Domain", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "name", + "description": "Full resource name of the domain. The primary identifier for this resource.\nFormat: `domains/{domain_id}`\nIdentifies the domain on get, update, and delete. Not an input on\ncreate — to choose the id, set `CreateDomainRequest.domain_id`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "business_owner_ids", + "description": "Principal IDs of the business owners (users, groups, or service principals).", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_int64": true + } + } + }, + { + "name": "create_time", + "description": "Timestamp when the domain was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "description", + "description": "Full description (max 4096 chars)", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "domain_id", + "description": "Unique identifier for the domain. If omitted at Create, the server\ngenerates one.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "draft", + "description": "Whether to mark the domain as a draft. If omitted on Create, the server\napplies a default; the resolved value is returned in `effective_draft`.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "effective_draft", + "description": "Resolved draft state of the domain.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "icon", + "description": "Icon to display for the domain.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DomainIcon", + "is_object": true + } + }, + { + "name": "name", + "description": "Full resource name of the domain. The primary identifier for this resource.\nFormat: `domains/{domain_id}`\nIdentifies the domain on get, update, and delete. Not an input on\ncreate — to choose the id, set `CreateDomainRequest.domain_id`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent_domain_id", + "description": "Domain ID of the parent. If absent, this is a top-level domain.\nIf present, this domain is a subdomain of the specified parent.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subtitle", + "description": "Short description (max 280 chars)", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "technical_owner_ids", + "description": "Principal IDs of the technical owners (users, groups, or service principals).", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_int64": true + } + } + }, + { + "name": "update_time", + "description": "Timestamp when the domain was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name of the domain. The primary identifier for this resource.\nFormat: `domains/{domain_id}`\nIdentifies the domain on get, update, and delete. Not an input on\ncreate — to choose the id, set `CreateDomainRequest.domain_id`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "tag_key", + "description": "Governed tag key associated with this domain.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "settings.EnableExportNotebook", + "name": "EnableExportNotebook", + "description": "Controls whether users can export notebooks and files from the Workspace UI. By default, this setting is enabled.", + "package": { + "name": "settings" + }, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "GetEnableExportNotebook", + "description": "Gets the Notebook and File exporting setting.", + "summary": "Get the Notebook and File exporting setting.", + "path": "/api/2.0/settings/types/enable-export-notebook/names/default", + "is_legacy_empty_request": true, + "is_crud_read": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetEnableExportNotebookRequest", + "is_object": true + }, + "response": { + "pascal_name": "EnableExportNotebook", + "is_object": true + } + }, + { + "name": "PatchEnableExportNotebook", + "description": "Updates the Notebook and File exporting setting. The model follows eventual consistency, which means the get after the update operation might receive stale values for some time.", + "summary": "Update the Notebook and File exporting setting.", + "path": "/api/2.0/settings/types/enable-export-notebook/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateEnableExportNotebookRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnableExportNotebook", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnableExportNotebook", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EnableExportNotebook", + "is_object": true + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnableExportNotebook", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "settings.EnableIpAccessLists", + "name": "EnableIpAccessLists", + "description": "Controls the enforcement of IP access lists for accessing the account console.\nAllowing you to enable or disable restricted access based on IP addresses.", + "package": { + "name": "settings" + }, + "is_accounts": true, + "has_parent": true, + "is_hidden_cli": true, + "docs_group": "settings", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "parent_service_id": "settings.AccountSettings", + "methods": [ + { + "name": "Delete", + "description": "Reverts the value of the account IP access toggle setting to default (ON)", + "summary": "Delete the account IP access toggle setting.", + "path": "/api/2.0/accounts/{account_id}/settings/types/acct_ip_acl_enable/names/default", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteAccountIpAccessEnableRequest", + "is_object": true + }, + "response": { + "pascal_name": "DeleteAccountIpAccessEnableResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the value of the account IP access toggle setting.", + "summary": "Get the account IP access toggle setting.", + "path": "/api/2.0/accounts/{account_id}/settings/types/acct_ip_acl_enable/names/default", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetAccountIpAccessEnableRequest", + "is_object": true + }, + "response": { + "pascal_name": "AccountIpAccessEnable", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "acct_ip_acl_enable", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "acct_ip_acl_enable", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the value of the account IP access toggle setting.", + "summary": "Update the account IP access toggle setting.", + "path": "/api/2.0/accounts/{account_id}/settings/types/acct_ip_acl_enable/names/default", + "can_use_json": true, + "must_use_json": true, + "is_hidden_cli": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateAccountIpAccessEnableRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AccountIpAccessEnable", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AccountIpAccessEnable", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccountIpAccessEnable", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "acct_ip_acl_enable", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "acct_ip_acl_enable", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AccountIpAccessEnable", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "settings.EnableNotebookTableClipboard", + "name": "EnableNotebookTableClipboard", + "description": "Controls whether users can copy tabular data to the clipboard via the UI. By default, this setting is enabled.", + "package": { + "name": "settings" + }, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "GetEnableNotebookTableClipboard", + "description": "Gets the Results Table Clipboard features setting.", + "summary": "Get the Results Table Clipboard features setting.", + "path": "/api/2.0/settings/types/enable-notebook-table-clipboard/names/default", + "is_legacy_empty_request": true, + "is_crud_read": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetEnableNotebookTableClipboardRequest", + "is_object": true + }, + "response": { + "pascal_name": "EnableNotebookTableClipboard", + "is_object": true + } + }, + { + "name": "PatchEnableNotebookTableClipboard", + "description": "Updates the Results Table Clipboard features setting. The model follows eventual consistency, which means the get after the update operation might receive stale values for some time.", + "summary": "Update the Results Table Clipboard features setting.", + "path": "/api/2.0/settings/types/enable-notebook-table-clipboard/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateEnableNotebookTableClipboardRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnableNotebookTableClipboard", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnableNotebookTableClipboard", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EnableNotebookTableClipboard", + "is_object": true + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnableNotebookTableClipboard", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "settings.EnableResultsDownloading", + "name": "EnableResultsDownloading", + "description": "Controls whether users can download notebook results. By default, this setting is enabled.", + "package": { + "name": "settings" + }, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "GetEnableResultsDownloading", + "description": "Gets the Notebook results download setting.", + "summary": "Get the Notebook results download setting.", + "path": "/api/2.0/settings/types/enable-results-downloading/names/default", + "is_legacy_empty_request": true, + "is_crud_read": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetEnableResultsDownloadingRequest", + "is_object": true + }, + "response": { + "pascal_name": "EnableResultsDownloading", + "is_object": true + } + }, + { + "name": "PatchEnableResultsDownloading", + "description": "Updates the Notebook results download setting. The model follows eventual consistency, which means the get after the update operation might receive stale values for some time.", + "summary": "Update the Notebook results download setting.", + "path": "/api/2.0/settings/types/enable-results-downloading/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateEnableResultsDownloadingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnableResultsDownloading", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnableResultsDownloading", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EnableResultsDownloading", + "is_object": true + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnableResultsDownloading", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "provisioning.EncryptionKeys", + "name": "EncryptionKeys", + "description": "These APIs manage encryption key configurations for this workspace (optional). A key\nconfiguration encapsulates the AWS KMS key information and some information about how\nthe key configuration can be used. There are two possible uses for key configurations:\n\n* Managed services: A key configuration can be used to encrypt a workspace's notebook and\nsecret data in the control plane, as well as Databricks SQL queries and query history.\n* Storage: A key configuration can be used to encrypt a workspace's DBFS and EBS data in\nthe data plane.\n\nIn both of these cases, the key configuration's ID is used when creating a new workspace.\nThis Preview feature is available if your account is on the E2 version of the platform.\nUpdating a running workspace with workspace storage encryption requires that the workspace\nis on the E2 version of the platform. If you have an older workspace, it might not be on\nthe E2 version of the platform. If you are not sure, contact your Databricks representative.", + "package": { + "name": "provisioning" + }, + "is_accounts": true, + "docs_group": "provisioning", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Create", + "description": "Creates a customer-managed key configuration object for an account, specified by ID.\nThis operation uploads a reference to a customer-managed key to Databricks.\nIf the key is assigned as a workspace's customer-managed key for managed services,\nDatabricks uses the key to encrypt the workspaces notebooks and secrets in the control plane,\nin addition to Databricks SQL queries and query history. If it is specified as a\nworkspace's customer-managed key for workspace storage, the key encrypts the\nworkspace's root S3 bucket (which contains the workspace's root DBFS and system data)\nand, optionally, cluster EBS volume data.\n\n**Important**: Customer-managed keys are supported only for some deployment types,\nsubscription types, and AWS regions that currently support creation of Databricks workspaces.\n\nThis operation is available only if your account is on the E2 version of the\nplatform or on a select custom plan that allows multiple workspaces per account.\n\n**GCP only**: To create a customer-managed key on GCP, you must include the\n`X-Databricks-GCP-SA-Access-Token` HTTP header in your request. This header must contain\na Google Cloud OAuth access token with the `cloud-platform` scope. The Google identity\nassociated with the token must also have the `setIamPermissions` and `getIamPermissions`\nIAM permissions on the key resource. For details on obtaining this token, see\n[Authenticate with Google ID tokens](https://docs.databricks.com/gcp/en/dev-tools/auth/authentication-google-id.html).", + "summary": "Create encryption key configuration.", + "path": "/api/2.0/accounts/{account_id}/customer-managed-keys", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateCustomerManagedKeyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "use_cases", + "description": "The cases that the key can be used for.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KeyUseCaseList", + "array_value": { + "pascal_name": "KeyUseCase", + "enum": [ + { + "content": "MANAGED_SERVICES" + }, + { + "content": "STORAGE" + } + ] + } + } + } + ], + "required_request_body_fields": [ + { + "name": "use_cases", + "description": "The cases that the key can be used for.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KeyUseCaseList", + "array_value": { + "pascal_name": "KeyUseCase", + "enum": [ + { + "content": "MANAGED_SERVICES" + }, + { + "content": "STORAGE" + } + ] + } + } + } + ] + }, + "response": { + "pascal_name": "CustomerManagedKey", + "is_object": true + }, + "all_fields": [ + { + "name": "aws_key_info", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CreateAwsKeyInfo", + "is_object": true + } + }, + { + "name": "azure_key_info", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CreateAzureKeyInfo", + "is_object": true + } + }, + { + "name": "gcp_key_info", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CreateGcpKeyInfo", + "is_object": true + } + }, + { + "name": "use_cases", + "description": "The cases that the key can be used for.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KeyUseCaseList", + "array_value": { + "pascal_name": "KeyUseCase", + "enum": [ + { + "content": "MANAGED_SERVICES" + }, + { + "content": "STORAGE" + } + ] + } + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a customer-managed key configuration object for an account. You cannot delete a configuration that is associated with a running workspace.", + "summary": "Delete encryption key configuration.", + "path": "/api/2.0/accounts/{account_id}/customer-managed-keys/{customer_managed_key_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteEncryptionKeyRequest", + "is_object": true, + "required_fields": [ + { + "name": "customer_managed_key_id", + "description": "Databricks encryption key configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "customer_managed_key_id", + "description": "Databricks encryption key configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CustomerManagedKey", + "is_object": true + }, + "all_fields": [ + { + "name": "customer_managed_key_id", + "description": "Databricks encryption key configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "customer_managed_key_id", + "description": "Databricks encryption key configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a customer-managed key configuration object for an account, specified by ID.\nThis operation uploads a reference to a customer-managed key to Databricks.\nIf assigned as a workspace's customer-managed key for managed services, Databricks uses the\nkey to encrypt the workspaces notebooks and secrets in the control plane, in addition to\nDatabricks SQL queries and query history. If it is specified as a workspace's\ncustomer-managed key for storage, the key encrypts the workspace's root S3 bucket\n(which contains the workspace's root DBFS and system data) and, optionally, cluster EBS volume data.\n\n**Important**: Customer-managed keys are supported only for some deployment types,\nsubscription types, and AWS regions.\n\nThis operation is available only if your account is on the E2 version of the platform.\",", + "summary": "Get encryption key configuration.", + "path": "/api/2.0/accounts/{account_id}/customer-managed-keys/{customer_managed_key_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetEncryptionKeyRequest", + "is_object": true, + "required_fields": [ + { + "name": "customer_managed_key_id", + "description": "Databricks encryption key configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "customer_managed_key_id", + "description": "Databricks encryption key configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CustomerManagedKey", + "is_object": true + }, + "all_fields": [ + { + "name": "customer_managed_key_id", + "description": "Databricks encryption key configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "customer_managed_key_id", + "description": "Databricks encryption key configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Lists Databricks customer-managed key configurations for an account.", + "summary": "List encryption key configuration.", + "path": "/api/2.0/accounts/{account_id}/customer-managed-keys", + "is_legacy_empty_request": true, + "is_crud_read": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListEncryptionKeysRequest", + "is_object": true + }, + "response": { + "pascal_name": "CustomerManagedKeyList", + "array_value": { + "pascal_name": "CustomerManagedKey", + "is_object": true + } + } + } + ] + }, + { + "id": "networking.Endpoints", + "name": "Endpoints", + "description": "These APIs manage endpoint configurations for this account.", + "package": { + "name": "networking" + }, + "is_accounts": true, + "docs_group": "provisioning", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListEndpointsRequest" + } + }, + "methods": [ + { + "name": "CreateEndpoint", + "description": "Creates a new network connectivity endpoint that enables private connectivity\nbetween your network resources and Databricks services.\n\nAfter creation, the endpoint is initially in the PENDING state. The Databricks\nendpoint service automatically reviews and approves the endpoint within a few\nminutes. Use the GET method to retrieve the latest endpoint state.\n\nAn endpoint can be used only after it reaches the APPROVED state.", + "summary": "Create a network endpoint.", + "path": "/api/networking/v1/{parent=accounts/*}/endpoints", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateEndpointRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "The parent resource name of the account under which the endpoint is created.\nFormat: `accounts/{account_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The parent resource name of the account under which the endpoint is created.\nFormat: `accounts/{account_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "endpoint", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "endpoint", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The human-readable display name of this endpoint.\nThe input should conform to RFC-1034, which restricts to letters, numbers, and hyphens,\nwith the first character a letter, the last a letter or a number, and a 63 character maximum.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The cloud provider region where this endpoint is located.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The human-readable display name of this endpoint.\nThe input should conform to RFC-1034, which restricts to letters, numbers, and hyphens,\nwith the first character a letter, the last a letter or a number, and a 63 character maximum.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The cloud provider region where this endpoint is located.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Endpoint", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The human-readable display name of this endpoint.\nThe input should conform to RFC-1034, which restricts to letters, numbers, and hyphens,\nwith the first character a letter, the last a letter or a number, and a 63 character maximum.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The cloud provider region where this endpoint is located.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The human-readable display name of this endpoint.\nThe input should conform to RFC-1034, which restricts to letters, numbers, and hyphens,\nwith the first character a letter, the last a letter or a number, and a 63 character maximum.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The cloud provider region where this endpoint is located.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "endpoint", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The human-readable display name of this endpoint.\nThe input should conform to RFC-1034, which restricts to letters, numbers, and hyphens,\nwith the first character a letter, the last a letter or a number, and a 63 character maximum.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The cloud provider region where this endpoint is located.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The human-readable display name of this endpoint.\nThe input should conform to RFC-1034, which restricts to letters, numbers, and hyphens,\nwith the first character a letter, the last a letter or a number, and a 63 character maximum.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The cloud provider region where this endpoint is located.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "parent", + "description": "The parent resource name of the account under which the endpoint is created.\nFormat: `accounts/{account_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_id", + "description": "The Databricks Account in which the endpoint object exists.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "aws_vpc_endpoint_info", + "description": "Info for an AWS VPC endpoint.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AwsVpcEndpointInfo", + "is_object": true + } + }, + { + "name": "azure_private_endpoint_info", + "description": "Info for an Azure private endpoint.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzurePrivateEndpointInfo", + "is_object": true + } + }, + { + "name": "create_time", + "description": "The timestamp when the endpoint was created. The timestamp is in RFC 3339 format in UTC timezone.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "display_name", + "description": "The human-readable display name of this endpoint.\nThe input should conform to RFC-1034, which restricts to letters, numbers, and hyphens,\nwith the first character a letter, the last a letter or a number, and a 63 character maximum.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_id", + "description": "The unique identifier for this endpoint under the account. This field is a UUID generated by Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "gcp_psc_endpoint_info", + "description": "Info for a GCP Private Service Connect endpoint.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GcpPscEndpointInfo", + "is_object": true + } + }, + { + "name": "name", + "description": "The resource name of the endpoint, which uniquely identifies the endpoint.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The cloud provider region where this endpoint is located.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "state", + "description": "The state of the endpoint. The endpoint can only be used if the state is `APPROVED`.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointState", + "enum": [ + { + "content": "APPROVED" + }, + { + "content": "DISCONNECTED" + }, + { + "content": "FAILED" + }, + { + "content": "PENDING" + } + ] + } + }, + { + "name": "use_case", + "description": "The use case that determines the type of network connectivity this endpoint provides.\nThis field is automatically determined based on the endpoint configuration and cloud-specific settings.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointUseCase", + "enum": [ + { + "content": "SERVICE_DIRECT" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The parent resource name of the account under which the endpoint is created.\nFormat: `accounts/{account_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "The human-readable display name of this endpoint.\nThe input should conform to RFC-1034, which restricts to letters, numbers, and hyphens,\nwith the first character a letter, the last a letter or a number, and a 63 character maximum.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The cloud provider region where this endpoint is located.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteEndpoint", + "description": "Deletes a network endpoint. This will remove the endpoint configuration from Databricks.\nDepending on the endpoint type and use case, you may also need to delete corresponding network resources\nin your cloud provider account.", + "summary": "Delete a network endpoint.", + "path": "/api/networking/v1/{name=accounts/*/endpoints/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteEndpointRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetEndpoint", + "description": "Gets details of a specific network endpoint.", + "summary": "Get a network endpoint.", + "path": "/api/networking/v1/{name=accounts/*/endpoints/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetEndpointRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Endpoint", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The human-readable display name of this endpoint.\nThe input should conform to RFC-1034, which restricts to letters, numbers, and hyphens,\nwith the first character a letter, the last a letter or a number, and a 63 character maximum.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The cloud provider region where this endpoint is located.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The human-readable display name of this endpoint.\nThe input should conform to RFC-1034, which restricts to letters, numbers, and hyphens,\nwith the first character a letter, the last a letter or a number, and a 63 character maximum.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The cloud provider region where this endpoint is located.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListEndpoints", + "description": "Lists all network connectivity endpoints for the account.", + "summary": "List network endpoints.", + "path": "/api/networking/v1/{parent=accounts/*}/endpoints", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListEndpointsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The parent resource name of the account to list endpoints for.\nFormat: `accounts/{account_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The parent resource name of the account to list endpoints for.\nFormat: `accounts/{account_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListEndpointsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The parent resource name of the account to list endpoints for.\nFormat: `accounts/{account_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The parent resource name of the account to list endpoints for.\nFormat: `accounts/{account_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "settings.EnhancedSecurityMonitoring", + "name": "EnhancedSecurityMonitoring", + "description": "Controls whether enhanced security monitoring is enabled for the current workspace. If the compliance security profile is enabled, this is automatically enabled.\nBy default, it is disabled. However, if the compliance security profile is enabled, this is automatically enabled.\n\nIf the compliance security profile is disabled, you can enable or disable this setting and it is not permanent.", + "package": { + "name": "settings" + }, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "Get", + "description": "Gets the enhanced security monitoring setting.", + "summary": "Get the enhanced security monitoring setting.", + "path": "/api/2.0/settings/types/shield_esm_enablement_ws_db/names/default", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetEnhancedSecurityMonitoringSettingRequest", + "is_object": true + }, + "response": { + "pascal_name": "EnhancedSecurityMonitoringSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "enhanced_security_monitoring_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnhancedSecurityMonitoring", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "enhanced_security_monitoring_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnhancedSecurityMonitoring", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the enhanced security monitoring setting for the workspace. A fresh etag needs\nto be provided in `PATCH` requests (as part of the setting field). The etag can be retrieved by making a `GET`\nrequest before the `PATCH` request. If the setting is updated concurrently, `PATCH` fails with 409 and the\nrequest must be retried by using the fresh etag in the 409 response.", + "summary": "Update the enhanced security monitoring setting.", + "path": "/api/2.0/settings/types/shield_esm_enablement_ws_db/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateEnhancedSecurityMonitoringSettingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnhancedSecurityMonitoringSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnhancedSecurityMonitoringSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EnhancedSecurityMonitoringSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "enhanced_security_monitoring_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnhancedSecurityMonitoring", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "enhanced_security_monitoring_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnhancedSecurityMonitoring", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EnhancedSecurityMonitoringSetting", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "catalog.EntityTagAssignments", + "name": "EntityTagAssignments", + "description": "Tags are attributes that include keys and optional values that you can use to organize and categorize entities in Unity Catalog. Entity tagging is supported on catalogs, schemas, tables (including views), columns, and volumes.\nWith these APIs, you can create, update, delete, and list tag assignments across Unity Catalog entities.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListEntityTagAssignmentsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a tag assignment for an Unity Catalog entity.\n\nTo add tags to Unity Catalog entities, you must own the entity or have the following privileges:\n- **APPLY TAG** on the entity\n- **USE SCHEMA** on the entity's parent schema\n- **USE CATALOG** on the entity's parent catalog\n\nTo add a governed tag to Unity Catalog entities, you must also have the **ASSIGN** or **MANAGE** permission on the tag policy. See [Manage tag policy permissions](https://docs.databricks.com/aws/en/admin/tag-policies/manage-permissions).", + "summary": "Create an entity tag assignment.", + "path": "/api/2.1/unity-catalog/entity-tag-assignments", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateEntityTagAssignmentRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntityTagAssignment", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntityTagAssignment", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntityTagAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "EntityTagAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntityTagAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The source type of the tag assignment, e.g., user-assigned or system-assigned", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagAssignmentSourceType", + "enum": [ + { + "content": "TAG_ASSIGNMENT_SOURCE_TYPE_SYSTEM_DATA_CLASSIFICATION" + } + ] + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_value", + "description": "The value of the tag", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "The timestamp when the tag assignment was last updated", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "The user or principal who updated the tag assignment", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a tag assignment for an Unity Catalog entity by its key.\n\nTo delete tags from Unity Catalog entities, you must own the entity or have the following privileges:\n- **APPLY TAG** on the entity\n- **USE_SCHEMA** on the entity's parent schema\n- **USE_CATALOG** on the entity's parent catalog\n\nTo delete a governed tag from Unity Catalog entities, you must also have the **ASSIGN** or **MANAGE** permission on the tag policy. See [Manage tag policy permissions](https://docs.databricks.com/aws/en/admin/tag-policies/manage-permissions).", + "summary": "Delete an entity tag assignment.", + "path": "/api/2.1/unity-catalog/entity-tag-assignments/{entity_type}/{entity_name}/tags/{tag_key}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteEntityTagAssignmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "Required. The key of the tag to delete", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "Required. The key of the tag to delete", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "Required. The key of the tag to delete", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "Required. The key of the tag to delete", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a tag assignment for an Unity Catalog entity by tag key.", + "summary": "Get an entity tag assignment.", + "path": "/api/2.1/unity-catalog/entity-tag-assignments/{entity_type}/{entity_name}/tags/{tag_key}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetEntityTagAssignmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "Required. The key of the tag", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "Required. The key of the tag", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EntityTagAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "Required. The key of the tag", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "Required. The key of the tag", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List tag assignments for an Unity Catalog entity\n\nPAGINATION BEHAVIOR: The API is by default paginated, a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List entity tag assignments.", + "path": "/api/2.1/unity-catalog/entity-tag-assignments/{entity_type}/{entity_name}/tags", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListEntityTagAssignmentsRequest", + "is_object": true, + "required_fields": [ + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListEntityTagAssignmentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_results", + "description": "Optional. Maximum number of tag assignments to return in a single page", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Optional. Pagination token to retrieve the next page of results", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Optional. Pagination token to retrieve the next page of results", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Updates an existing tag assignment for an Unity Catalog entity.\n\nTo update tags to Unity Catalog entities, you must own the entity or have the following privileges:\n- **APPLY TAG** on the entity\n- **USE SCHEMA** on the entity's parent schema\n- **USE CATALOG** on the entity's parent catalog\n\nTo update a governed tag to Unity Catalog entities, you must also have the **ASSIGN** or **MANAGE** permission on the tag policy. See [Manage tag policy permissions](https://docs.databricks.com/aws/en/admin/tag-policies/manage-permissions).", + "summary": "Update an entity tag assignment.", + "path": "/api/2.1/unity-catalog/entity-tag-assignments/{entity_type}/{entity_name}/tags/{tag_key}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateEntityTagAssignmentRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntityTagAssignment", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntityTagAssignment", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntityTagAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "EntityTagAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntityTagAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The source type of the tag assignment, e.g., user-assigned or system-assigned", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagAssignmentSourceType", + "enum": [ + { + "content": "TAG_ASSIGNMENT_SOURCE_TYPE_SYSTEM_DATA_CLASSIFICATION" + } + ] + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_value", + "description": "The value of the tag", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "The timestamp when the tag assignment was last updated", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "The user or principal who updated the tag assignment", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "entity_type", + "description": "The type of the entity to which the tag is assigned.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_name", + "description": "The fully qualified name of the entity to which the tag is assigned", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "environments.Environments", + "name": "Environments", + "description": "APIs to manage environment resources.\n\nThe Environments API provides management capabilities for different types of environments\nincluding workspace-level base environments that define the environment version and\ndependencies to be used in serverless notebooks and jobs.", + "package": { + "name": "environments" + }, + "docs_group": "environments", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListWorkspaceBaseEnvironmentsRequest" + } + }, + "methods": [ + { + "name": "CreateWorkspaceBaseEnvironment", + "description": "Creates a new WorkspaceBaseEnvironment.\nThis is a long-running operation. The operation will asynchronously generate a materialized environment\nto optimize dependency resolution and is only marked as done when the materialized environment has been\nsuccessfully generated or has failed.", + "summary": "Create a workspace base environment.", + "path": "/api/environments/v1/workspace-base-environments", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateWorkspaceBaseEnvironmentRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "workspace_base_environment", + "description": "Required. The workspace base environment to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceBaseEnvironment", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "workspace_base_environment", + "description": "Required. The workspace base environment to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceBaseEnvironment", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "workspace_base_environment", + "description": "Required. The workspace base environment to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceBaseEnvironment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Human-readable display name for the workspace base environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Human-readable display name for the workspace base environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "request_id", + "description": "A unique identifier for this request. A random UUID is recommended.\nThis request is only idempotent if a request_id is provided.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_base_environment", + "description": "Required. The workspace base environment to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceBaseEnvironment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Human-readable display name for the workspace base environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Human-readable display name for the workspace base environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "workspace_base_environment_id", + "description": "The ID to use for the workspace base environment, which will become the final component of\nthe resource name.\nThis value should be 4-63 characters, and valid characters are /[a-z][0-9]-/.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "base_environment_type", + "description": "The type of base environment (CPU or GPU).", + "is_request_body_field": true, + "entity": { + "pascal_name": "BaseEnvironmentType", + "enum": [ + { + "content": "CPU" + }, + { + "content": "GPU" + } + ] + } + }, + { + "name": "create_time", + "description": "Timestamp when the environment was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "creator_user_id", + "description": "User ID of the creator.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Human-readable display name for the workspace base environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "filepath", + "description": "The WSFS or UC Volumes path to the environment YAML file.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "is_default", + "description": "Whether this is the default environment for the workspace.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "last_updated_user_id", + "description": "User ID of the last user who updated the environment.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "message", + "description": "Status message providing additional details about the environment status.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The resource name of the workspace base environment.\nFormat: workspace-base-environments/{workspace-base-environment}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "The environment specification containing version and dependencies.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EnvironmentSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "The status of the materialized workspace base environment.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceBaseEnvironmentCacheStatus", + "enum": [ + { + "content": "CREATED" + }, + { + "content": "EXPIRED" + }, + { + "content": "FAILED" + }, + { + "content": "INVALID" + }, + { + "content": "PENDING" + }, + { + "content": "REFRESHING" + } + ] + } + }, + { + "name": "update_time", + "description": "Timestamp when the environment was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "display_name", + "description": "Human-readable display name for the workspace base environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "DeleteWorkspaceBaseEnvironment", + "description": "Deletes a WorkspaceBaseEnvironment.\nDeleting a base environment may impact linked notebooks and jobs.\nThis operation is irreversible and should be performed only when you are certain the environment is no longer needed.", + "summary": "Delete a workspace base environment.", + "path": "/api/environments/v1/{name=workspace-base-environments/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteWorkspaceBaseEnvironmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Required. The resource name of the workspace base environment to delete.\nFormat: workspace-base-environments/{workspace_base_environment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Required. The resource name of the workspace base environment to delete.\nFormat: workspace-base-environments/{workspace_base_environment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The resource name of the workspace base environment to delete.\nFormat: workspace-base-environments/{workspace_base_environment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Required. The resource name of the workspace base environment to delete.\nFormat: workspace-base-environments/{workspace_base_environment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetDefaultWorkspaceBaseEnvironment", + "description": "Gets the default WorkspaceBaseEnvironment configuration for the workspace.\nReturns the current default base environment settings for both CPU and GPU compute.", + "summary": "Get the default workspace base environment configuration.", + "path": "/api/environments/v1/{name=default-workspace-base-environment}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetDefaultWorkspaceBaseEnvironmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "A static resource name of the default workspace base environment.\nFormat: default-workspace-base-environment", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "A static resource name of the default workspace base environment.\nFormat: default-workspace-base-environment", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DefaultWorkspaceBaseEnvironment", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "A static resource name of the default workspace base environment.\nFormat: default-workspace-base-environment", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "A static resource name of the default workspace base environment.\nFormat: default-workspace-base-environment", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetOperation", + "description": "Gets the status of a long-running operation.\nClients can use this method to poll the operation result.", + "summary": "Get the status of a long-running operation.", + "path": "/api/environments/v1/{name=operations/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetOperationRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetWorkspaceBaseEnvironment", + "description": "Retrieves a WorkspaceBaseEnvironment by its name.", + "summary": "Get a workspace base environment.", + "path": "/api/environments/v1/{name=workspace-base-environments/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetWorkspaceBaseEnvironmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Required. The resource name of the workspace base environment to retrieve.\nFormat: workspace-base-environments/{workspace_base_environment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Required. The resource name of the workspace base environment to retrieve.\nFormat: workspace-base-environments/{workspace_base_environment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "WorkspaceBaseEnvironment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Human-readable display name for the workspace base environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Human-readable display name for the workspace base environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The resource name of the workspace base environment to retrieve.\nFormat: workspace-base-environments/{workspace_base_environment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Required. The resource name of the workspace base environment to retrieve.\nFormat: workspace-base-environments/{workspace_base_environment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListWorkspaceBaseEnvironments", + "description": "Lists all WorkspaceBaseEnvironments in the workspace.\n\nDatabricks provides the following base environments:\n\n- `workspace-base-environments/databricks_ai_...`: includes popular AI and deep learning packages for serverless GPU compute.\n\n- `workspace-base-environments/databricks_ml_...`: includes popular ML packages for serverless compute.\n\nDatabricks-provided base environments are versioned. For example, `workspace-base-environments/databricks_ml_v5` corresponds to the ML environment built on environment version 5.", + "summary": "List workspace base environments.", + "path": "/api/environments/v1/workspace-base-environments", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListWorkspaceBaseEnvironmentsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListWorkspaceBaseEnvironmentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of environments to return per page.\nDefault is 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Page token for pagination. Received from a previous ListWorkspaceBaseEnvironments call.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Page token for pagination. Received from a previous ListWorkspaceBaseEnvironments call.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "RefreshWorkspaceBaseEnvironment", + "description": "Refreshes the materialized environment for a WorkspaceBaseEnvironment.\nThis is a long-running operation. The operation will asynchronously regenerate the materialized environment\nand is only marked as done when the materialized environment has been successfully generated or has failed.\nThe existing materialized environment remains available until it expires.", + "summary": "Refresh materialized workspace base environment.", + "path": "/api/environments/v1/{name=workspace-base-environments/*}/refresh", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RefreshWorkspaceBaseEnvironmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Required. The resource name of the workspace base environment to delete.\nFormat: workspace-base-environments/{workspace_base_environment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Required. The resource name of the workspace base environment to delete.\nFormat: workspace-base-environments/{workspace_base_environment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The resource name of the workspace base environment to delete.\nFormat: workspace-base-environments/{workspace_base_environment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Required. The resource name of the workspace base environment to delete.\nFormat: workspace-base-environments/{workspace_base_environment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "UpdateDefaultWorkspaceBaseEnvironment", + "description": "Updates the default WorkspaceBaseEnvironment configuration for the workspace.\nSets the specified base environments as the workspace defaults for CPU and/or GPU compute.", + "summary": "Update the default workspace base environment configuration.", + "path": "/api/environments/v1/{name=default-workspace-base-environment}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateDefaultWorkspaceBaseEnvironmentRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of this singleton resource.\nFormat: default-workspace-base-environment", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "default_workspace_base_environment", + "description": "Required. The default workspace base environment configuration to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWorkspaceBaseEnvironment", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Field mask specifying which fields to update. Use comma as the separator for multiple fields (no space).\nThe special value '*' indicates that all fields should be updated (full replacement).\nValid field paths: cpu_workspace_base_environment, gpu_workspace_base_environment\n\nTo unset one or both defaults, include the field path(s) in the mask and omit them from the request body.\nTo unset both, you must list both paths explicitly — the wildcard '*' cannot be used to unset fields.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of this singleton resource.\nFormat: default-workspace-base-environment", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Field mask specifying which fields to update. Use comma as the separator for multiple fields (no space).\nThe special value '*' indicates that all fields should be updated (full replacement).\nValid field paths: cpu_workspace_base_environment, gpu_workspace_base_environment\n\nTo unset one or both defaults, include the field path(s) in the mask and omit them from the request body.\nTo unset both, you must list both paths explicitly — the wildcard '*' cannot be used to unset fields.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "default_workspace_base_environment", + "description": "Required. The default workspace base environment configuration to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWorkspaceBaseEnvironment", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "default_workspace_base_environment", + "description": "Required. The default workspace base environment configuration to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWorkspaceBaseEnvironment", + "is_object": true + } + }, + "response": { + "pascal_name": "DefaultWorkspaceBaseEnvironment", + "is_object": true + }, + "all_fields": [ + { + "name": "default_workspace_base_environment", + "description": "Required. The default workspace base environment configuration to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWorkspaceBaseEnvironment", + "is_object": true + } + }, + { + "name": "name", + "description": "The resource name of this singleton resource.\nFormat: default-workspace-base-environment", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Field mask specifying which fields to update. Use comma as the separator for multiple fields (no space).\nThe special value '*' indicates that all fields should be updated (full replacement).\nValid field paths: cpu_workspace_base_environment, gpu_workspace_base_environment\n\nTo unset one or both defaults, include the field path(s) in the mask and omit them from the request body.\nTo unset both, you must list both paths explicitly — the wildcard '*' cannot be used to unset fields.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "cpu_workspace_base_environment", + "description": "The default workspace base environment for CPU compute.\nFormat: workspace-base-environments/{workspace_base_environment}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "gpu_workspace_base_environment", + "description": "The default workspace base environment for GPU compute.\nFormat: workspace-base-environments/{workspace_base_environment}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The resource name of this singleton resource.\nFormat: default-workspace-base-environment", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of this singleton resource.\nFormat: default-workspace-base-environment", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Field mask specifying which fields to update. Use comma as the separator for multiple fields (no space).\nThe special value '*' indicates that all fields should be updated (full replacement).\nValid field paths: cpu_workspace_base_environment, gpu_workspace_base_environment\n\nTo unset one or both defaults, include the field path(s) in the mask and omit them from the request body.\nTo unset both, you must list both paths explicitly — the wildcard '*' cannot be used to unset fields.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ] + }, + { + "name": "UpdateWorkspaceBaseEnvironment", + "description": "Updates an existing WorkspaceBaseEnvironment.\nThis is a long-running operation. The operation will asynchronously regenerate the materialized environment\nand is only marked as done when the materialized environment has been successfully generated or has failed.\nThe existing materialized environment remains available until it expires.", + "summary": "Update a workspace base environment.", + "path": "/api/environments/v1/{name=workspace-base-environments/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateWorkspaceBaseEnvironmentRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_base_environment", + "description": "Required. The workspace base environment with updated fields.\nThe name field is used to identify the environment to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceBaseEnvironment", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "workspace_base_environment", + "description": "Required. The workspace base environment with updated fields.\nThe name field is used to identify the environment to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceBaseEnvironment", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "workspace_base_environment", + "description": "Required. The workspace base environment with updated fields.\nThe name field is used to identify the environment to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceBaseEnvironment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Human-readable display name for the workspace base environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Human-readable display name for the workspace base environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_base_environment", + "description": "Required. The workspace base environment with updated fields.\nThe name field is used to identify the environment to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceBaseEnvironment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Human-readable display name for the workspace base environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Human-readable display name for the workspace base environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "base_environment_type", + "description": "The type of base environment (CPU or GPU).", + "is_request_body_field": true, + "entity": { + "pascal_name": "BaseEnvironmentType", + "enum": [ + { + "content": "CPU" + }, + { + "content": "GPU" + } + ] + } + }, + { + "name": "create_time", + "description": "Timestamp when the environment was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "creator_user_id", + "description": "User ID of the creator.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Human-readable display name for the workspace base environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "filepath", + "description": "The WSFS or UC Volumes path to the environment YAML file.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "is_default", + "description": "Whether this is the default environment for the workspace.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "last_updated_user_id", + "description": "User ID of the last user who updated the environment.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "message", + "description": "Status message providing additional details about the environment status.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The resource name of the workspace base environment.\nFormat: workspace-base-environments/{workspace-base-environment}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "The environment specification containing version and dependencies.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EnvironmentSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "The status of the materialized workspace base environment.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceBaseEnvironmentCacheStatus", + "enum": [ + { + "content": "CREATED" + }, + { + "content": "EXPIRED" + }, + { + "content": "FAILED" + }, + { + "content": "INVALID" + }, + { + "content": "PENDING" + }, + { + "content": "REFRESHING" + } + ] + } + }, + { + "name": "update_time", + "description": "Timestamp when the environment was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Human-readable display name for the workspace base environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + } + ] + }, + { + "id": "settings.EsmEnablementAccount", + "name": "EsmEnablementAccount", + "description": "The enhanced security monitoring setting at the account level controls whether to enable the feature on new workspaces.\nBy default, this account-level setting is disabled for new workspaces. After workspace creation, account admins can enable enhanced security monitoring individually for each workspace.", + "package": { + "name": "settings" + }, + "is_accounts": true, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "parent_service_id": "settings.AccountSettings", + "methods": [ + { + "name": "Get", + "description": "Gets the enhanced security monitoring setting for new workspaces.", + "summary": "Get the enhanced security monitoring setting for new workspaces.", + "path": "/api/2.0/accounts/{account_id}/settings/types/shield_esm_enablement_ac/names/default", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetEsmEnablementAccountSettingRequest", + "is_object": true + }, + "response": { + "pascal_name": "EsmEnablementAccountSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "esm_enablement_account", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EsmEnablementAccount", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "esm_enablement_account", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EsmEnablementAccount", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the value of the enhanced security monitoring setting for new workspaces.", + "summary": "Update the enhanced security monitoring setting for new workspaces.", + "path": "/api/2.0/accounts/{account_id}/settings/types/shield_esm_enablement_ac/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateEsmEnablementAccountSettingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EsmEnablementAccountSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EsmEnablementAccountSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EsmEnablementAccountSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "esm_enablement_account", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EsmEnablementAccount", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "esm_enablement_account", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EsmEnablementAccount", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EsmEnablementAccountSetting", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "ml.Experiments", + "name": "Experiments", + "description": "Experiments are the primary unit of organization in MLflow; all MLflow runs belong to an experiment. Each experiment lets you visualize, search, and compare runs, as well as download run artifacts or metadata for analysis in other tools. Experiments are maintained in a Databricks hosted MLflow tracking server.\n\nExperiments are located in the workspace file tree. You manage experiments using the same tools you use to manage other workspace objects such as folders, notebooks, and libraries.", + "package": { + "name": "ml" + }, + "docs_group": "ml", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "GetHistoryRequest" + } + }, + "methods": [ + { + "name": "CreateExperiment", + "description": "Creates an experiment with a name. Returns the ID of the newly created experiment.\nValidates that another experiment with the same name does not already exist and fails\nif another experiment with the same name already exists.\n\nThrows `RESOURCE_ALREADY_EXISTS` if an experiment with the given name exists.\nNote: In some contexts, this error may be remapped to `ALREADY_EXISTS`.\nTo be safe, clients should check for both error codes.", + "summary": "Create experiment.", + "path": "/api/2.0/mlflow/experiments/create", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateExperiment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Experiment name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Experiment name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateExperimentResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "artifact_location", + "description": "Location where all artifacts for the experiment are stored.\nIf not provided, the remote server will select an appropriate default.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Experiment name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tags", + "description": "A collection of tags to set on the experiment. Maximum tag size and number of tags per request\ndepends on the storage backend. All storage backends are guaranteed to support tag keys up\nto 250 bytes in size and tag values up to 5000 bytes in size. All storage backends are also\nguaranteed to support up to 20 tags per request.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ExperimentTagList", + "array_value": { + "pascal_name": "ExperimentTag", + "is_object": true + } + } + }, + { + "name": "trace_location", + "description": "The location where the experiment's traces are stored. When set, the\nunderlying storage is provisioned and the experiment's traces are routed\nto it. When unset, traces are stored in the default MLflow backend. This\nfield cannot be updated after the experiment is created.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ExperimentTraceLocation", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Experiment name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateIssue", + "description": "Creates an issue in an experiment.", + "summary": "Create an issue.", + "path": "/api/2.0/mlflow/{parent=experiments/*}/issues", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateIssueRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "experiments/{experiment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "issue", + "description": "Output-only fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Issue", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "experiments/{experiment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "issue", + "description": "Output-only fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Issue", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "issue", + "description": "Output-only fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Issue", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "Issue", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "issue", + "description": "Output-only fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Issue", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ] + } + }, + { + "name": "issue_id", + "description": "Optional client-chosen ID: iss- followed by 32 lowercase hex digits. A retry\nwith the same ID fails with ALREADY_EXISTS rather than making a duplicate.\nThe server generates one if unset.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "experiments/{experiment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "categories", + "description": "At most 10 values of at most 64 UTF-8 bytes each, unique case-insensitively.\nLeading and trailing whitespace is trimmed.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "create_time", + "description": "When the Issue was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "The email of the user whose request created the Issue. source_type tells\nwhether issue detection created it.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Markdown, at most 32 KiB.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "issue_id", + "description": "The last segment of `name`. Issue assessments on traces reference the Issue\nby this ID.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "last_seen_time", + "description": "The request time of the latest trace the Issue affects. Required, and can't\nbe cleared, unless source_type is MANUAL. A MANUAL Issue without one returns\nits create_time.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "last_updated_by", + "description": "The email of the user whose request last updated the Issue.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metadata", + "description": "Additional details about the Issue, such as how issue detection observed it.\nNot a stable contract: keys and values can change without notice, so clients\nmust tolerate unknown and missing keys. At most 20 entries, with keys of at\nmost 64 UTF-8 bytes.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "name", + "description": "experiments/{experiment}/issues/{issue}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + }, + { + "name": "source_id", + "description": "Set once at create. For ADHOC_RUN and SCHEDULED_RUN, the ID of the issue\ndetection run in the same experiment that created the Issue. Absent for\nMANUAL.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "Set once at create. Defaults to MANUAL.", + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSourceType", + "enum": [ + { + "content": "ADHOC_RUN" + }, + { + "content": "MANUAL" + }, + { + "content": "SCHEDULED_RUN" + }, + { + "content": "SINGLE_TRACE_ANALYSIS" + } + ] + } + }, + { + "name": "status", + "description": "Defaults to PENDING on create, and can't be cleared.", + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueStatus", + "enum": [ + { + "content": "PENDING" + }, + { + "content": "REJECTED" + }, + { + "content": "RESOLVED" + } + ] + } + }, + { + "name": "tags", + "description": "Caller-owned; the server never writes system values here. At most 10\nentries. Keys match ^[A-Za-z0-9_.:/-]+$ and are at most 128 UTF-8 bytes;\nvalues are at most 256 UTF-8 bytes.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "When the Issue was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "experiments/{experiment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ] + }, + { + "name": "CreateLoggedModel", + "description": "Create a logged model.", + "summary": "Create a logged model.", + "path": "/api/2.0/mlflow/logged-models", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateLoggedModelRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "experiment_id", + "description": "The ID of the experiment that owns the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "experiment_id", + "description": "The ID of the experiment that owns the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateLoggedModelResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "experiment_id", + "description": "The ID of the experiment that owns the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "model_type", + "description": "The type of the model, such as ``\"Agent\"``, ``\"Classifier\"``, ``\"LLM\"``.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the model (optional). If not specified one will be generated.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "params", + "description": "Parameters attached to the model.", + "is_request_body_field": true, + "entity": { + "pascal_name": "LoggedModelParameterList", + "array_value": { + "pascal_name": "LoggedModelParameter", + "is_object": true + } + } + }, + { + "name": "source_run_id", + "description": "The ID of the run that created the model.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tags", + "description": "Tags attached to the model.", + "is_request_body_field": true, + "entity": { + "pascal_name": "LoggedModelTagList", + "array_value": { + "pascal_name": "LoggedModelTag", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "experiment_id", + "description": "The ID of the experiment that owns the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateRun", + "description": "Creates a new run within an experiment. A run is usually a single execution of a\nmachine learning or data ETL pipeline. MLflow uses runs to track the `mlflowParam`,\n`mlflowMetric`, and `mlflowRunTag` associated with a single execution.", + "summary": "Create a run.", + "path": "/api/2.0/mlflow/runs/create", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateRun", + "is_object": true + }, + "response": { + "pascal_name": "CreateRunResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_name", + "description": "The name of the run.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "start_time", + "description": "Unix timestamp in milliseconds of when the run started.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "tags", + "description": "Additional metadata for run.", + "is_request_body_field": true, + "entity": { + "pascal_name": "RunTagList", + "array_value": { + "pascal_name": "RunTag", + "is_object": true + } + } + }, + { + "name": "user_id", + "description": "ID of the user executing the run.\nThis field is deprecated as of MLflow 1.0, and will be removed in a future\nMLflow release. Use 'mlflow.user' tag instead.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteExperiment", + "description": "Marks an experiment and associated metadata, runs, metrics, params, and tags for deletion.\nIf the experiment uses FileStore, artifacts associated with the experiment are also deleted.", + "summary": "Delete an experiment.", + "path": "/api/2.0/mlflow/experiments/delete", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteExperiment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteExperimentResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteLoggedModel", + "description": "Delete a logged model.", + "summary": "Delete a logged model.", + "path": "/api/2.0/mlflow/logged-models/{model_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteLoggedModelRequest", + "is_object": true, + "required_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteLoggedModelResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "model_id", + "description": "The ID of the logged model to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteLoggedModelTag", + "description": "Delete a tag on a logged model.", + "summary": "Delete a tag on a logged model.", + "path": "/api/2.0/mlflow/logged-models/{model_id}/tags/{tag_key}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteLoggedModelTagRequest", + "is_object": true, + "required_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to delete the tag from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The tag key.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to delete the tag from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The tag key.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteLoggedModelTagResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to delete the tag from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The tag key.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "model_id", + "description": "The ID of the logged model to delete the tag from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The tag key.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteRun", + "description": "Marks a run for deletion.", + "summary": "Delete a run.", + "path": "/api/2.0/mlflow/runs/delete", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteRun", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "run_id", + "description": "ID of the run to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "run_id", + "description": "ID of the run to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteRunResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "run_id", + "description": "ID of the run to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "run_id", + "description": "ID of the run to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteRuns", + "description": "Bulk delete runs in an experiment that were created prior to or at the specified timestamp. Deletes at most\nmax_runs per request. See the cloud-specific MLflow runs documentation for a Python client example.", + "summary": "Delete runs by creation time.", + "path": "/api/2.0/mlflow/databricks/runs/delete-runs", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteRuns", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "experiment_id", + "description": "The ID of the experiment containing the runs to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_timestamp_millis", + "description": "The maximum creation timestamp in milliseconds since the UNIX epoch for deleting runs. Only runs created prior to\nor at this timestamp are deleted.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "experiment_id", + "description": "The ID of the experiment containing the runs to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_timestamp_millis", + "description": "The maximum creation timestamp in milliseconds since the UNIX epoch for deleting runs. Only runs created prior to\nor at this timestamp are deleted.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteRunsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "experiment_id", + "description": "The ID of the experiment containing the runs to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_runs", + "description": "An optional positive integer indicating the maximum number of runs to delete. The maximum allowed value for\nmax_runs is 10000.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "max_timestamp_millis", + "description": "The maximum creation timestamp in milliseconds since the UNIX epoch for deleting runs. Only runs created prior to\nor at this timestamp are deleted.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "experiment_id", + "description": "The ID of the experiment containing the runs to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_timestamp_millis", + "description": "The maximum creation timestamp in milliseconds since the UNIX epoch for deleting runs. Only runs created prior to\nor at this timestamp are deleted.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "DeleteTag", + "description": "Deletes a tag on a run. Tags are run metadata that can be updated during a run and after\na run completes.", + "summary": "Delete a tag on a run.", + "path": "/api/2.0/mlflow/runs/delete-tag", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteTag", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "run_id", + "description": "ID of the run that the tag was logged under. Must be provided.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. Maximum size is 255 bytes. Must be provided.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "run_id", + "description": "ID of the run that the tag was logged under. Must be provided.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. Maximum size is 255 bytes. Must be provided.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteTagResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "key", + "description": "Name of the tag. Maximum size is 255 bytes. Must be provided.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_id", + "description": "ID of the run that the tag was logged under. Must be provided.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "run_id", + "description": "ID of the run that the tag was logged under. Must be provided.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. Maximum size is 255 bytes. Must be provided.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "FinalizeLoggedModel", + "description": "Finalize a logged model.", + "summary": "Finalize a logged model.", + "path": "/api/2.0/mlflow/logged-models/{model_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "FinalizeLoggedModelRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to finalize.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Whether or not the model is ready for use. ``\"LOGGED_MODEL_UPLOAD_FAILED\"`` indicates that something went wrong\nwhen logging the model weights / agent code.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LoggedModelStatus", + "enum": [ + { + "content": "LOGGED_MODEL_PENDING" + }, + { + "content": "LOGGED_MODEL_READY" + }, + { + "content": "LOGGED_MODEL_UPLOAD_FAILED" + } + ] + } + } + ], + "required_in_url_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to finalize.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "status", + "description": "Whether or not the model is ready for use. ``\"LOGGED_MODEL_UPLOAD_FAILED\"`` indicates that something went wrong\nwhen logging the model weights / agent code.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LoggedModelStatus", + "enum": [ + { + "content": "LOGGED_MODEL_PENDING" + }, + { + "content": "LOGGED_MODEL_READY" + }, + { + "content": "LOGGED_MODEL_UPLOAD_FAILED" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "FinalizeLoggedModelResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to finalize.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Whether or not the model is ready for use. ``\"LOGGED_MODEL_UPLOAD_FAILED\"`` indicates that something went wrong\nwhen logging the model weights / agent code.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LoggedModelStatus", + "enum": [ + { + "content": "LOGGED_MODEL_PENDING" + }, + { + "content": "LOGGED_MODEL_READY" + }, + { + "content": "LOGGED_MODEL_UPLOAD_FAILED" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "model_id", + "description": "The ID of the logged model to finalize.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Whether or not the model is ready for use. ``\"LOGGED_MODEL_UPLOAD_FAILED\"`` indicates that something went wrong\nwhen logging the model weights / agent code.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LoggedModelStatus", + "enum": [ + { + "content": "LOGGED_MODEL_PENDING" + }, + { + "content": "LOGGED_MODEL_READY" + }, + { + "content": "LOGGED_MODEL_UPLOAD_FAILED" + } + ] + } + } + ] + }, + { + "name": "GetByName", + "description": "Gets metadata for an experiment.\n\nThis endpoint will return deleted experiments, but prefers the active experiment\nif an active and deleted experiment share the same name. If multiple deleted\nexperiments share the same name, the API will return one of them.\n\nThrows `RESOURCE_DOES_NOT_EXIST` if no experiment with the specified name exists.", + "summary": "Get an experiment by name.", + "path": "/api/2.0/mlflow/experiments/get-by-name", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetByNameRequest", + "is_object": true, + "required_fields": [ + { + "name": "experiment_name", + "description": "Name of the associated experiment.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "experiment_name", + "description": "Name of the associated experiment.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetExperimentByNameResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "experiment_name", + "description": "Name of the associated experiment.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "experiment_name", + "description": "Name of the associated experiment.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetExperiment", + "description": "Gets metadata for an experiment. This method works on deleted experiments.", + "summary": "Get an experiment.", + "path": "/api/2.0/mlflow/experiments/get", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetExperimentRequest", + "is_object": true, + "required_fields": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetExperimentResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetHistory", + "description": "Gets a list of all values for the specified metric for a given run.", + "summary": "Get metric history for a run.", + "path": "/api/2.0/mlflow/metrics/get-history", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetHistoryRequest", + "is_object": true, + "required_fields": [ + { + "name": "metric_key", + "description": "Name of the metric.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "metric_key", + "description": "Name of the metric.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetMetricHistoryResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "max_results", + "description": "Maximum number of Metric records to return per paginated request. Default is set to 25,000. If set higher than\n25,000, a request Exception will be raised.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "metric_key", + "description": "Name of the metric.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_token", + "description": "Token indicating the page of metric histories to fetch.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_id", + "description": "ID of the run from which to fetch metric values. Must be provided.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_uuid", + "description": "[Deprecated, use `run_id` instead] ID of the run from which to fetch metric values. This field\nwill be removed in a future MLflow version.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "metric_key", + "description": "Name of the metric.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Token indicating the page of metric histories to fetch.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "GetIssue", + "description": "Gets an issue.", + "summary": "Get an issue.", + "path": "/api/2.0/mlflow/{name=experiments/*/issues/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetIssueRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "experiments/{experiment}/issues/{issue}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "experiments/{experiment}/issues/{issue}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Issue", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "experiments/{experiment}/issues/{issue}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "experiments/{experiment}/issues/{issue}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetLoggedModel", + "description": "Get a logged model.", + "summary": "Get a logged model.", + "path": "/api/2.0/mlflow/logged-models/{model_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetLoggedModelRequest", + "is_object": true, + "required_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to retrieve.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to retrieve.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetLoggedModelResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to retrieve.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "model_id", + "description": "The ID of the logged model to retrieve.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get experiment permission levels.", + "path": "/api/2.0/permissions/experiments/{experiment_id}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetExperimentPermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetExperimentPermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of an experiment. Experiments can inherit permissions from their root object.", + "summary": "Get experiment permissions.", + "path": "/api/2.0/permissions/experiments/{experiment_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetExperimentPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExperimentPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetRun", + "description": "Gets the metadata, metrics, params, and tags for a run. In the case where multiple metrics with the same key are\nlogged for a run, return only the value with the latest timestamp.\n\nIf there are multiple values with the latest timestamp, return the maximum of these values.", + "summary": "Get a run.", + "path": "/api/2.0/mlflow/runs/get", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetRunRequest", + "is_object": true, + "required_fields": [ + { + "name": "run_id", + "description": "ID of the run to fetch. Must be provided.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "run_id", + "description": "ID of the run to fetch. Must be provided.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetRunResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "run_id", + "description": "ID of the run to fetch. Must be provided.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_uuid", + "description": "[Deprecated, use `run_id` instead] ID of the run to fetch. This field will\nbe removed in a future MLflow version.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "run_id", + "description": "ID of the run to fetch. Must be provided.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListArtifacts", + "description": "List artifacts for a run. Takes an optional `artifact_path` prefix which if specified,\nthe response contains only artifacts with the specified prefix.\nA maximum of 1000 artifacts will be retrieved for UC Volumes. Please call\n`/api/2.0/fs/directories{directory_path}` for listing artifacts in UC Volumes, which supports pagination. See [List\ndirectory contents | Files API](/api/workspace/files/listdirectorycontents).", + "summary": "List artifacts.", + "path": "/api/2.0/mlflow/artifacts/list", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListArtifactsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListArtifactsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_token", + "description": "The token indicating the page of artifact results to fetch. `page_token` is not supported when listing artifacts in UC\nVolumes. A maximum of 1000 artifacts will be retrieved for UC Volumes. Please call\n`/api/2.0/fs/directories{directory_path}` for listing artifacts in UC Volumes, which supports pagination. See [List\ndirectory contents | Files API](/api/workspace/files/listdirectorycontents).", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Filter artifacts matching this path (a relative path from the root artifact directory).", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_id", + "description": "ID of the run whose artifacts to list. Must be provided.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_uuid", + "description": "[Deprecated, use `run_id` instead] ID of the run whose artifacts to list. This field will\nbe removed in a future MLflow version.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "The token indicating the page of artifact results to fetch. `page_token` is not supported when listing artifacts in UC\nVolumes. A maximum of 1000 artifacts will be retrieved for UC Volumes. Please call\n`/api/2.0/fs/directories{directory_path}` for listing artifacts in UC Volumes, which supports pagination. See [List\ndirectory contents | Files API](/api/workspace/files/listdirectorycontents).", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListExperiments", + "description": "Gets a list of all experiments.", + "summary": "List experiments.", + "path": "/api/2.0/mlflow/experiments/list", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListExperimentsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListExperimentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "max_results", + "description": "Maximum number of experiments desired.\nIf `max_results` is unspecified, return all experiments.\nIf `max_results` is too large, it'll be automatically capped at 1000.\nCallers of this endpoint are encouraged to pass max_results explicitly and leverage\npage_token to iterate through experiments.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "page_token", + "description": "Token indicating the page of experiments to fetch", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "view_type", + "description": "Qualifier for type of experiments to be returned.\nIf unspecified, return only active experiments.", + "is_query": true, + "entity": { + "pascal_name": "ViewType", + "enum": [ + { + "content": "ACTIVE_ONLY" + }, + { + "content": "ALL" + }, + { + "content": "DELETED_ONLY" + } + ] + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Token indicating the page of experiments to fetch", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "LogBatch", + "description": "Logs a batch of metrics, params, and tags for a run. If any data failed to be persisted, the server will respond\nwith an error (non-200 status code).\n\nIn case of error (due to internal server error or an invalid request), partial data may be written.\n\nYou can write metrics, params, and tags in interleaving fashion, but within a given entity type are guaranteed to\nfollow the order specified in the request body.\n\nThe overwrite behavior for metrics, params, and tags is as follows:\n\n* Metrics: metric values are never overwritten. Logging a metric (key, value, timestamp) appends to the set of values\nfor the metric with the provided key.\n\n* Tags: tag values can be overwritten by successive writes to the same tag key. That is, if multiple tag values\nwith the same key are provided in the same API request, the last-provided tag value is written. Logging the same\ntag (key, value) is permitted. Specifically, logging a tag is idempotent.\n\n* Parameters: once written, param values cannot be changed (attempting to overwrite a param value will result in an\nerror). However, logging the same param (key, value) is permitted. Specifically, logging a param is idempotent.\n\nRequest Limits\n-------------------------------\nA single JSON-serialized API request may be up to 1 MB in size and contain:\n\n* No more than 1000 metrics, params, and tags in total\n\n* Up to 1000 metrics\n\n* Up to 100 params\n\n* Up to 100 tags\n\nFor example, a valid request might contain 900 metrics, 50 params, and 50 tags, but logging 900 metrics, 50 params,\nand 51 tags is invalid.\n\nThe following limits also apply to metric, param, and tag keys and values:\n\n* Metric keys, param keys, and tag keys can be up to 250 characters in length\n\n* Parameter and tag values can be up to 250 characters in length", + "summary": "Log a batch of metrics/params/tags for a run.", + "path": "/api/2.0/mlflow/runs/log-batch", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "LogBatch", + "is_object": true + }, + "response": { + "pascal_name": "LogBatchResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "metrics", + "description": "Metrics to log. A single request can contain up to 1000 metrics, and up to 1000\nmetrics, params, and tags in total.", + "is_request_body_field": true, + "entity": { + "pascal_name": "MetricList", + "array_value": { + "pascal_name": "Metric", + "is_object": true + } + } + }, + { + "name": "params", + "description": "Params to log. A single request can contain up to 100 params, and up to 1000\nmetrics, params, and tags in total.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ParamList", + "array_value": { + "pascal_name": "Param", + "is_object": true + } + } + }, + { + "name": "run_id", + "description": "ID of the run to log under", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tags", + "description": "Tags to log. A single request can contain up to 100 tags, and up to 1000\nmetrics, params, and tags in total.", + "is_request_body_field": true, + "entity": { + "pascal_name": "RunTagList", + "array_value": { + "pascal_name": "RunTag", + "is_object": true + } + } + } + ] + }, + { + "name": "LogInputs", + "description": "Logs inputs, such as datasets and models, to an MLflow Run.", + "summary": "Log inputs to a run.", + "path": "/api/2.0/mlflow/runs/log-inputs", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "LogInputs", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "run_id", + "description": "ID of the run to log under", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "run_id", + "description": "ID of the run to log under", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "LogInputsResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "datasets", + "description": "Dataset inputs", + "is_request_body_field": true, + "entity": { + "pascal_name": "DatasetInputList", + "array_value": { + "pascal_name": "DatasetInput", + "is_object": true + } + } + }, + { + "name": "models", + "description": "Model inputs", + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelInputList", + "array_value": { + "pascal_name": "ModelInput", + "is_object": true + } + } + }, + { + "name": "run_id", + "description": "ID of the run to log under", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "run_id", + "description": "ID of the run to log under", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "LogLoggedModelParams", + "description": "Logs params for a logged model. A param is a key-value pair (string key, string value). Examples include\nhyperparameters used for ML model training. A param can be logged only once for a logged model, and\nattempting to overwrite an existing param with a different value will result in an error", + "summary": "Log params for a logged model.", + "path": "/api/2.0/mlflow/logged-models/{model_id}/params", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "LogLoggedModelParamsRequest", + "is_object": true, + "required_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to log params for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to log params for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "LogLoggedModelParamsRequestResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to log params for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "params", + "description": "Parameters to attach to the model.", + "is_request_body_field": true, + "entity": { + "pascal_name": "LoggedModelParameterList", + "array_value": { + "pascal_name": "LoggedModelParameter", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "model_id", + "description": "The ID of the logged model to log params for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "LogMetric", + "description": "Log a metric for a run. A metric is a key-value pair (string key, float value) with an\nassociated timestamp. Examples include the various metrics that represent ML model accuracy.\nA metric can be logged multiple times.", + "summary": "Log a metric for a run.", + "path": "/api/2.0/mlflow/runs/log-metric", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "LogMetric", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "key", + "description": "Name of the metric.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "Double value of the metric being logged.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_float64": true + } + }, + { + "name": "timestamp", + "description": "Unix timestamp in milliseconds at the time metric was logged.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "key", + "description": "Name of the metric.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "Double value of the metric being logged.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_float64": true + } + }, + { + "name": "timestamp", + "description": "Unix timestamp in milliseconds at the time metric was logged.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "LogMetricResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "dataset_digest", + "description": "Dataset digest of the dataset associated with the metric,\ne.g. an md5 hash of the dataset that uniquely identifies it\nwithin datasets of the same name.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "dataset_name", + "description": "The name of the dataset associated with the metric.\nE.g. “my.uc.table@2” “nyc-taxi-dataset”, “fantastic-elk-3”", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the metric.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "model_id", + "description": "ID of the logged model associated with the metric, if applicable", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_id", + "description": "ID of the run under which to log the metric. Must be provided.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_uuid", + "description": "[Deprecated, use `run_id` instead] ID of the run under which to log the metric. This field will\nbe removed in a future MLflow version.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "step", + "description": "Step at which to log the metric", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "timestamp", + "description": "Unix timestamp in milliseconds at the time metric was logged.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "value", + "description": "Double value of the metric being logged.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_float64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "key", + "description": "Name of the metric.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "Double value of the metric being logged.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_float64": true + } + }, + { + "name": "timestamp", + "description": "Unix timestamp in milliseconds at the time metric was logged.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "LogModel", + "description": "**Note:** the [Create a logged model](/api/workspace/experiments/createloggedmodel) API replaces this endpoint.\n\nLog a model to an MLflow Run.", + "summary": "Log a model.", + "path": "/api/2.0/mlflow/runs/log-model", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "LogModel", + "is_object": true + }, + "response": { + "pascal_name": "LogModelResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "model_json", + "description": "MLmodel file in json format.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_id", + "description": "ID of the run to log under", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "LogOutputs", + "description": "Logs outputs, such as models, from an MLflow Run.", + "summary": "Log outputs from a run.", + "path": "/api/2.0/mlflow/runs/outputs", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "LogOutputsRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "run_id", + "description": "The ID of the Run from which to log outputs.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "run_id", + "description": "The ID of the Run from which to log outputs.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "LogOutputsResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "models", + "description": "The model outputs from the Run.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelOutputList", + "array_value": { + "pascal_name": "ModelOutput", + "is_object": true + } + } + }, + { + "name": "run_id", + "description": "The ID of the Run from which to log outputs.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "run_id", + "description": "The ID of the Run from which to log outputs.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "LogParam", + "description": "Logs a param used for a run. A param is a key-value pair (string key,\nstring value). Examples include hyperparameters used for ML model training and\nconstant dates and values used in an ETL pipeline. A param can be logged only once for a run.", + "summary": "Log a param for a run.", + "path": "/api/2.0/mlflow/runs/log-parameter", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "LogParam", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "key", + "description": "Name of the param. Maximum size is 255 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the param being logged. Maximum size is 500 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "key", + "description": "Name of the param. Maximum size is 255 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the param being logged. Maximum size is 500 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "LogParamResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "key", + "description": "Name of the param. Maximum size is 255 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_id", + "description": "ID of the run under which to log the param. Must be provided.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_uuid", + "description": "[Deprecated, use `run_id` instead] ID of the run under which to log the param. This field will\nbe removed in a future MLflow version.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the param being logged. Maximum size is 500 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "key", + "description": "Name of the param. Maximum size is 255 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the param being logged. Maximum size is 500 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "RestoreExperiment", + "description": "Restore an experiment marked for deletion. This also restores\nassociated metadata, runs, metrics, params, and tags. If experiment uses FileStore, underlying\nartifacts associated with experiment are also restored.\n\nThrows `RESOURCE_DOES_NOT_EXIST` if experiment was never created or was permanently deleted.", + "summary": "Restore an experiment.", + "path": "/api/2.0/mlflow/experiments/restore", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RestoreExperiment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RestoreExperimentResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "RestoreRun", + "description": "Restores a deleted run. This also restores associated metadata, runs, metrics, params, and tags.\n\nThrows `RESOURCE_DOES_NOT_EXIST` if the run was never created or was permanently deleted.", + "summary": "Restore a run.", + "path": "/api/2.0/mlflow/runs/restore", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RestoreRun", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "run_id", + "description": "ID of the run to restore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "run_id", + "description": "ID of the run to restore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RestoreRunResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "run_id", + "description": "ID of the run to restore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "run_id", + "description": "ID of the run to restore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "RestoreRuns", + "description": "Bulk restore runs in an experiment that were deleted no earlier than the specified timestamp. Restores at most\nmax_runs per request. See the cloud-specific MLflow runs documentation for a Python client example.", + "summary": "Restore runs by deletion time.", + "path": "/api/2.0/mlflow/databricks/runs/restore-runs", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RestoreRuns", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "experiment_id", + "description": "The ID of the experiment containing the runs to restore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "min_timestamp_millis", + "description": "The minimum deletion timestamp in milliseconds since the UNIX epoch for restoring runs. Only runs deleted no\nearlier than this timestamp are restored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "experiment_id", + "description": "The ID of the experiment containing the runs to restore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "min_timestamp_millis", + "description": "The minimum deletion timestamp in milliseconds since the UNIX epoch for restoring runs. Only runs deleted no\nearlier than this timestamp are restored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "RestoreRunsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "experiment_id", + "description": "The ID of the experiment containing the runs to restore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_runs", + "description": "An optional positive integer indicating the maximum number of runs to restore. The maximum allowed value for\nmax_runs is 10000.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "min_timestamp_millis", + "description": "The minimum deletion timestamp in milliseconds since the UNIX epoch for restoring runs. Only runs deleted no\nearlier than this timestamp are restored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "experiment_id", + "description": "The ID of the experiment containing the runs to restore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "min_timestamp_millis", + "description": "The minimum deletion timestamp in milliseconds since the UNIX epoch for restoring runs. Only runs deleted no\nearlier than this timestamp are restored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "SearchExperiments", + "description": "Searches for experiments that satisfy specified search criteria.", + "summary": "Search experiments.", + "path": "/api/2.0/mlflow/experiments/search", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SearchExperiments", + "is_object": true + }, + "response": { + "pascal_name": "SearchExperimentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter", + "description": "String representing a SQL filter condition (e.g. \"name ILIKE 'my-experiment%'\")", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_results", + "description": "Maximum number of experiments desired. Max threshold is 3000.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "order_by", + "description": "List of columns for ordering search results, which can include experiment name and last updated\ntimestamp with an optional \"DESC\" or \"ASC\" annotation, where \"ASC\" is the default.\nTiebreaks are done by experiment id DESC.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "page_token", + "description": "Token indicating the page of experiments to fetch", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "view_type", + "description": "Qualifier for type of experiments to be returned.\nIf unspecified, return only active experiments.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ViewType", + "enum": [ + { + "content": "ACTIVE_ONLY" + }, + { + "content": "ALL" + }, + { + "content": "DELETED_ONLY" + } + ] + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Token indicating the page of experiments to fetch", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "SearchIssues", + "description": "Searches the issues in an experiment, filtered and sorted.", + "summary": "Search issues in an experiment.", + "path": "/api/2.0/mlflow/{parent=experiments/*}/issues:search", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "SearchIssuesRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "experiments/{experiment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "experiments/{experiment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SearchIssuesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "categories", + "description": "Matches Issues with any of these categories, case-insensitively.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "page_size", + "description": "Defaults to 20; values above 100 are clamped.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Expires after 15 minutes. Every other argument except `view` must match the\nrequest that returned the token.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "experiments/{experiment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "query", + "description": "Case-insensitive substring match on title.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severities", + "description": "Matches Issues with any of these severities.", + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverityList", + "array_value": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + }, + { + "name": "sort_key", + "description": "Defaults to SEVERITY.", + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSortKey", + "enum": [ + { + "content": "CREATE_TIME" + }, + { + "content": "LAST_SEEN_TIME" + }, + { + "content": "SEVERITY" + }, + { + "content": "UPDATE_TIME" + } + ] + } + }, + { + "name": "sort_order", + "description": "Defaults to DESCENDING.", + "is_request_body_field": true, + "entity": { + "pascal_name": "SortOrder", + "enum": [ + { + "content": "ASCENDING" + }, + { + "content": "DESCENDING" + } + ] + } + }, + { + "name": "statuses", + "description": "Matches Issues with any of these statuses. Different filters AND together,\nand an empty filter matches every Issue.", + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueStatusList", + "array_value": { + "pascal_name": "IssueStatus", + "enum": [ + { + "content": "PENDING" + }, + { + "content": "REJECTED" + }, + { + "content": "RESOLVED" + } + ] + } + } + }, + { + "name": "tag_filters", + "description": "Matches Issues that satisfy every filter. At most 10 filters of 20 values\neach.", + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueTagFilterList", + "array_value": { + "pascal_name": "IssueTagFilter", + "is_object": true + } + } + }, + { + "name": "view", + "description": "Defaults to BASIC.", + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueView", + "enum": [ + { + "content": "BASIC" + }, + { + "content": "FULL" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "experiments/{experiment}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Expires after 15 minutes. Every other argument except `view` must match the\nrequest that returned the token.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "SearchLoggedModels", + "description": "Search for Logged Models that satisfy specified search criteria.", + "summary": "Search logged models.", + "path": "/api/2.0/mlflow/logged-models/search", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SearchLoggedModelsRequest", + "is_object": true + }, + "response": { + "pascal_name": "SearchLoggedModelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "datasets", + "description": "List of datasets on which to apply the metrics filter clauses.\nFor example, a filter with `metrics.accuracy \u003e 0.9` and dataset info with name \"test_dataset\"\nmeans we will return all logged models with accuracy \u003e 0.9 on the test_dataset.\nMetric values from ANY dataset matching the criteria are considered.\nIf no datasets are specified, then metrics across all datasets are considered in the filter.", + "is_request_body_field": true, + "entity": { + "pascal_name": "SearchLoggedModelsDatasetList", + "array_value": { + "pascal_name": "SearchLoggedModelsDataset", + "is_object": true + } + } + }, + { + "name": "experiment_ids", + "description": "The IDs of the experiments in which to search for logged models.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "filter", + "description": "A filter expression over logged model info and data that allows returning a subset of\nlogged models. The syntax is a subset of SQL that supports AND'ing together binary operations.\n\nExample: ``params.alpha \u003c 0.3 AND metrics.accuracy \u003e 0.9``.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_results", + "description": "The maximum number of Logged Models to return. The maximum limit is 50.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "order_by", + "description": "The list of columns for ordering the results, with additional fields for sorting criteria.", + "is_request_body_field": true, + "entity": { + "pascal_name": "SearchLoggedModelsOrderByList", + "array_value": { + "pascal_name": "SearchLoggedModelsOrderBy", + "is_object": true + } + } + }, + { + "name": "page_token", + "description": "The token indicating the page of logged models to fetch.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SearchRuns", + "description": "Searches for runs that satisfy expressions.\n\nSearch expressions can use `mlflowMetric` and `mlflowParam` keys.", + "summary": "Search for runs.", + "path": "/api/2.0/mlflow/runs/search", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SearchRuns", + "is_object": true + }, + "response": { + "pascal_name": "SearchRunsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "experiment_ids", + "description": "List of experiment IDs to search over.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "filter", + "description": "A filter expression over params, metrics, and tags, that allows returning a subset of\nruns. The syntax is a subset of SQL that supports ANDing together binary operations\nbetween a param, metric, or tag and a constant.\n\nExample: `metrics.rmse \u003c 1 and params.model_class = 'LogisticRegression'`\n\nYou can select columns with special characters (hyphen, space, period, etc.) by using double quotes:\n`metrics.\"model class\" = 'LinearRegression' and tags.\"user-name\" = 'Tomas'`\n\nSupported operators are `=`, `!=`, `\u003e`, `\u003e=`, `\u003c`, and `\u003c=`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_results", + "description": "Maximum number of runs desired. Max threshold is 50000", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "order_by", + "description": "List of columns to be ordered by, including attributes, params, metrics, and tags with an\noptional `\"DESC\"` or `\"ASC\"` annotation, where `\"ASC\"` is the default.\nExample: `[\"params.input DESC\", \"metrics.alpha ASC\", \"metrics.rmse\"]`.\nTiebreaks are done by start_time `DESC` followed by `run_id` for runs with the same start time\n(and this is the default ordering criterion if order_by is not provided).", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "page_token", + "description": "Token for the current page of runs.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_view_type", + "description": "Whether to display only active, only deleted, or all runs.\nDefaults to only active runs.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ViewType", + "enum": [ + { + "content": "ACTIVE_ONLY" + }, + { + "content": "ALL" + }, + { + "content": "DELETED_ONLY" + } + ] + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Token for the current page of runs.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "SetExperimentTag", + "description": "Sets a tag on an experiment. Experiment tags are metadata that can be updated.", + "summary": "Set a tag for an experiment.", + "path": "/api/2.0/mlflow/experiments/set-experiment-tag", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SetExperimentTag", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "experiment_id", + "description": "ID of the experiment under which to log the tag. Must be provided.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. Keys up to 250 bytes in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Values up to 64KB in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "experiment_id", + "description": "ID of the experiment under which to log the tag. Must be provided.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. Keys up to 250 bytes in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Values up to 64KB in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SetExperimentTagResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "experiment_id", + "description": "ID of the experiment under which to log the tag. Must be provided.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. Keys up to 250 bytes in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Values up to 64KB in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "experiment_id", + "description": "ID of the experiment under which to log the tag. Must be provided.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. Keys up to 250 bytes in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Values up to 64KB in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SetLoggedModelTags", + "description": "Set tags for a logged model.", + "summary": "Set tags for a logged model.", + "path": "/api/2.0/mlflow/logged-models/{model_id}/tags", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SetLoggedModelTagsRequest", + "is_object": true, + "required_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to set the tags on.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to set the tags on.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SetLoggedModelTagsResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "model_id", + "description": "The ID of the logged model to set the tags on.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tags", + "description": "The tags to set on the logged model.", + "is_request_body_field": true, + "entity": { + "pascal_name": "LoggedModelTagList", + "array_value": { + "pascal_name": "LoggedModelTag", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "model_id", + "description": "The ID of the logged model to set the tags on.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set experiment permissions.", + "path": "/api/2.0/permissions/experiments/{experiment_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ExperimentPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExperimentPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "ExperimentAccessControlRequestList", + "array_value": { + "pascal_name": "ExperimentAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SetTag", + "description": "Sets a tag on a run. Tags are run metadata that can be updated during a run and after\na run completes.", + "summary": "Set a tag for a run.", + "path": "/api/2.0/mlflow/runs/set-tag", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SetTag", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "key", + "description": "Name of the tag. Keys up to 250 bytes in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Values up to 64KB in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "key", + "description": "Name of the tag. Keys up to 250 bytes in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Values up to 64KB in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SetTagResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "key", + "description": "Name of the tag. Keys up to 250 bytes in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_id", + "description": "ID of the run under which to log the tag. Must be provided.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_uuid", + "description": "[Deprecated, use `run_id` instead] ID of the run under which to log the tag. This field will\nbe removed in a future MLflow version.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Values up to 64KB in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "key", + "description": "Name of the tag. Keys up to 250 bytes in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Values up to 64KB in size are supported.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateExperiment", + "description": "Updates experiment metadata.", + "summary": "Update an experiment.", + "path": "/api/2.0/mlflow/experiments/update", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateExperiment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateExperimentResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "new_name", + "description": "If provided, the experiment's name is changed to the new name. The new name must be unique.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "experiment_id", + "description": "ID of the associated experiment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateIssue", + "description": "Updates the fields of an issue named in `update_mask`.", + "summary": "Update an issue.", + "path": "/api/2.0/mlflow/{name=experiments/*/issues/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateIssueRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "experiments/{experiment}/issues/{issue}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "issue", + "description": "`issue.name` identifies the target.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Issue", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Accepts title, description, status, severity, categories, tags,\nlast_seen_time, and metadata.\u003ckey\u003e. A path with an empty value clears the\nfield, except that title, status, and severity can't be cleared, and\nlast_seen_time can be cleared only when source_type is MANUAL. categories\nand tags are replaced whole. metadata is updated per key: a metadata.\u003ckey\u003e\npath sets that key from issue.metadata, or removes it when issue.metadata\nlacks it, and leaves the other keys alone. A bare metadata path is rejected.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "experiments/{experiment}/issues/{issue}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Accepts title, description, status, severity, categories, tags,\nlast_seen_time, and metadata.\u003ckey\u003e. A path with an empty value clears the\nfield, except that title, status, and severity can't be cleared, and\nlast_seen_time can be cleared only when source_type is MANUAL. categories\nand tags are replaced whole. metadata is updated per key: a metadata.\u003ckey\u003e\npath sets that key from issue.metadata, or removes it when issue.metadata\nlacks it, and leaves the other keys alone. A bare metadata path is rejected.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "issue", + "description": "`issue.name` identifies the target.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Issue", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "issue", + "description": "`issue.name` identifies the target.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Issue", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "Issue", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "issue", + "description": "`issue.name` identifies the target.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Issue", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ] + } + }, + { + "name": "name", + "description": "experiments/{experiment}/issues/{issue}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Accepts title, description, status, severity, categories, tags,\nlast_seen_time, and metadata.\u003ckey\u003e. A path with an empty value clears the\nfield, except that title, status, and severity can't be cleared, and\nlast_seen_time can be cleared only when source_type is MANUAL. categories\nand tags are replaced whole. metadata is updated per key: a metadata.\u003ckey\u003e\npath sets that key from issue.metadata, or removes it when issue.metadata\nlacks it, and leaves the other keys alone. A bare metadata path is rejected.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "categories", + "description": "At most 10 values of at most 64 UTF-8 bytes each, unique case-insensitively.\nLeading and trailing whitespace is trimmed.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "create_time", + "description": "When the Issue was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "The email of the user whose request created the Issue. source_type tells\nwhether issue detection created it.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Markdown, at most 32 KiB.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "issue_id", + "description": "The last segment of `name`. Issue assessments on traces reference the Issue\nby this ID.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "last_seen_time", + "description": "The request time of the latest trace the Issue affects. Required, and can't\nbe cleared, unless source_type is MANUAL. A MANUAL Issue without one returns\nits create_time.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "last_updated_by", + "description": "The email of the user whose request last updated the Issue.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metadata", + "description": "Additional details about the Issue, such as how issue detection observed it.\nNot a stable contract: keys and values can change without notice, so clients\nmust tolerate unknown and missing keys. At most 20 entries, with keys of at\nmost 64 UTF-8 bytes.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "name", + "description": "experiments/{experiment}/issues/{issue}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + }, + { + "name": "source_id", + "description": "Set once at create. For ADHOC_RUN and SCHEDULED_RUN, the ID of the issue\ndetection run in the same experiment that created the Issue. Absent for\nMANUAL.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "Set once at create. Defaults to MANUAL.", + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSourceType", + "enum": [ + { + "content": "ADHOC_RUN" + }, + { + "content": "MANUAL" + }, + { + "content": "SCHEDULED_RUN" + }, + { + "content": "SINGLE_TRACE_ANALYSIS" + } + ] + } + }, + { + "name": "status", + "description": "Defaults to PENDING on create, and can't be cleared.", + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueStatus", + "enum": [ + { + "content": "PENDING" + }, + { + "content": "REJECTED" + }, + { + "content": "RESOLVED" + } + ] + } + }, + { + "name": "tags", + "description": "Caller-owned; the server never writes system values here. At most 10\nentries. Keys match ^[A-Za-z0-9_.:/-]+$ and are at most 128 UTF-8 bytes;\nvalues are at most 256 UTF-8 bytes.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "When the Issue was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "experiments/{experiment}/issues/{issue}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Accepts title, description, status, severity, categories, tags,\nlast_seen_time, and metadata.\u003ckey\u003e. A path with an empty value clears the\nfield, except that title, status, and severity can't be cleared, and\nlast_seen_time can be cleared only when source_type is MANUAL. categories\nand tags are replaced whole. metadata is updated per key: a metadata.\u003ckey\u003e\npath sets that key from issue.metadata, or removes it when issue.metadata\nlacks it, and leaves the other keys alone. A bare metadata path is rejected.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "title", + "description": "Non-empty, at most 250 UTF-8 bytes.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "severity", + "description": "Cannot be cleared: an Issue without a severity would match no severity filter.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IssueSeverity", + "enum": [ + { + "content": "HIGH" + }, + { + "content": "LOW" + }, + { + "content": "MEDIUM" + } + ] + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on an experiment. Experiments can inherit permissions from their root object.", + "summary": "Update experiment permissions.", + "path": "/api/2.0/permissions/experiments/{experiment_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ExperimentPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExperimentPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "ExperimentAccessControlRequestList", + "array_value": { + "pascal_name": "ExperimentAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "experiment_id", + "description": "The experiment for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateRun", + "description": "Updates run metadata.", + "summary": "Update a run.", + "path": "/api/2.0/mlflow/runs/update", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateRun", + "is_object": true + }, + "response": { + "pascal_name": "UpdateRunResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "end_time", + "description": "Unix timestamp in milliseconds of when the run ended.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "run_id", + "description": "ID of the run to update. Must be provided.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_name", + "description": "Updated name of the run.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_uuid", + "description": "[Deprecated, use `run_id` instead] ID of the run to update. This field will\nbe removed in a future MLflow version.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Updated status of the run.", + "is_request_body_field": true, + "entity": { + "pascal_name": "UpdateRunStatus", + "enum": [ + { + "content": "FAILED" + }, + { + "content": "FINISHED" + }, + { + "content": "KILLED" + }, + { + "content": "RUNNING" + }, + { + "content": "SCHEDULED" + } + ] + } + } + ] + } + ] + }, + { + "id": "catalog.ExternalLineage", + "name": "ExternalLineage", + "description": "External Lineage APIs enable defining and managing lineage relationships between Databricks objects and external systems. These APIs allow users to capture data flows connecting Databricks tables, models, and file paths with external metadata objects.\n\nWith these APIs, users can create, update, delete, and list lineage relationships with support for column-level mappings and custom properties.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "request": { + "pascal_name": "ListExternalLineageRelationshipsRequest" + } + }, + "methods": [ + { + "name": "CreateExternalLineageRelationship", + "description": "Creates an external lineage relationship between a Databricks or external metadata object and another external metadata object.", + "summary": "Create an external lineage relationship.", + "path": "/api/2.0/lineage-tracking/external-lineage", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateExternalLineageRelationshipRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "external_lineage_relationship", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateRequestExternalLineage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "external_lineage_relationship", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateRequestExternalLineage", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "external_lineage_relationship", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateRequestExternalLineage", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ] + } + }, + "response": { + "pascal_name": "ExternalLineageRelationship", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "external_lineage_relationship", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateRequestExternalLineage", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ] + } + }, + { + "name": "columns", + "description": "List of column relationships between source and target objects.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ColumnRelationshipList", + "array_value": { + "pascal_name": "ColumnRelationship", + "is_object": true + } + } + }, + { + "name": "id", + "description": "Unique identifier of the external lineage relationship.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "properties", + "description": "Key-value properties associated with the external lineage relationship.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ] + }, + { + "name": "DeleteExternalLineageRelationship", + "description": "Deletes an external lineage relationship between a Databricks or external metadata object and another external metadata object.", + "summary": "Delete an external lineage relationship.", + "path": "/api/2.0/lineage-tracking/external-lineage", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteExternalLineageRelationshipRequest", + "is_object": true, + "required_fields": [ + { + "name": "external_lineage_relationship", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "DeleteRequestExternalLineage", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "external_lineage_relationship", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "DeleteRequestExternalLineage", + "is_object": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "external_lineage_relationship", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "DeleteRequestExternalLineage", + "is_object": true + } + } + ] + }, + { + "name": "ListExternalLineageRelationships", + "description": "Lists external lineage relationships of a Databricks object or external metadata given a supplied direction.", + "summary": "List external lineage relationships.", + "path": "/api/2.0/lineage-tracking/external-lineage", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListExternalLineageRelationshipsRequest", + "is_object": true, + "required_fields": [ + { + "name": "object_info", + "description": "The object to query external lineage relationships for.\nSince this field is a query parameter, please flatten the nested fields. For example, if the object is a table, the query parameter should look like:\n`object_info.table.name=main.sales.customers`", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "lineage_direction", + "description": "The lineage direction to filter on.", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "LineageDirection", + "enum": [ + { + "content": "DOWNSTREAM" + }, + { + "content": "UPSTREAM" + } + ] + } + } + ], + "required_in_url_fields": [ + { + "name": "object_info", + "description": "The object to query external lineage relationships for.\nSince this field is a query parameter, please flatten the nested fields. For example, if the object is a table, the query parameter should look like:\n`object_info.table.name=main.sales.customers`", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "lineage_direction", + "description": "The lineage direction to filter on.", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "LineageDirection", + "enum": [ + { + "content": "DOWNSTREAM" + }, + { + "content": "UPSTREAM" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "ListExternalLineageRelationshipsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "lineage_direction", + "description": "The lineage direction to filter on.", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "LineageDirection", + "enum": [ + { + "content": "DOWNSTREAM" + }, + { + "content": "UPSTREAM" + } + ] + } + }, + { + "name": "object_info", + "description": "The object to query external lineage relationships for.\nSince this field is a query parameter, please flatten the nested fields. For example, if the object is a table, the query parameter should look like:\n`object_info.table.name=main.sales.customers`", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "page_size", + "description": "Specifies the maximum number of external lineage relationships to return in a single response.\nThe value must be less than or equal to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateExternalLineageRelationship", + "description": "Updates an external lineage relationship between a Databricks or external metadata object and another external metadata object.", + "summary": "Update an external lineage relationship.", + "path": "/api/2.0/lineage-tracking/external-lineage", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateExternalLineageRelationshipRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "external_lineage_relationship", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UpdateRequestExternalLineage", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "external_lineage_relationship", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UpdateRequestExternalLineage", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "external_lineage_relationship", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UpdateRequestExternalLineage", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ] + } + }, + "response": { + "pascal_name": "ExternalLineageRelationship", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "external_lineage_relationship", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UpdateRequestExternalLineage", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ] + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "columns", + "description": "List of column relationships between source and target objects.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ColumnRelationshipList", + "array_value": { + "pascal_name": "ColumnRelationship", + "is_object": true + } + } + }, + { + "name": "id", + "description": "Unique identifier of the external lineage relationship.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "properties", + "description": "Key-value properties associated with the external lineage relationship.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "Source object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + }, + { + "name": "target", + "description": "Target object of the external lineage relationship.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalLineageObject", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "catalog.ExternalLocations", + "name": "ExternalLocations", + "description": "An external location is an object that combines a cloud storage path with a storage\ncredential that authorizes access to the cloud storage path. Each external location is\nsubject to Unity Catalog access-control policies that control which users and groups can\naccess the credential. If a user does not have access to an external location in Unity\nCatalog, the request fails and Unity Catalog does not attempt to authenticate to your cloud\ntenant on the user’s behalf.\n\nDatabricks recommends using external locations rather than using storage credentials\ndirectly.\n\nTo create external locations, you must be a metastore admin or a user with the\n**CREATE_EXTERNAL_LOCATION** privilege.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListExternalLocationsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new external location entry in the metastore.\nThe caller must be a metastore admin or have the **CREATE_EXTERNAL_LOCATION** privilege on both the metastore and the associated storage credential.", + "summary": "Create an external location.", + "path": "/api/2.1/unity-catalog/external-locations", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateExternalLocation", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "url", + "description": "Path URL of the external location.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "credential_name", + "description": "Name of the storage credential used with this location.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "url", + "description": "Path URL of the external location.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "credential_name", + "description": "Name of the storage credential used with this location.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExternalLocationInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "User-provided free-form text description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "credential_name", + "description": "Name of the storage credential used with this location.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_enable_file_events", + "description": "The effective value of `enable_file_events` after applying server-side defaults.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "effective_file_event_queue", + "description": "The effective file event queue configuration after applying server-side defaults.\nAlways populated when a queue is provisioned, regardless of whether the user explicitly\nset `enable_file_events`. Use this field instead of `file_event_queue` for reading\nthe actual queue state.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "FileEventQueue", + "is_object": true + } + }, + { + "name": "enable_file_events", + "description": "Whether to enable file events on this external location. Default to `true`. Set to `false` to disable file events.\nThe actual applied value may differ due to server-side defaults; check `effective_enable_file_events` for the effective state.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "encryption_details", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EncryptionDetails", + "is_object": true + } + }, + { + "name": "fallback", + "description": "Indicates whether fallback mode is enabled for this external location. When fallback mode is enabled, the access to the location falls back to cluster credentials if UC credentials are not sufficient.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "file_event_queue", + "description": "File event queue settings. If `enable_file_events` is not `false`, must be defined and have exactly one of the documented properties.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "FileEventQueue", + "is_object": true + } + }, + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "read_only", + "description": "Indicates whether the external location is read-only.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "skip_validation", + "description": "Skips validation of the storage credential associated with the external location.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "url", + "description": "Path URL of the external location.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "url", + "description": "Path URL of the external location.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "credential_name", + "description": "Name of the storage credential used with this location.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes the specified external location from the metastore. The caller must be the owner of the external location.", + "summary": "Delete an external location.", + "path": "/api/2.1/unity-catalog/external-locations/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteExternalLocationRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "force", + "description": "Force deletion even if there are dependent external tables or mounts.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets an external location from the metastore.\nThe caller must be either a metastore admin, the owner of the external location, or a user that has some privilege on the external location.", + "summary": "Get an external location.", + "path": "/api/2.1/unity-catalog/external-locations/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetExternalLocationRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExternalLocationInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "include_browse", + "description": "Whether to include external locations in the response for which the principal can only access selective metadata for", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets an array of external locations (__ExternalLocationInfo__ objects) from the metastore.\nThe caller must be a metastore admin, the owner of the external location, or a user that has some privilege on the external location.\nThere is no guarantee of a specific ordering of the elements in the array.\n\nNOTE: we recommend using max_results=0 to use the paginated version of this API. Unpaginated calls will be deprecated soon.\n\nPAGINATION BEHAVIOR: When using pagination (max_results \u003e= 0), a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List external locations.", + "path": "/api/2.1/unity-catalog/external-locations", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListExternalLocationsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListExternalLocationsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "include_browse", + "description": "Whether to include external locations in the response for which the principal can only access selective metadata for", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "include_unbound", + "description": "Whether to include external locations not bound to the workspace.\nEffective only if the user has permission to update the location–workspace binding.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "max_results", + "description": "Maximum number of external locations to return.\nIf not set, all the external locations are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + }, + "max_results": { + "name": "max_results", + "description": "Maximum number of external locations to return.\nIf not set, all the external locations are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "is_query": true, + "entity": { + "is_int": true + } + } + } + }, + { + "name": "Update", + "description": "Updates an external location in the metastore. The caller must be the owner of the external location, or be a metastore admin.\nIn the second case, the admin can only update the name of the external location.", + "summary": "Update an external location.", + "path": "/api/2.1/unity-catalog/external-locations/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateExternalLocation", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExternalLocationInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "User-provided free-form text description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "credential_name", + "description": "Name of the storage credential used with this location.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_enable_file_events", + "description": "The effective value of `enable_file_events` after applying server-side defaults.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "effective_file_event_queue", + "description": "The effective file event queue configuration after applying server-side defaults.\nAlways populated when a queue is provisioned, regardless of whether the user explicitly\nset `enable_file_events`. Use this field instead of `file_event_queue` for reading\nthe actual queue state.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "FileEventQueue", + "is_object": true + } + }, + { + "name": "enable_file_events", + "description": "Whether to enable file events on this external location. Default to `true`. Set to `false` to disable file events.\nThe actual applied value may differ due to server-side defaults; check `effective_enable_file_events` for the effective state.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "encryption_details", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EncryptionDetails", + "is_object": true + } + }, + { + "name": "fallback", + "description": "Indicates whether fallback mode is enabled for this external location. When fallback mode is enabled, the access to the location falls back to cluster credentials if UC credentials are not sufficient.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "file_event_queue", + "description": "File event queue settings. If `enable_file_events` is not `false`, must be defined and have exactly one of the documented properties.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "FileEventQueue", + "is_object": true + } + }, + { + "name": "force", + "description": "Force update even if changing url invalidates dependent external tables or mounts.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "isolation_mode", + "is_request_body_field": true, + "entity": { + "pascal_name": "IsolationMode", + "enum": [ + { + "content": "ISOLATION_MODE_ISOLATED" + }, + { + "content": "ISOLATION_MODE_OPEN" + } + ] + } + }, + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "new_name", + "description": "New name for the external location.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "The owner of the external location.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "read_only", + "description": "Indicates whether the external location is read-only.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "skip_validation", + "description": "Skips validation of the storage credential associated with the external location.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "url", + "description": "Path URL of the external location.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the external location.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.ExternalMetadata", + "name": "ExternalMetadata", + "description": "External Metadata objects enable customers to register and manage metadata about external systems within Unity Catalog.\n\nThese APIs provide a standardized way to create, update, retrieve, list, and delete external metadata objects. Fine-grained authorization ensures that only users with appropriate permissions can view and manage external metadata objects.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "request": { + "pascal_name": "ListExternalMetadataRequest" + } + }, + "methods": [ + { + "name": "CreateExternalMetadata", + "description": "Creates a new external metadata object in the parent metastore if the caller is a metastore admin or has the **CREATE_EXTERNAL_METADATA** privilege.\nGrants **BROWSE** to all account users upon creation by default.", + "summary": "Create an external metadata object.", + "path": "/api/2.0/lineage-tracking/external-metadata", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateExternalMetadataRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "external_metadata", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalMetadata", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "external_metadata", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalMetadata", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "external_metadata", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalMetadata", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "ExternalMetadata", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "external_metadata", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalMetadata", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "columns", + "description": "List of columns associated with the external metadata object.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "create_time", + "description": "Time at which this external metadata object was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "created_by", + "description": "Username of external metadata object creator.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "User-provided free-form text description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Unique identifier of the external metadata object.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "Unique identifier of parent metastore.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "Owner of the external metadata object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "properties", + "description": "A map of key-value properties attached to the external metadata object.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "update_time", + "description": "Time at which this external metadata object was last modified.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "updated_by", + "description": "Username of user who last modified external metadata object.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "url", + "description": "URL associated with the external metadata object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteExternalMetadata", + "description": "Deletes the external metadata object that matches the supplied name.\nThe caller must be a metastore admin, the owner of the external metadata object, or a user that has the **MANAGE** privilege.", + "summary": "Delete an external metadata object.", + "path": "/api/2.0/lineage-tracking/external-metadata/{name}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteExternalMetadataRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetExternalMetadata", + "description": "Gets the specified external metadata object in a metastore.\nThe caller must be a metastore admin, the owner of the external metadata object, or a user that has the **BROWSE** privilege.", + "summary": "Get an external metadata object.", + "path": "/api/2.0/lineage-tracking/external-metadata/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetExternalMetadataRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExternalMetadata", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListExternalMetadata", + "description": "Gets an array of external metadata objects in the metastore.\nIf the caller is the metastore admin, all external metadata objects will be retrieved.\nOtherwise, only external metadata objects that the caller has **BROWSE** on will be retrieved.\nThere is no guarantee of a specific ordering of the elements in the array.", + "summary": "List external metadata objects.", + "path": "/api/2.0/lineage-tracking/external-metadata", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListExternalMetadataRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListExternalMetadataResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Specifies the maximum number of external metadata objects to return in a single response.\nThe value must be less than or equal to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateExternalMetadata", + "description": "Updates the external metadata object that matches the supplied name. The caller can only update either the owner or other metadata fields in one request.\nThe caller must be a metastore admin, the owner of the external metadata object, or a user that has the **MODIFY** privilege.\nIf the caller is updating the owner, they must also have the **MANAGE** privilege.", + "summary": "Update an external metadata object.", + "path": "/api/2.0/lineage-tracking/external-metadata/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateExternalMetadataRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "external_metadata", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalMetadata", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "external_metadata", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalMetadata", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "external_metadata", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalMetadata", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "ExternalMetadata", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "external_metadata", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalMetadata", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "columns", + "description": "List of columns associated with the external metadata object.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "create_time", + "description": "Time at which this external metadata object was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "created_by", + "description": "Username of external metadata object creator.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "User-provided free-form text description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Unique identifier of the external metadata object.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "Unique identifier of parent metastore.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "Owner of the external metadata object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "properties", + "description": "A map of key-value properties attached to the external metadata object.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "update_time", + "description": "Time at which this external metadata object was last modified.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "updated_by", + "description": "Username of user who last modified external metadata object.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "url", + "description": "URL associated with the external metadata object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the external metadata object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "system_type", + "description": "Type of external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SystemType", + "enum": [ + { + "content": "AMAZON_REDSHIFT" + }, + { + "content": "AZURE_SYNAPSE" + }, + { + "content": "CONFLUENT" + }, + { + "content": "DATABRICKS" + }, + { + "content": "GOOGLE_BIGQUERY" + }, + { + "content": "KAFKA" + }, + { + "content": "LOOKER" + }, + { + "content": "MICROSOFT_FABRIC" + }, + { + "content": "MICROSOFT_SQL_SERVER" + }, + { + "content": "MONGODB" + }, + { + "content": "MYSQL" + }, + { + "content": "ORACLE" + }, + { + "content": "OTHER" + }, + { + "content": "POSTGRESQL" + }, + { + "content": "POWER_BI" + }, + { + "content": "SALESFORCE" + }, + { + "content": "SAP" + }, + { + "content": "SERVICENOW" + }, + { + "content": "SNOWFLAKE" + }, + { + "content": "STREAM_NATIVE" + }, + { + "content": "TABLEAU" + }, + { + "content": "TERADATA" + }, + { + "content": "WORKDAY" + } + ] + } + }, + { + "name": "entity_type", + "description": "Type of entity within the external system.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "ml.FeatureEngineering", + "name": "FeatureEngineering", + "description": "Feature Engineering provides APIs for managing features and materialized features.", + "package": { + "name": "ml" + }, + "docs_group": "ml", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListFeaturesRequest" + } + }, + "methods": [ + { + "name": "BackfillFeatures", + "description": "Backfill features.", + "summary": "Backfill features.", + "path": "/api/2.0/feature-engineering/features:backfill", + "can_use_json": true, + "must_use_json": true, + "is_hidden_cli": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "BackfillFeaturesRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "feature_full_names", + "description": "Full names of the features to backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "backfill_ranges", + "description": "Output ranges to backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BackfillRangeList", + "array_value": { + "pascal_name": "BackfillRange", + "is_object": true + } + } + } + ], + "required_request_body_fields": [ + { + "name": "feature_full_names", + "description": "Full names of the features to backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "backfill_ranges", + "description": "Output ranges to backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BackfillRangeList", + "array_value": { + "pascal_name": "BackfillRange", + "is_object": true + } + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "backfill_ranges", + "description": "Output ranges to backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BackfillRangeList", + "array_value": { + "pascal_name": "BackfillRange", + "is_object": true + } + } + }, + { + "name": "budget_policy_id", + "description": "The budget policy ID, in UUID format, used to attribute the serverless compute cost of this\nbackfill. If not specified, a default budget policy may be applied.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_full_names", + "description": "Full names of the features to backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "request_id", + "description": "Idempotency token for the request.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tags", + "description": "Custom tags to associate with this backfill. They are applied to the backfill job and\nforwarded to the underlying compute as Databricks resource tags, so backfill cost can be\nattributed in the billing system tables. These tags apply only to the backfill compute; they\nare not applied to the Unity Catalog Feature resources themselves, whose tags are managed\nseparately through the Unity Catalog tagging API. A maximum of 25 tags is supported; keys and\nvalues are subject to the same limitations as Databricks resource tags.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "CancelOperation", + "description": "Cancel an operation.", + "summary": "Cancel an operation.", + "path": "/api/2.0/feature-engineering/{name=operations/*}:cancel", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CancelOperationRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the operation resource to be cancelled.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the operation resource to be cancelled.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the operation resource to be cancelled.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the operation resource to be cancelled.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateFeature", + "description": "Create a Feature.", + "summary": "Create a feature.", + "path": "/api/2.0/feature-engineering/features", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateFeatureRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "feature", + "description": "Feature to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Feature", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "feature", + "description": "Feature to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Feature", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "feature", + "description": "Feature to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Feature", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ] + } + }, + "response": { + "pascal_name": "Feature", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "feature", + "description": "Feature to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Feature", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ] + } + }, + { + "name": "catalog_name", + "description": "Name of parent catalog.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "created_at", + "description": "Time at which this feature was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "Username of the feature creator.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "The description of the feature.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entities", + "description": "The entity columns for the feature, used as aggregation keys and for query-time lookup.\nOptional since entities are not set for RequestSource features or on-demand calculated features.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EntityColumnList", + "array_value": { + "pascal_name": "EntityColumn", + "is_object": true + } + } + }, + { + "name": "filter_condition", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + }, + { + "name": "inputs", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "lineage_context", + "description": "Lineage context information for this feature.\nWARNING: This field is primarily intended for internal use by Databricks systems and\nis automatically populated when features are created through Databricks notebooks or jobs.\nUsers should not manually set this field as incorrect values may lead to inaccurate lineage tracking or unexpected behavior.\nThis field will be set by feature-engineering client and should be left unset by SDK and terraform users.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "LineageContext", + "is_object": true + } + }, + { + "name": "name", + "description": "Name of the feature, extracted from the full three-part name (catalog.schema.name).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Name of parent schema relative to its parent catalog.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "time_window", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "TimeWindow", + "is_object": true + } + }, + { + "name": "timeseries_column", + "description": "Column recording time, used for point-in-time joins, backfills, and aggregations.\nOptional since a timeseries column is not set for RequestSource features or on-demand\ncalculated features.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "TimeseriesColumn", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ] + }, + { + "name": "CreateKafkaConfig", + "description": "Create a Kafka config.\nDuring PrPr, Kafka configs can be read and used when creating features under the entire metastore.\nOnly the creator of the Kafka config can delete it.", + "summary": "Create a Kafka config.", + "path": "/api/2.0/feature-engineering/features/kafka-configs", + "can_use_json": true, + "is_crud_create": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateKafkaConfigRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "kafka_config", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KafkaConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "kafka_config", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KafkaConfig", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "kafka_config", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KafkaConfig", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ] + } + }, + "response": { + "pascal_name": "KafkaConfig", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "kafka_config", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KafkaConfig", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ] + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + }, + { + "name": "backfill_source", + "description": "A user-provided and managed source for backfilling data. Historical data is used when creating a training set from streaming features linked to this Kafka config.\nIn the future, a separate table will be maintained by Databricks for forward filling data.\nThe schema for this source must match exactly that of the key and value schemas specified for this Kafka config.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "BackfillSource", + "is_object": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "extra_options", + "description": "Catch-all for miscellaneous options. Keys should be source options or Kafka consumer options (kafka.*)", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "ingestion_config", + "description": "Configuration for ingesting Kafka data into a Databricks-managed\nDelta table.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + }, + { + "name": "key_schema", + "description": "Schema configuration for extracting message keys from topics. At least one of key_schema and value_schema must be provided.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SchemaConfig", + "is_object": true + } + }, + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "value_schema", + "description": "Schema configuration for extracting message values from topics. At least one of key_schema and value_schema must be provided.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SchemaConfig", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ] + }, + { + "name": "CreateMaterializedFeature", + "description": "Create a materialized feature.", + "summary": "Create a materialized feature.", + "path": "/api/2.0/feature-engineering/materialized-features", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateMaterializedFeatureRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "materialized_feature", + "description": "The materialized feature to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MaterializedFeature", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "materialized_feature", + "description": "The materialized feature to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MaterializedFeature", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "materialized_feature", + "description": "The materialized feature to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MaterializedFeature", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "MaterializedFeature", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "materialized_feature", + "description": "The materialized feature to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MaterializedFeature", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "budget_policy_id", + "description": "The ID of the budget policy used to attribute the serverless compute cost of this\nmaterialization. If not specified, a default budget policy may be applied.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "cron_schedule", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "cron_schedule_trigger", + "description": "A cron-based schedule trigger for the materialization pipeline.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + }, + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "is_online", + "description": "True if this is an online materialized feature. False if it is an offline materialized feature.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "job_id", + "description": "The ID of the job that materializes the feature. This is present for both batch and streaming features.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "last_materialization_time", + "description": "The timestamp when the pipeline last ran and updated the materialized feature values.\nIf the pipeline has not run yet, this field will be null.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "latest_backfill_operation", + "description": "Name of the latest backfill operation on this materialized feature. Format: operations/{operation_id}.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "materialized_feature_id", + "description": "Server-assigned unique identifier for the materialized feature.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "notifications", + "description": "Notification configuration around the materialization job or pipeline lifecycle. They are\napplied to every job and pipeline that materializes this feature. Features which are\nmaterialized in the same pipeline will share the same notification.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "MaterializationNotifications", + "is_object": true + } + }, + { + "name": "offline_store_config", + "description": "Destination for writing feature values to an offline Delta table. The resulting table is\nreturned as `table_name`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "OfflineStoreConfig", + "is_object": true + } + }, + { + "name": "online_store_config", + "description": "Destination for writing feature values to an online Lakebase table. The resulting table is\nreturned as `table_name`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "OnlineStoreConfig", + "is_object": true + } + }, + { + "name": "pipeline_id", + "description": "The ID of the pipeline that materializes this feature. This is only present for streaming features.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "pipeline_schedule_state", + "description": "The schedule state of the materialization pipeline.\nHidden from GraphQL: being deprecated, so not exposed to Catalog Explorer.", + "is_request_body_field": true, + "entity": { + "pascal_name": "MaterializedFeaturePipelineScheduleState", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "PAUSED" + }, + { + "content": "SNAPSHOT" + } + ] + } + }, + { + "name": "streaming_mode", + "description": "The Structured Streaming trigger mode used for materialization. Real-time mode (RTM) targets\nsub-second latency for operational workloads; micro-batch mode (MBM) favors cost efficiency\nfor ETL and analytics workloads.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "StreamingMode", + "is_object": true + } + }, + { + "name": "table_name", + "description": "The fully qualified Unity Catalog path to the table containing the materialized feature (Delta table or Lakebase table). Output only.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_trigger", + "description": "A trigger that fires when the upstream source table changes.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "TableTrigger", + "is_object": true + } + }, + { + "name": "tags", + "description": "Custom tags to associate with this materialization. They are applied to the materialization\njob (for batch features) or pipeline (for streaming features) and forwarded to the underlying\ncompute as cluster tags, so materialization cost can be attributed in the billing system\ntables. These tags apply only to the materialization compute; they are not applied to the\nUnity Catalog Feature resource itself, whose tags are managed separately through the Unity\nCatalog tagging API. A maximum of 25 tags is supported; keys and values are subject to the\nsame limitations as cluster tags.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateStream", + "description": "Create a Stream, a governed UC entity representing an external streaming data source.", + "summary": "Create a Stream.", + "path": "/api/2.0/feature-engineering/streams", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateStreamRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "stream", + "description": "The Stream to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Stream", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "stream", + "description": "The Stream to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Stream", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "stream", + "description": "The Stream to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Stream", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ] + } + }, + "response": { + "pascal_name": "Stream", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "stream", + "description": "The Stream to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Stream", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ] + } + }, + { + "name": "browse_only", + "description": "Indicates whether the principal is limited to retrieving metadata for the\nassociated object through the BROWSE privilege when include_browse is enabled in the request.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "create_time", + "description": "Time at which this Stream was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "Username of the Stream creator.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "User-provided description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "excluded_columns", + "description": "Column paths (dot notation, e.g. \"value.email\" for Kafka) to drop.\nA path may reference a struct, in which case all of its nested fields are dropped (e.g. \"value.address\" drops \"value.address.city\" and \"value.address.zip\").\nThese columns are not written to the ingestion table and cannot be referenced by any feature.\nThey are dropped from ingestion, backfill, and materialization.\nFor direct schemas, each column must exist in the relevant key or payload schema. With a schema registry, a column can be excluded before it exists.\nA column cannot also be a deduplication column in the ingestion_config.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + }, + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "record_type_filter", + "description": "Optional SQL predicate to filter which record types from a streaming channel (e.g. a topic for Kafka) belong to this Stream.\nEvents that do not match are not written to the ingestion table and are not used in materialization.\nExample: \"value.event_type = 'transaction'\".", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "update_time", + "description": "Time at which this Stream was last modified.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "Username of user who last modified the Stream.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ] + }, + { + "name": "DeleteFeature", + "description": "Delete a Feature.", + "summary": "Delete a feature.", + "path": "/api/2.0/feature-engineering/features/{full_name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteFeatureRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "Name of the feature to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "Name of the feature to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "Name of the feature to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "Name of the feature to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteKafkaConfig", + "description": "Delete a Kafka config.\nDuring PrPr, Kafka configs can be read and used when creating features under the entire metastore.\nOnly the creator of the Kafka config can delete it.", + "summary": "Delete a Kafka config.", + "path": "/api/2.0/feature-engineering/features/kafka-configs/{name}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteKafkaConfigRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the Kafka config to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the Kafka config to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the Kafka config to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the Kafka config to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteMaterializedFeature", + "description": "Delete a materialized feature.", + "summary": "Delete a materialized feature.", + "path": "/api/2.0/feature-engineering/materialized-features/{materialized_feature_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteMaterializedFeatureRequest", + "is_object": true, + "required_fields": [ + { + "name": "materialized_feature_id", + "description": "The ID of the materialized feature to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "materialized_feature_id", + "description": "The ID of the materialized feature to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "materialized_feature_id", + "description": "The ID of the materialized feature to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "materialized_feature_id", + "description": "The ID of the materialized feature to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteStream", + "description": "Delete a Stream by its full three-part name (catalog.schema.stream).", + "summary": "Delete a Stream.", + "path": "/api/2.0/feature-engineering/streams/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteStreamRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part name (catalog.schema.stream) of the Stream to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full three-part name (catalog.schema.stream) of the Stream to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Full three-part name (catalog.schema.stream) of the Stream to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full three-part name (catalog.schema.stream) of the Stream to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetFeature", + "description": "Get a Feature.", + "summary": "Get a feature.", + "path": "/api/2.0/feature-engineering/features/{full_name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetFeatureRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "Name of the feature to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "Name of the feature to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Feature", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "full_name", + "description": "Name of the feature to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "Name of the feature to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetKafkaConfig", + "description": "Get a Kafka config.\nDuring PrPr, Kafka configs can be read and used when creating features under the entire metastore.\nOnly the creator of the Kafka config can delete it.", + "summary": "Get a Kafka config.", + "path": "/api/2.0/feature-engineering/features/kafka-configs/{name}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetKafkaConfigRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the Kafka config to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the Kafka config to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "KafkaConfig", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the Kafka config to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the Kafka config to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetMaterializedFeature", + "description": "Get a materialized feature.", + "summary": "Get a materialized feature.", + "path": "/api/2.0/feature-engineering/materialized-features/{materialized_feature_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetMaterializedFeatureRequest", + "is_object": true, + "required_fields": [ + { + "name": "materialized_feature_id", + "description": "The ID of the materialized feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "materialized_feature_id", + "description": "The ID of the materialized feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "MaterializedFeature", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "materialized_feature_id", + "description": "The ID of the materialized feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "materialized_feature_id", + "description": "The ID of the materialized feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetOperation", + "description": "Get an operation.", + "summary": "Get an operation.", + "path": "/api/2.0/feature-engineering/{name=operations/*}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetOperationRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetStream", + "description": "Get a Stream by its full three-part name (catalog.schema.stream).", + "summary": "Get a Stream.", + "path": "/api/2.0/feature-engineering/streams/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetStreamRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part name (catalog.schema.stream) of the Stream to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full three-part name (catalog.schema.stream) of the Stream to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Stream", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Full three-part name (catalog.schema.stream) of the Stream to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full three-part name (catalog.schema.stream) of the Stream to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListFeatures", + "description": "List Features.", + "summary": "List features.", + "path": "/api/2.0/feature-engineering/features", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListFeaturesRequest", + "is_object": true, + "required_fields": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for features of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Name of parent schema relative to its parent catalog.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for features of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Name of parent schema relative to its parent catalog.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListFeaturesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for features of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "The maximum number of results to return.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous query.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Name of parent schema relative to its parent catalog.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for features of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Name of parent schema relative to its parent catalog.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListKafkaConfigs", + "description": "List Kafka configs.\nDuring PrPr, Kafka configs can be read and used when creating features under the entire metastore.\nOnly the creator of the Kafka config can delete it.", + "summary": "List Kafka configs.", + "path": "/api/2.0/feature-engineering/features/kafka-configs", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListKafkaConfigsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListKafkaConfigsResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "kafka_configs", + "description": "List of Kafka configs. Schemas are not included in the response.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KafkaConfigList", + "array_value": { + "pascal_name": "KafkaConfig", + "is_object": true + } + } + } + ], + "required_request_body_fields": [ + { + "name": "kafka_configs", + "description": "List of Kafka configs. Schemas are not included in the response.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KafkaConfigList", + "array_value": { + "pascal_name": "KafkaConfig", + "is_object": true + } + } + } + ] + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of results to return.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListMaterializedFeatures", + "description": "List materialized features.", + "summary": "List materialized features.", + "path": "/api/2.0/feature-engineering/materialized-features", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListMaterializedFeaturesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListMaterializedFeaturesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "feature_name", + "description": "Filter by feature name. If specified, only materialized features materialized from this feature will be returned.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "The maximum number of results to return. Defaults to 100 if not specified. Cannot be greater than 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListStreams", + "description": "List Streams under a given catalog.schema parent.", + "summary": "List Streams.", + "path": "/api/2.0/feature-engineering/streams", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListStreamsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListStreamsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of results to return.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous query.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Two-part name (catalog.schema) of the parent under which to list Streams.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "PurgeFeatureEntities", + "description": "Purge materialized feature values for specified entities.", + "summary": "Purge feature values for entities.", + "path": "/api/2.0/feature-engineering/features:purgeFeatureEntities", + "can_use_json": true, + "must_use_json": true, + "is_hidden_cli": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "PurgeFeatureEntitiesRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "features", + "description": "Fully qualified names of the features to purge. At least one nonempty feature name is required.\nA request may contain at most 10000 features; submit additional features in separate requests.\nDuplicate features are rejected.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "entities_table", + "description": "Fully qualified name of the Unity Catalog Delta table containing the entity keys to purge.\nThe table may contain a subset of each feature's entity-key columns. A partial key match\ndeletes all feature rows matching the provided key values. Non-key columns are rejected;\nnull key values are allowed.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "features", + "description": "Fully qualified names of the features to purge. At least one nonempty feature name is required.\nA request may contain at most 10000 features; submit additional features in separate requests.\nDuplicate features are rejected.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "entities_table", + "description": "Fully qualified name of the Unity Catalog Delta table containing the entity keys to purge.\nThe table may contain a subset of each feature's entity-key columns. A partial key match\ndeletes all feature rows matching the provided key values. Non-key columns are rejected;\nnull key values are allowed.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "budget_policy_id", + "description": "The budget policy ID, in UUID format, used to attribute the serverless compute cost of this\npurge. If not specified, a default budget policy may be applied.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entities_table", + "description": "Fully qualified name of the Unity Catalog Delta table containing the entity keys to purge.\nThe table may contain a subset of each feature's entity-key columns. A partial key match\ndeletes all feature rows matching the provided key values. Non-key columns are rejected;\nnull key values are allowed.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "features", + "description": "Fully qualified names of the features to purge. At least one nonempty feature name is required.\nA request may contain at most 10000 features; submit additional features in separate requests.\nDuplicate features are rejected.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "request_id", + "description": "Optional UUID4 idempotency token for the request.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tags", + "description": "Custom tags to associate with this purge. They are applied to the purge job and forwarded to\nthe underlying compute as Databricks resource tags, so purge cost can be attributed in the\nbilling system tables. These tags apply only to the purge compute; they are not applied to the\nUnity Catalog Feature resources themselves, whose tags are managed separately through the Unity\nCatalog tagging API. A maximum of 25 tags is supported; keys and values are subject to the same\nlimitations as Databricks resource tags.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "UpdateFeature", + "description": "Update a Feature.", + "summary": "Update a feature's description (all other fields are immutable).", + "path": "/api/2.0/feature-engineering/features/{full_name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateFeatureRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature", + "description": "Feature whose full_name identifies the target. Only description is mutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Feature", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. The only supported path is description.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. The only supported path is description.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "feature", + "description": "Feature whose full_name identifies the target. Only description is mutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Feature", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "feature", + "description": "Feature whose full_name identifies the target. Only description is mutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Feature", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ] + } + }, + "response": { + "pascal_name": "Feature", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "feature", + "description": "Feature whose full_name identifies the target. Only description is mutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Feature", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ] + } + }, + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. The only supported path is description.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "Name of parent catalog.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "created_at", + "description": "Time at which this feature was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "Username of the feature creator.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "The description of the feature.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entities", + "description": "The entity columns for the feature, used as aggregation keys and for query-time lookup.\nOptional since entities are not set for RequestSource features or on-demand calculated features.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EntityColumnList", + "array_value": { + "pascal_name": "EntityColumn", + "is_object": true + } + } + }, + { + "name": "filter_condition", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + }, + { + "name": "inputs", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "lineage_context", + "description": "Lineage context information for this feature.\nWARNING: This field is primarily intended for internal use by Databricks systems and\nis automatically populated when features are created through Databricks notebooks or jobs.\nUsers should not manually set this field as incorrect values may lead to inaccurate lineage tracking or unexpected behavior.\nThis field will be set by feature-engineering client and should be left unset by SDK and terraform users.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "LineageContext", + "is_object": true + } + }, + { + "name": "name", + "description": "Name of the feature, extracted from the full three-part name (catalog.schema.name).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Name of parent schema relative to its parent catalog.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "time_window", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "TimeWindow", + "is_object": true + } + }, + { + "name": "timeseries_column", + "description": "Column recording time, used for point-in-time joins, backfills, and aggregations.\nOptional since a timeseries column is not set for RequestSource features or on-demand\ncalculated features.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "TimeseriesColumn", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "The full three-part name (catalog, schema, name) of the feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. The only supported path is description.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "The data source of the feature.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSource", + "is_object": true + } + }, + { + "name": "function", + "description": "The function by which the feature is computed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Function", + "is_object": true + } + } + ] + }, + { + "name": "UpdateKafkaConfig", + "description": "Update a Kafka config.\nDuring PrPr, Kafka configs can be read and used when creating features under the entire metastore.\nOnly the creator of the Kafka config can delete it.", + "summary": "Update a Kafka config.", + "path": "/api/2.0/feature-engineering/features/kafka-configs/{name}", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateKafkaConfigRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "kafka_config", + "description": "The Kafka config to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KafkaConfig", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "kafka_config", + "description": "The Kafka config to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KafkaConfig", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "kafka_config", + "description": "The Kafka config to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KafkaConfig", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ] + } + }, + "response": { + "pascal_name": "KafkaConfig", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "kafka_config", + "description": "The Kafka config to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KafkaConfig", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ] + } + }, + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + }, + { + "name": "backfill_source", + "description": "A user-provided and managed source for backfilling data. Historical data is used when creating a training set from streaming features linked to this Kafka config.\nIn the future, a separate table will be maintained by Databricks for forward filling data.\nThe schema for this source must match exactly that of the key and value schemas specified for this Kafka config.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "BackfillSource", + "is_object": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "extra_options", + "description": "Catch-all for miscellaneous options. Keys should be source options or Kafka consumer options (kafka.*)", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "ingestion_config", + "description": "Configuration for ingesting Kafka data into a Databricks-managed\nDelta table.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + }, + { + "name": "key_schema", + "description": "Schema configuration for extracting message keys from topics. At least one of key_schema and value_schema must be provided.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SchemaConfig", + "is_object": true + } + }, + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "value_schema", + "description": "Schema configuration for extracting message values from topics. At least one of key_schema and value_schema must be provided.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SchemaConfig", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.\nCan be distinct from topic name.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "bootstrap_servers", + "description": "A comma-separated list of host/port pairs pointing to Kafka cluster.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_mode", + "description": "Options to configure which Kafka topics to pull data from.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SubscriptionMode", + "is_object": true + } + }, + { + "name": "auth_config", + "description": "Authentication configuration for connection to topics.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthConfig", + "is_object": true + } + } + ] + }, + { + "name": "UpdateMaterializedFeature", + "description": "Update a materialized feature (pause/resume).", + "summary": "Update a materialized feature.", + "path": "/api/2.0/feature-engineering/materialized-features/{materialized_feature_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateMaterializedFeatureRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "materialized_feature_id", + "description": "Server-assigned unique identifier for the materialized feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "materialized_feature", + "description": "The materialized feature to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MaterializedFeature", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Provide the materialization feature fields which should be updated.\nCurrently, only the pipeline_state field can be updated.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "materialized_feature_id", + "description": "Server-assigned unique identifier for the materialized feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Provide the materialization feature fields which should be updated.\nCurrently, only the pipeline_state field can be updated.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "materialized_feature", + "description": "The materialized feature to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MaterializedFeature", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "materialized_feature", + "description": "The materialized feature to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MaterializedFeature", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "MaterializedFeature", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "materialized_feature", + "description": "The materialized feature to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MaterializedFeature", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "materialized_feature_id", + "description": "Server-assigned unique identifier for the materialized feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Provide the materialization feature fields which should be updated.\nCurrently, only the pipeline_state field can be updated.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "budget_policy_id", + "description": "The ID of the budget policy used to attribute the serverless compute cost of this\nmaterialization. If not specified, a default budget policy may be applied.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "cron_schedule", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "cron_schedule_trigger", + "description": "A cron-based schedule trigger for the materialization pipeline.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + }, + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "is_online", + "description": "True if this is an online materialized feature. False if it is an offline materialized feature.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "job_id", + "description": "The ID of the job that materializes the feature. This is present for both batch and streaming features.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "last_materialization_time", + "description": "The timestamp when the pipeline last ran and updated the materialized feature values.\nIf the pipeline has not run yet, this field will be null.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "latest_backfill_operation", + "description": "Name of the latest backfill operation on this materialized feature. Format: operations/{operation_id}.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "materialized_feature_id", + "description": "Server-assigned unique identifier for the materialized feature.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "notifications", + "description": "Notification configuration around the materialization job or pipeline lifecycle. They are\napplied to every job and pipeline that materializes this feature. Features which are\nmaterialized in the same pipeline will share the same notification.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "MaterializationNotifications", + "is_object": true + } + }, + { + "name": "offline_store_config", + "description": "Destination for writing feature values to an offline Delta table. The resulting table is\nreturned as `table_name`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "OfflineStoreConfig", + "is_object": true + } + }, + { + "name": "online_store_config", + "description": "Destination for writing feature values to an online Lakebase table. The resulting table is\nreturned as `table_name`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "OnlineStoreConfig", + "is_object": true + } + }, + { + "name": "pipeline_id", + "description": "The ID of the pipeline that materializes this feature. This is only present for streaming features.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "pipeline_schedule_state", + "description": "The schedule state of the materialization pipeline.\nHidden from GraphQL: being deprecated, so not exposed to Catalog Explorer.", + "is_request_body_field": true, + "entity": { + "pascal_name": "MaterializedFeaturePipelineScheduleState", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "PAUSED" + }, + { + "content": "SNAPSHOT" + } + ] + } + }, + { + "name": "streaming_mode", + "description": "The Structured Streaming trigger mode used for materialization. Real-time mode (RTM) targets\nsub-second latency for operational workloads; micro-batch mode (MBM) favors cost efficiency\nfor ETL and analytics workloads.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "StreamingMode", + "is_object": true + } + }, + { + "name": "table_name", + "description": "The fully qualified Unity Catalog path to the table containing the materialized feature (Delta table or Lakebase table). Output only.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_trigger", + "description": "A trigger that fires when the upstream source table changes.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "TableTrigger", + "is_object": true + } + }, + { + "name": "tags", + "description": "Custom tags to associate with this materialization. They are applied to the materialization\njob (for batch features) or pipeline (for streaming features) and forwarded to the underlying\ncompute as cluster tags, so materialization cost can be attributed in the billing system\ntables. These tags apply only to the materialization compute; they are not applied to the\nUnity Catalog Feature resource itself, whose tags are managed separately through the Unity\nCatalog tagging API. A maximum of 25 tags is supported; keys and values are subject to the\nsame limitations as cluster tags.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "materialized_feature_id", + "description": "Server-assigned unique identifier for the materialized feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Provide the materialization feature fields which should be updated.\nCurrently, only the pipeline_state field can be updated.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "description": "The full name of the feature in Unity Catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateStream", + "description": "Update a Stream. Only fields listed in `update_mask` are mutated.", + "summary": "Update a Stream.", + "path": "/api/2.0/feature-engineering/streams/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateStreamRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "stream", + "description": "The Stream to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Stream", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "stream", + "description": "The Stream to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Stream", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "stream", + "description": "The Stream to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Stream", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ] + } + }, + "response": { + "pascal_name": "Stream", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "stream", + "description": "The Stream to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Stream", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ] + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "browse_only", + "description": "Indicates whether the principal is limited to retrieving metadata for the\nassociated object through the BROWSE privilege when include_browse is enabled in the request.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "create_time", + "description": "Time at which this Stream was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "Username of the Stream creator.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "User-provided description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "excluded_columns", + "description": "Column paths (dot notation, e.g. \"value.email\" for Kafka) to drop.\nA path may reference a struct, in which case all of its nested fields are dropped (e.g. \"value.address\" drops \"value.address.city\" and \"value.address.zip\").\nThese columns are not written to the ingestion table and cannot be referenced by any feature.\nThey are dropped from ingestion, backfill, and materialization.\nFor direct schemas, each column must exist in the relevant key or payload schema. With a schema registry, a column can be excluded before it exists.\nA column cannot also be a deduplication column in the ingestion_config.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + }, + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "record_type_filter", + "description": "Optional SQL predicate to filter which record types from a streaming channel (e.g. a topic for Kafka) belong to this Stream.\nEvents that do not match are not written to the ingestion table and are not used in materialization.\nExample: \"value.event_type = 'transaction'\".", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "update_time", + "description": "Time at which this Stream was last modified.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "Username of user who last modified the Stream.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full three-part (catalog.schema.stream) name of the stream.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "source_config", + "description": "Source-specific configuration. Determines the streaming platform source.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSourceConfig", + "is_object": true + } + }, + { + "name": "connection_config", + "description": "Specifies how to connect and authenticate to the stream platform.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamConnectionConfig", + "is_object": true + } + }, + { + "name": "schema_config", + "description": "Schema definitions for the stream, provided either directly on the Stream or\nresolved from an external schema registry through a UC Connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "StreamSchemaConfig", + "is_object": true + } + }, + { + "name": "ingestion_config", + "description": "Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IngestionConfig", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "ml.FeatureStore", + "name": "FeatureStore", + "description": "A feature store is a centralized repository that enables data scientists to find and share features. Using a feature store also ensures that the code used to compute feature values is the same during model training and when the model is used for inference.\n\nAn online store is a low-latency database used for feature lookup during real-time model inference or serve feature for real-time applications.", + "package": { + "name": "ml" + }, + "is_hidden_cli": true, + "docs_group": "ml", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "list": { + "request": { + "pascal_name": "ListOnlineStoresRequest" + } + }, + "methods": [ + { + "name": "CreateOnlineStore", + "description": "Create an Online Feature Store.", + "summary": "Create an Online Feature Store.", + "path": "/api/2.0/feature-store/online-stores", + "can_use_json": true, + "is_crud_create": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateOnlineStoreRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "online_store", + "description": "Online store to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "OnlineStore", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "online_store", + "description": "Online store to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "OnlineStore", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "online_store", + "description": "Online store to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "OnlineStore", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "OnlineStore", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "online_store", + "description": "Online store to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "OnlineStore", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "creation_time", + "description": "The timestamp when the online store was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "creator", + "description": "The email of the creator of the online store.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "read_replica_count", + "description": "The number of read replicas for the online store. Defaults to 0.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "state", + "description": "The current state of the online store.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "OnlineStoreState", + "enum": [ + { + "content": "AVAILABLE" + }, + { + "content": "DELETING" + }, + { + "content": "FAILING_OVER" + }, + { + "content": "STARTING" + }, + { + "content": "STOPPED" + }, + { + "content": "UPDATING" + } + ] + } + }, + { + "name": "usage_policy_id", + "description": "The usage policy applied to the online store to track billing.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteOnlineStore", + "description": "Delete an Online Feature Store.", + "summary": "Delete an Online Feature Store.", + "path": "/api/2.0/feature-store/online-stores/{name}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteOnlineStoreRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the online store to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the online store to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the online store to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the online store to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteOnlineTable", + "description": "Delete online table.", + "summary": "Delete an online table.", + "path": "/api/2.0/feature-store/online-tables/{online_table_name}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteOnlineTableRequest", + "is_object": true, + "required_fields": [ + { + "name": "online_table_name", + "description": "The full three-part (catalog, schema, table) name of the online table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "online_table_name", + "description": "The full three-part (catalog, schema, table) name of the online table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "online_table_name", + "description": "The full three-part (catalog, schema, table) name of the online table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "online_table_name", + "description": "The full three-part (catalog, schema, table) name of the online table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetOnlineStore", + "description": "Get an Online Feature Store.", + "summary": "Get an Online Feature Store.", + "path": "/api/2.0/feature-store/online-stores/{name}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetOnlineStoreRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the online store to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the online store to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "OnlineStore", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the online store to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the online store to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListOnlineStores", + "description": "List Online Feature Stores.", + "summary": "List Online Feature Stores.", + "path": "/api/2.0/feature-store/online-stores", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListOnlineStoresRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListOnlineStoresResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of results to return. Defaults to 100 if not specified.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "PublishTable", + "description": "Publish features.", + "summary": "Publish features.", + "path": "/api/2.0/feature-store/tables/{source_table_name}/publish", + "can_use_json": true, + "must_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "PublishTableRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "source_table_name", + "description": "The full three-part (catalog, schema, table) name of the source table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "publish_spec", + "description": "The specification for publishing the online table from the source table.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PublishSpec", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "source_table_name", + "description": "The full three-part (catalog, schema, table) name of the source table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "publish_spec", + "description": "The specification for publishing the online table from the source table.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PublishSpec", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "PublishTableResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "publish_spec", + "description": "The specification for publishing the online table from the source table.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PublishSpec", + "is_object": true + } + }, + { + "name": "source_table_name", + "description": "The full three-part (catalog, schema, table) name of the source table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "source_table_name", + "description": "The full three-part (catalog, schema, table) name of the source table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateOnlineStore", + "description": "Update an Online Feature Store.\n\nThis update is not guaranteed to be atomic: when a request changes multiple fields, some may\nbe applied while others fail. On a failed response, treat the update as partially applied and\nretry until it succeeds.", + "summary": "Update an Online Feature Store.", + "path": "/api/2.0/feature-store/online-stores/{name}", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateOnlineStoreRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "online_store", + "description": "Online store to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "OnlineStore", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "online_store", + "description": "Online store to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "OnlineStore", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "online_store", + "description": "Online store to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "OnlineStore", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "OnlineStore", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "online_store", + "description": "Online store to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "OnlineStore", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "creation_time", + "description": "The timestamp when the online store was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "creator", + "description": "The email of the creator of the online store.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "read_replica_count", + "description": "The number of read replicas for the online store. Defaults to 0.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "state", + "description": "The current state of the online store.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "OnlineStoreState", + "enum": [ + { + "content": "AVAILABLE" + }, + { + "content": "DELETING" + }, + { + "content": "FAILING_OVER" + }, + { + "content": "STARTING" + }, + { + "content": "STOPPED" + }, + { + "content": "UPDATING" + } + ] + } + }, + { + "name": "usage_policy_id", + "description": "The usage policy applied to the online store to track billing.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the online store. This is the unique identifier for the online store.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "capacity", + "description": "The capacity of the online store. Valid values are \"CU_1\", \"CU_2\", \"CU_4\", \"CU_8\".", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "oauth2.AccountFederationPolicy", + "name": "AccountFederationPolicy", + "description": "These APIs manage account federation policies.\n\nAccount federation policies allow users and service principals in your Databricks account to securely access Databricks APIs using tokens from your trusted identity providers (IdPs).\n\nWith token federation, your users and service principals can exchange tokens from your IdP for Databricks OAuth tokens, which can be used to access Databricks APIs. Token federation eliminates the need to manage Databricks secrets, and allows you to centralize management of token issuance policies in your IdP. Databricks token federation is typically used in combination with [SCIM](https://docs.databricks.com/admin/users-groups/scim/index.html), so users in your IdP are synchronized into your Databricks account.\n\nToken federation is configured in your Databricks account using an account federation policy. An account federation policy specifies:\n* which IdP, or issuer, your Databricks account should accept tokens from\n* how to determine which Databricks user, or subject, a token is issued for\n\nTo configure a federation policy, you provide the following:\n* The required token __issuer__, as specified in the “iss” claim of your tokens. The issuer is an https URL that identifies your IdP.\n* The allowed token __audiences__, as specified in the “aud” claim of your tokens. This identifier is intended to represent the recipient of the token. As long as the audience in the token matches at least one audience in the policy, the token is considered a match. If unspecified, the default value is your Databricks account id.\n* The __subject claim__, which indicates which token claim contains the Databricks username of the user the token was issued for. If unspecified, the default value is “sub”.\n* Optionally, the public keys used to validate the signature of your tokens, in JWKS format. If unspecified (recommended), Databricks automatically fetches the public keys from your issuer’s well known endpoint. Databricks strongly recommends relying on your issuer’s well known endpoint for discovering public keys.\n\nAn example federation policy is:\n```\nissuer: \"https://idp.mycompany.com/oidc\"\naudiences: [\"databricks\"]\nsubject_claim: \"sub\"\n```\n\nAn example JWT token body that matches this policy and could be used to authenticate to Databricks as user `username@mycompany.com` is:\n```\n{\n\"iss\": \"https://idp.mycompany.com/oidc\",\n\"aud\": \"databricks\",\n\"sub\": \"username@mycompany.com\"\n}\n```\n\nYou may also need to configure your IdP to generate tokens for your users to exchange with Databricks, if your users do not already have the ability to generate tokens that are compatible with your federation policy.\n\nYou do not need to configure an OAuth application in Databricks to use token federation.", + "package": { + "name": "oauth2" + }, + "is_accounts": true, + "docs_group": "oauth2", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListAccountFederationPoliciesRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Create account federation policy.", + "summary": "Create account federation policy.", + "path": "/api/2.0/accounts/{account_id}/federationPolicies", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateAccountFederationPolicyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + }, + "response": { + "pascal_name": "FederationPolicy", + "is_object": true + }, + "all_fields": [ + { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + }, + { + "name": "policy_id", + "description": "The identifier for the federation policy. The identifier must contain only lowercase\nalphanumeric characters, numbers, hyphens, and slashes. If unspecified, the id will be\nassigned by Databricks.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Creation time of the federation policy.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the federation policy.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name for the federation policy. Example values include\n`accounts/\u003caccount-id\u003e/federationPolicies/my-federation-policy` for Account Federation Policies, and\n`accounts/\u003caccount-id\u003e/servicePrincipals/\u003cservice-principal-id\u003e/federationPolicies/my-federation-policy`\nfor Service Principal Federation Policies. Typically an output parameter, which does not need to be\nspecified in create or update requests. If specified in a request, must match the value in the\nrequest URL.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "oidc_policy", + "description": "audit_mode INCLUDE is required on both this message field and its leaf fields so the OIDC\npolicy configuration is captured in create/update audit logs (see go/auditlogs).", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "OidcFederationPolicy", + "is_object": true + } + }, + { + "name": "policy_id", + "description": "The ID of the federation policy. Output only.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "The service principal ID that this federation policy applies to. Output only. Only set for service principal federation policies.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "uid", + "description": "Unique, immutable id of the federation policy.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Last update time of the federation policy.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Delete account federation policy.", + "summary": "Delete account federation policy.", + "path": "/api/2.0/accounts/{account_id}/federationPolicies/{policy_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteAccountFederationPolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Get account federation policy.", + "summary": "Get account federation policy.", + "path": "/api/2.0/accounts/{account_id}/federationPolicies/{policy_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAccountFederationPolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "FederationPolicy", + "is_object": true + }, + "all_fields": [ + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List account federation policies.", + "summary": "List account federation policies.", + "path": "/api/2.0/accounts/{account_id}/federationPolicies", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAccountFederationPoliciesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListFederationPoliciesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Update account federation policy.", + "summary": "Update account federation policy.", + "path": "/api/2.0/accounts/{account_id}/federationPolicies/{policy_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateAccountFederationPolicyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + }, + "response": { + "pascal_name": "FederationPolicy", + "is_object": true + }, + "all_fields": [ + { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + }, + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask specifies which fields of the policy to update. To specify multiple fields\nin the field mask, use comma as the separator (no space). The special value '*' indicates\nthat all fields should be updated (full replacement). If unspecified, all fields that are\nset in the policy provided in the update request will overwrite the corresponding fields\nin the existing policy. Example value: 'description,oidc_policy.audiences'.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Creation time of the federation policy.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the federation policy.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name for the federation policy. Example values include\n`accounts/\u003caccount-id\u003e/federationPolicies/my-federation-policy` for Account Federation Policies, and\n`accounts/\u003caccount-id\u003e/servicePrincipals/\u003cservice-principal-id\u003e/federationPolicies/my-federation-policy`\nfor Service Principal Federation Policies. Typically an output parameter, which does not need to be\nspecified in create or update requests. If specified in a request, must match the value in the\nrequest URL.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "oidc_policy", + "description": "audit_mode INCLUDE is required on both this message field and its leaf fields so the OIDC\npolicy configuration is captured in create/update audit logs (see go/auditlogs).", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "OidcFederationPolicy", + "is_object": true + } + }, + { + "name": "policy_id", + "description": "The ID of the federation policy. Output only.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "The service principal ID that this federation policy applies to. Output only. Only set for service principal federation policies.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "uid", + "description": "Unique, immutable id of the federation policy.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Last update time of the federation policy.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "files.Files", + "name": "Files", + "description": "The Files API is a standard HTTP API that allows you to read, write, list, and delete files and directories by\nreferring to their URI. The API makes working with file content as raw bytes easier and more efficient.\n\nThe API supports [Unity Catalog volumes](https://docs.databricks.com/en/connect/unity-catalog/volumes.html), where files and directories to operate on are specified using their\nvolume URI path, which follows the format /Volumes/\u0026lt;catalog_name\u0026gt;/\u0026lt;schema_name\u0026gt;/\u0026lt;volume_name\u0026gt;/\u0026lt;path_to_file\u0026gt;.\n\nThe Files API has two distinct endpoints, one for working with files (`/fs/files`) and another one for working\nwith directories (`/fs/directories`). Both endpoints use the standard HTTP methods GET, HEAD, PUT, and DELETE to\nmanage files and directories specified using their URI path. The path is always absolute.\n\nUse of Files API may incur Databricks data transfer charges.", + "package": { + "name": "files" + }, + "docs_group": "files", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "request": { + "pascal_name": "ListDirectoryContentsRequest" + } + }, + "methods": [ + { + "name": "CreateDirectory", + "description": "Creates an empty directory. If necessary, also creates any parent directories of the\nnew, empty directory (like the shell command `mkdir -p`). If called on an existing\ndirectory, returns a success response; this method is idempotent (it will succeed if the directory already\nexists).", + "summary": "Create a directory.", + "path": "/api/2.0/fs/directories{directory_path}", + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateDirectoryRequest", + "is_object": true, + "required_fields": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a file. If the request is successful, there is no response body.", + "summary": "Delete a file.", + "path": "/api/2.0/fs/files{file_path}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteFileRequest", + "is_object": true, + "required_fields": [ + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteDirectory", + "description": "Deletes an empty directory.\n\nTo delete a non-empty directory, first delete all of its contents. This can be done\nby listing the directory contents and deleting each file and subdirectory recursively.", + "summary": "Delete a directory.", + "path": "/api/2.0/fs/directories{directory_path}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteDirectoryRequest", + "is_object": true, + "required_fields": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Download", + "description": "Downloads a file. The file contents are the response body. This is a\nstandard HTTP file download, not a JSON RPC. It supports the\nRange and If-Unmodified-Since HTTP headers.", + "summary": "Download a file.", + "path": "/api/2.0/fs/files{file_path}", + "is_crud_read": true, + "is_response_byte_stream": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DownloadRequest", + "is_object": true, + "required_fields": [ + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DownloadResponse", + "is_object": true + }, + "response_body_field": { + "pascal_name": "Contents" + }, + "all_fields": [ + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetDirectoryMetadata", + "description": "Get the metadata of a directory. The response HTTP headers contain the metadata.\nThere is no response body.\n\nThis method is useful to check if a directory exists and the caller has access to it.\n\nIf you wish to ensure the directory exists, you can instead use `PUT`, which will create\nthe directory if it does not exist, and is idempotent (it will succeed if the directory\nalready exists).", + "summary": "Get directory metadata.", + "path": "/api/2.0/fs/directories{directory_path}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetDirectoryMetadataRequest", + "is_object": true, + "required_fields": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetMetadata", + "description": "Get the metadata of a file. The response HTTP headers contain the metadata. There is no\nresponse body.", + "summary": "Get file metadata.", + "path": "/api/2.0/fs/files{file_path}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetMetadataRequest", + "is_object": true, + "required_fields": [ + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetMetadataResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListDirectoryContents", + "description": "Returns the contents of a directory.\nIf there is no directory at the specified path, the API returns an HTTP 404 error.", + "summary": "List directory contents.", + "path": "/api/2.0/fs/directories{directory_path}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListDirectoryContentsRequest", + "is_object": true, + "required_fields": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListDirectoryResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "The maximum number of directory entries to return. The response may contain fewer\nentries. If the response contains a `next_page_token`, there may be more entries,\neven if fewer than `page_size` entries are in the response.\n\nWe recommend not to set this value unless you are intentionally listing less than\nthe complete directory contents.\n\nIf unspecified, at most 1000 directory entries will be returned.\nThe maximum value is 1000. Values above 1000 will be coerced to 1000.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "page_token", + "description": "An opaque page token which was the `next_page_token` in the response of the previous\nrequest to list the contents of this directory. Provide this token to retrieve the\nnext page of directory entries.\nWhen providing a `page_token`, all other parameters provided to the request must match\nthe previous request.\nTo list all of the entries in a directory, it is necessary to continue requesting\npages of entries until the response contains no `next_page_token`. Note that the\nnumber of entries returned must not be used to determine when the listing is complete.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "directory_path", + "description": "The absolute path of a directory.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "An opaque page token which was the `next_page_token` in the response of the previous\nrequest to list the contents of this directory. Provide this token to retrieve the\nnext page of directory entries.\nWhen providing a `page_token`, all other parameters provided to the request must match\nthe previous request.\nTo list all of the entries in a directory, it is necessary to continue requesting\npages of entries until the response contains no `next_page_token`. Note that the\nnumber of entries returned must not be used to determine when the listing is complete.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Upload", + "description": "Uploads a file of up to 5 GiB. The file contents should be sent as the request body as\nraw bytes (an octet stream); do not encode or otherwise modify the bytes before sending.\nThe contents of the resulting file will be exactly the bytes sent in the request body.\nIf the request is successful, there is no response body.", + "summary": "Upload a file.", + "path": "/api/2.0/fs/files{file_path}", + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UploadRequest", + "is_object": true, + "required_fields": [ + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "contents", + "required": true, + "entity": {} + } + ], + "required_in_url_fields": [ + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "request_body_field": { + "name": "contents", + "required": true, + "entity": {} + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "contents", + "required": true, + "entity": {} + }, + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "overwrite", + "description": "If true or unspecified, an existing file will be overwritten. If false, an error will be returned if the path points to an existing file.", + "is_query": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "file_path", + "description": "The absolute path of the file.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "ml.Forecasting", + "name": "Forecasting", + "description": "The Forecasting API allows you to create and get serverless forecasting experiments", + "package": { + "name": "ml" + }, + "is_hidden_cli": true, + "docs_group": "ml", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "methods": [ + { + "name": "CreateExperiment", + "description": "Creates a serverless forecasting experiment. Returns the experiment ID.", + "summary": "Create a forecasting experiment.", + "path": "/api/2.0/automl/create-forecasting-experiment", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateForecastingExperimentRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "train_data_path", + "description": "The fully qualified path of a Unity Catalog table, formatted as catalog_name.schema_name.table_name, used as training data for the forecasting model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "target_column", + "description": "The column in the input training table used as the prediction target for model training. The values in this column are used as the ground truth for model training.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "time_column", + "description": "The column in the input training table that represents each row's timestamp.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "forecast_granularity", + "description": "The time interval between consecutive rows in the time series data.\nPossible values include: '1 second', '1 minute', '5 minutes', '10 minutes', '15 minutes', '30 minutes', 'Hourly', 'Daily', 'Weekly', 'Monthly', 'Quarterly', 'Yearly'.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "forecast_horizon", + "description": "The number of time steps into the future to make predictions, calculated as a multiple of forecast_granularity. This value represents how far ahead the model should forecast.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "train_data_path", + "description": "The fully qualified path of a Unity Catalog table, formatted as catalog_name.schema_name.table_name, used as training data for the forecasting model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "target_column", + "description": "The column in the input training table used as the prediction target for model training. The values in this column are used as the ground truth for model training.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "time_column", + "description": "The column in the input training table that represents each row's timestamp.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "forecast_granularity", + "description": "The time interval between consecutive rows in the time series data.\nPossible values include: '1 second', '1 minute', '5 minutes', '10 minutes', '15 minutes', '30 minutes', 'Hourly', 'Daily', 'Weekly', 'Monthly', 'Quarterly', 'Yearly'.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "forecast_horizon", + "description": "The number of time steps into the future to make predictions, calculated as a multiple of forecast_granularity. This value represents how far ahead the model should forecast.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "CreateForecastingExperimentResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "custom_weights_column", + "description": "The column in the training table used to customize weights for each time series.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "experiment_path", + "description": "The path in the workspace to store the created experiment.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "forecast_granularity", + "description": "The time interval between consecutive rows in the time series data.\nPossible values include: '1 second', '1 minute', '5 minutes', '10 minutes', '15 minutes', '30 minutes', 'Hourly', 'Daily', 'Weekly', 'Monthly', 'Quarterly', 'Yearly'.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "forecast_horizon", + "description": "The number of time steps into the future to make predictions, calculated as a multiple of forecast_granularity. This value represents how far ahead the model should forecast.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "future_feature_data_path", + "description": "The fully qualified path of a Unity Catalog table, formatted as catalog_name.schema_name.table_name, used to store future feature data for predictions.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "holiday_regions", + "description": "The region code(s) to automatically add holiday features. Currently supports only one region.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "include_features", + "description": "Specifies the list of feature columns to include in model training. These columns must exist\nin the training data and be of type string, numerical, or boolean. If not specified, no additional\nfeatures will be included.\nNote: Certain columns are automatically handled:\n- Automatically excluded: split_column, target_column, custom_weights_column.\n- Automatically included: time_column.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "max_runtime", + "description": "The maximum duration for the experiment in minutes. The experiment stops automatically if it exceeds this limit.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "prediction_data_path", + "description": "The fully qualified path of a Unity Catalog table, formatted as catalog_name.schema_name.table_name, used to store predictions.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "primary_metric", + "description": "The evaluation metric used to optimize the forecasting model.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "register_to", + "description": "The fully qualified path of a Unity Catalog model, formatted as catalog_name.schema_name.model_name, used to store the best model.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "split_column", + "description": "// The column in the training table used for custom data splits. Values must be 'train', 'validate', or 'test'.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "target_column", + "description": "The column in the input training table used as the prediction target for model training. The values in this column are used as the ground truth for model training.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "time_column", + "description": "The column in the input training table that represents each row's timestamp.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "timeseries_identifier_columns", + "description": "The column in the training table used to group the dataset for predicting individual time series.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "train_data_path", + "description": "The fully qualified path of a Unity Catalog table, formatted as catalog_name.schema_name.table_name, used as training data for the forecasting model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "training_frameworks", + "description": "List of frameworks to include for model tuning. Possible values are 'Prophet', 'ARIMA', 'DeepAR'. An empty list includes all supported frameworks.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "train_data_path", + "description": "The fully qualified path of a Unity Catalog table, formatted as catalog_name.schema_name.table_name, used as training data for the forecasting model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "target_column", + "description": "The column in the input training table used as the prediction target for model training. The values in this column are used as the ground truth for model training.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "time_column", + "description": "The column in the input training table that represents each row's timestamp.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "forecast_granularity", + "description": "The time interval between consecutive rows in the time series data.\nPossible values include: '1 second', '1 minute', '5 minutes', '10 minutes', '15 minutes', '30 minutes', 'Hourly', 'Daily', 'Weekly', 'Monthly', 'Quarterly', 'Yearly'.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "forecast_horizon", + "description": "The number of time steps into the future to make predictions, calculated as a multiple of forecast_granularity. This value represents how far ahead the model should forecast.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "wait": { + "success": [ + { + "content": "SUCCEEDED" + } + ], + "timeout": 120, + "poll": { + "response": { + "pascal_name": "ForecastingExperiment" + } + }, + "status_path": [ + { + "pascal_name": "State" + } + ] + } + }, + { + "name": "GetExperiment", + "description": "Public RPC to get forecasting experiment", + "summary": "Get a forecasting experiment.", + "path": "/api/2.0/automl/get-forecasting-experiment/{experiment_id}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetForecastingExperimentRequest", + "is_object": true, + "required_fields": [ + { + "name": "experiment_id", + "description": "The unique ID of a forecasting experiment", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "experiment_id", + "description": "The unique ID of a forecasting experiment", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ForecastingExperiment", + "is_object": true + }, + "all_fields": [ + { + "name": "experiment_id", + "description": "The unique ID of a forecasting experiment", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "experiment_id", + "description": "The unique ID of a forecasting experiment", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.Functions", + "name": "Functions", + "description": "Functions implement User-Defined Functions (UDFs) in Unity Catalog.\n\nThe function implementation can be any SQL expression or Query, and it can be invoked wherever a table reference is allowed in a query.\nIn Unity Catalog, a function resides at the same level as a table, so it can be referenced with the form __catalog_name__.__schema_name__.__function_name__.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "FunctionInfoNameToFullNameMap" + }, + "request": { + "pascal_name": "ListFunctionsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "**WARNING: This API is experimental and will change in future versions**\n\nCreates a new function\n\nThe user must have the following permissions in order for the function to be created:\n- **USE_CATALOG** on the function's parent catalog\n- **USE_SCHEMA** and **CREATE_FUNCTION** on the function's parent schema", + "summary": "Create a function.", + "path": "/api/2.1/unity-catalog/functions", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateFunctionRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "function_info", + "description": "Partial __FunctionInfo__ specifying the function to be created.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateFunction", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "function_info", + "description": "Partial __FunctionInfo__ specifying the function to be created.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateFunction", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "FunctionInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "function_info", + "description": "Partial __FunctionInfo__ specifying the function to be created.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateFunction", + "is_object": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes the function that matches the supplied name.\nFor the deletion to succeed, the user must satisfy one of the following conditions:\n- Is the owner of the function's parent catalog\n- Is the owner of the function's parent schema and have the **USE_CATALOG** privilege on its parent catalog\n- Is the owner of the function itself and have both the **USE_CATALOG** privilege on its parent catalog and the **USE_SCHEMA** privilege on its parent schema", + "summary": "Delete a function.", + "path": "/api/2.1/unity-catalog/functions/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteFunctionRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The fully-qualified name of the function (of the form __catalog_name__.__schema_name__.__function__name__) .", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The fully-qualified name of the function (of the form __catalog_name__.__schema_name__.__function__name__) .", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "force", + "description": "Force deletion even if the function is notempty.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "The fully-qualified name of the function (of the form __catalog_name__.__schema_name__.__function__name__) .", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The fully-qualified name of the function (of the form __catalog_name__.__schema_name__.__function__name__) .", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a function from within a parent catalog and schema.\nFor the fetch to succeed, the user must satisfy one of the following requirements:\n- Is a metastore admin\n- Is an owner of the function's parent catalog\n- Have the **USE_CATALOG** privilege on the function's parent catalog and be the owner of the function\n- Have the **USE_CATALOG** privilege on the function's parent catalog, the **USE_SCHEMA** privilege on the function's parent schema, and the **EXECUTE** privilege on the function itself", + "summary": "Get a function.", + "path": "/api/2.1/unity-catalog/functions/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetFunctionRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The fully-qualified name of the function (of the form __catalog_name__.__schema_name__.__function__name__).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The fully-qualified name of the function (of the form __catalog_name__.__schema_name__.__function__name__).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "FunctionInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "include_browse", + "description": "Whether to include functions in the response for which the principal can only access selective metadata for", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "The fully-qualified name of the function (of the form __catalog_name__.__schema_name__.__function__name__).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The fully-qualified name of the function (of the form __catalog_name__.__schema_name__.__function__name__).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List functions within the specified parent catalog and schema.\nIf the user is a metastore admin, all functions are returned in the output list.\nOtherwise, the user must have the **USE_CATALOG** privilege on the catalog and the **USE_SCHEMA** privilege on the schema, and the output list contains only functions for which either the user has the **EXECUTE** privilege or the user is the owner.\nThere is no guarantee of a specific ordering of the elements in the array.\n\nNOTE: we recommend using max_results=0 to use the paginated version of this API. Unpaginated calls will be deprecated soon.\n\nPAGINATION BEHAVIOR: When using pagination (max_results \u003e= 0), a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List functions.", + "path": "/api/2.1/unity-catalog/functions", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListFunctionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for functions of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Parent schema of functions.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for functions of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Parent schema of functions.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListFunctionsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for functions of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "include_browse", + "description": "Whether to include functions in the response for which the principal can only access selective metadata for", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "max_results", + "description": "Maximum number of functions to return.\nIf not set, all the functions are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Parent schema of functions.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for functions of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Parent schema of functions.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + }, + "max_results": { + "name": "max_results", + "description": "Maximum number of functions to return.\nIf not set, all the functions are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "is_query": true, + "entity": { + "is_int": true + } + } + } + }, + { + "name": "Update", + "description": "Updates the function that matches the supplied name.\nOnly the owner of the function can be updated. If the user is not a metastore admin, the user must be a member of the group that is the new function owner.\n- Is a metastore admin\n- Is the owner of the function's parent catalog\n- Is the owner of the function's parent schema and has the **USE_CATALOG** privilege on its parent catalog\n- Is the owner of the function itself and has the **USE_CATALOG** privilege on its parent catalog as well as the **USE_SCHEMA** privilege on the function's parent schema.", + "summary": "Update a function.", + "path": "/api/2.1/unity-catalog/functions/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateFunction", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The fully-qualified name of the function (of the form __catalog_name__.__schema_name__.__function__name__).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The fully-qualified name of the function (of the form __catalog_name__.__schema_name__.__function__name__).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "FunctionInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The fully-qualified name of the function (of the form __catalog_name__.__schema_name__.__function__name__).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "Username of current owner of the function.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The fully-qualified name of the function (of the form __catalog_name__.__schema_name__.__function__name__).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "dashboards.Genie", + "name": "Genie", + "description": "Genie provides a no-code experience for business users, powered by AI/BI. Analysts set up spaces that business users can use to ask questions using natural language. Genie uses data registered to Unity Catalog and requires at least CAN USE permission on a Pro or Serverless SQL warehouse. Also, Databricks Assistant must be enabled.", + "package": { + "name": "dashboards" + }, + "docs_group": "dashboards", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "CreateMessage", + "description": "Sends a new message in a chat-mode [conversation](:method:genie/startconversation).\nThe AI response uses all previously created messages in the conversation to respond.", + "summary": "Chat mode: Send a message.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieCreateConversationMessageRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the conversation is started.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "User message content.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the conversation is started.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "content", + "description": "User message content.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieMessage", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "User message content", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "User message content", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "content", + "description": "User message content.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "enable_visualization", + "description": "Enable visualization generation.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space where the conversation is started.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the conversation is started.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "User message content.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "COMPLETED" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "GenieMessage" + } + }, + "status_path": [ + { + "pascal_name": "Status" + } + ] + } + }, + { + "name": "CreateMessageComment", + "description": "Create a comment on a conversation message.", + "summary": "Add a comment to a message.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/comments", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GenieCreateMessageCommentRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "Comment text content.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "content", + "description": "Comment text content.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieMessageComment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_comment_id", + "description": "Comment ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "Comment text content", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_comment_id", + "description": "Comment ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "Comment text content", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "content", + "description": "Comment text content.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "Comment text content.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateSpace", + "description": "Creates a Genie space from a serialized payload.", + "summary": "Create a Genie space.", + "path": "/api/2.0/genie/spaces", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieCreateSpaceRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "warehouse_id", + "description": "Warehouse to associate with the new space", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "serialized_space", + "description": "The contents of the Genie Space in serialized string form.\nUse the [Get Genie Space](:method:genie/getspace) API to retrieve an example response, which includes the `serialized_space` field.\nThis field provides the structure of the JSON string that represents the space's layout and components.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "warehouse_id", + "description": "Warehouse to associate with the new space", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "serialized_space", + "description": "The contents of the Genie Space in serialized string form.\nUse the [Get Genie Space](:method:genie/getspace) API to retrieve an example response, which includes the `serialized_space` field.\nThis field provides the structure of the JSON string that represents the space's layout and components.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieSpace", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "title", + "description": "Title of the Genie Space", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "title", + "description": "Title of the Genie Space", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "description", + "description": "Optional description", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent_path", + "description": "Parent folder path where the space will be registered", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "serialized_space", + "description": "The contents of the Genie Space in serialized string form.\nUse the [Get Genie Space](:method:genie/getspace) API to retrieve an example response, which includes the `serialized_space` field.\nThis field provides the structure of the JSON string that represents the space's layout and components.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "title", + "description": "Optional title override", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "Warehouse to associate with the new space", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "warehouse_id", + "description": "Warehouse to associate with the new space", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "serialized_space", + "description": "The contents of the Genie Space in serialized string form.\nUse the [Get Genie Space](:method:genie/getspace) API to retrieve an example response, which includes the `serialized_space` field.\nThis field provides the structure of the JSON string that represents the space's layout and components.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteConversation", + "description": "Delete a conversation.", + "summary": "Delete a conversation.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieDeleteConversationRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the conversation is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID of the conversation to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the conversation is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID of the conversation to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "conversation_id", + "description": "The ID of the conversation to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space where the conversation is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the conversation is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID of the conversation to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteConversationMessage", + "description": "Delete a conversation message.", + "summary": "Delete a conversation message.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieDeleteConversationMessageRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the message is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the message is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space where the message is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the message is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DownloadMessageAttachmentVisualization", + "description": "Download a rendered image of a message visualization attachment.\nThe response body is the raw PNG image, not a JSON payload.\nThis is only available if the attachment is a visualization and the message status is `COMPLETED`.", + "summary": "Download an attachment visualization.", + "path": "/api/2.0/genie/{name=spaces/*/conversations/*/messages/*/attachments/*}/download-visualization", + "is_crud_read": true, + "is_response_byte_stream": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DownloadMessageAttachmentVisualizationRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the attachment to render, in the format\n`spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/attachments/{attachment_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the attachment to render, in the format\n`spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/attachments/{attachment_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DownloadMessageAttachmentVisualizationResponse", + "is_object": true + }, + "response_body_field": { + "pascal_name": "Contents" + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the attachment to render, in the format\n`spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/attachments/{attachment_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the attachment to render, in the format\n`spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/attachments/{attachment_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ExecuteMessageAttachmentQuery", + "description": "Execute the SQL for a message query attachment. Use this API when the query attachment has expired and needs to be re-executed.", + "summary": "Execute an attachment SQL query.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/attachments/{attachment_id}/execute-query", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieExecuteMessageAttachmentQueryRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieGetMessageQueryResultResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ExecuteMessageQuery", + "description": "DEPRECATED: Use [Execute Message Attachment Query](:method:genie/executemessageattachmentquery) instead.", + "summary": "[Deprecated] Execute SQL query in a conversation message.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/execute-query", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GenieExecuteMessageQueryRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieGetMessageQueryResultResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GenerateDownloadFullQueryResult", + "description": "Initiates a new SQL execution and returns a `download_id` and `download_id_signature` that you can use to track the progress of the download.\nThe query result is stored in an external link and can be retrieved using the [Get Download Full Query Result](:method:genie/getdownloadfullqueryresult) API.\nBoth `download_id` and `download_id_signature` must be provided when calling the Get endpoint.\n\n----\n\n### **Warning: Databricks strongly recommends that you protect the URLs that are returned by the `EXTERNAL_LINKS` disposition.**\n\nWhen you use the `EXTERNAL_LINKS` disposition, a short-lived cloud-storage URL is generated to download the\nresults. The URL contains temporary access credentials, so protect it and do not set an `Authorization` header in\nthe download request.\n\nSee [Execute Statement](:method:statementexecution/executestatement) for more details.\n\n----", + "summary": "Start a full query-result download.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/attachments/{attachment_id}/downloads", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieGenerateDownloadFullQueryResultRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieGenerateDownloadFullQueryResultResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GenieCancelResponse", + "description": "Cancels an in-flight agent-mode response. `response_id` is the id returned in the\n`response.created` event from the agent-mode responses endpoint. The response stops at\nthe next agent boundary and its terminal state is returned.", + "summary": "Agent mode: Cancel a response.", + "path": "/api/2.0/genie/agents/{agent_id}/conversations/{conversation_id}/responses/{response_id}/cancel", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieCancelResponseRequest", + "is_object": true, + "required_fields": [ + { + "name": "agent_id", + "description": "The ID of the Genie agent (synonymous with the Genie space ID).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID of the conversation containing the response.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "response_id", + "description": "The ID of the response to cancel (the id from the `response.created` event).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "agent_id", + "description": "The ID of the Genie agent (synonymous with the Genie space ID).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID of the conversation containing the response.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "response_id", + "description": "The ID of the response to cancel (the id from the `response.created` event).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieMessage", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "User message content", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "User message content", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "agent_id", + "description": "The ID of the Genie agent (synonymous with the Genie space ID).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID of the conversation containing the response.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "response_id", + "description": "The ID of the response to cancel (the id from the `response.created` event).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "agent_id", + "description": "The ID of the Genie agent (synonymous with the Genie space ID).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID of the conversation containing the response.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "response_id", + "description": "The ID of the response to cancel (the id from the `response.created` event).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GenieCreateEvalRun", + "description": "Creates and runs chat-mode evaluations for multiple benchmark questions in a Genie space.", + "summary": "Start a benchmark evaluation run.", + "path": "/api/2.0/genie/spaces/{space_id}/eval-runs", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GenieCreateEvalRunRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluations will be executed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluations will be executed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieEvalRunResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "eval_run_id", + "description": "The unique identifier for the evaluation run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "eval_run_id", + "description": "The unique identifier for the evaluation run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "benchmark_question_ids", + "description": "List of benchmark question IDs to evaluate. These questions must exist in the specified Genie space. If none are specified, then all benchmark questions are evaluated.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluations will be executed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluations will be executed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GenieGetEvalResultDetails", + "description": "Get details for evaluation results.", + "summary": "Get benchmark evaluation result details.", + "path": "/api/2.0/genie/spaces/{space_id}/eval-runs/{eval_run_id}/results/{result_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GenieGetEvalResultDetailsRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "eval_run_id", + "description": "The unique identifier for the evaluation run.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "result_id", + "description": "The unique identifier for the evaluation result.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "eval_run_id", + "description": "The unique identifier for the evaluation run.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "result_id", + "description": "The unique identifier for the evaluation result.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieEvalResultDetails", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "result_id", + "description": "The unique identifier for the evaluation result.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "The ID of the space the evaluation result belongs to.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "benchmark_question_id", + "description": "The ID of the benchmark question that was evaluated.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "result_id", + "description": "The unique identifier for the evaluation result.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "The ID of the space the evaluation result belongs to.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "benchmark_question_id", + "description": "The ID of the benchmark question that was evaluated.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "eval_run_id", + "description": "The unique identifier for the evaluation run.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "result_id", + "description": "The unique identifier for the evaluation result.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "eval_run_id", + "description": "The unique identifier for the evaluation run.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "result_id", + "description": "The unique identifier for the evaluation result.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GenieGetEvalRun", + "description": "Get evaluation run details.", + "summary": "Get a benchmark evaluation run.", + "path": "/api/2.0/genie/spaces/{space_id}/eval-runs/{eval_run_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GenieGetEvalRunRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "eval_run_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "eval_run_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieEvalRunResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "eval_run_id", + "description": "The unique identifier for the evaluation run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "eval_run_id", + "description": "The unique identifier for the evaluation run.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "eval_run_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "eval_run_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GenieListEvalResults", + "description": "List evaluation results for a specific evaluation run.", + "summary": "List results for a benchmark evaluation run.", + "path": "/api/2.0/genie/spaces/{space_id}/eval-runs/{eval_run_id}/results", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GenieListEvalResultsRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "eval_run_id", + "description": "The unique identifier for the evaluation run.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "eval_run_id", + "description": "The unique identifier for the evaluation run.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieListEvalResultsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "eval_run_id", + "description": "The unique identifier for the evaluation run.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Maximum number of eval results to return per page.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque token to retrieve the next page of results.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "eval_run_id", + "description": "The unique identifier for the evaluation run.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GenieListEvalRuns", + "description": "Lists all evaluation runs in a space.", + "summary": "List benchmark evaluation runs.", + "path": "/api/2.0/genie/spaces/{space_id}/eval-runs", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GenieListEvalRunsRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieListEvalRunsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Maximum number of evaluation runs to return per page", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Token to get the next page of results", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the evaluation run is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetDownloadFullQueryResult", + "description": "After [Generating a Full Query Result Download](:method:genie/generatedownloadfullqueryresult) and successfully receiving a `download_id` and `download_id_signature`, use this API to poll the download progress.\nBoth `download_id` and `download_id_signature` are required to call this endpoint.\nWhen the download is complete, the API returns the result in the `EXTERNAL_LINKS` disposition, containing one or more external links to the query result files.\n\n----\n\n### **Warning: Databricks strongly recommends that you protect the URLs that are returned by the `EXTERNAL_LINKS` disposition.**\n\nWhen you use the `EXTERNAL_LINKS` disposition, a short-lived cloud-storage URL is generated to download the\nresults. The URL contains temporary access credentials, so protect it and do not set an `Authorization` header in\nthe download request.\n\nSee [Execute Statement](:method:statementexecution/executestatement) for more details.\n\n----", + "summary": "Get full query-result download status.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/attachments/{attachment_id}/downloads/{download_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieGetDownloadFullQueryResultRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "download_id", + "description": "Download ID. This ID is provided by the [Generate Download endpoint](:method:genie/generateDownloadFullQueryResult)", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "download_id_signature", + "description": "JWT signature for the download_id to ensure secure access to query results", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "download_id", + "description": "Download ID. This ID is provided by the [Generate Download endpoint](:method:genie/generateDownloadFullQueryResult)", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "download_id_signature", + "description": "JWT signature for the download_id to ensure secure access to query results", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieGetDownloadFullQueryResultResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "download_id", + "description": "Download ID. This ID is provided by the [Generate Download endpoint](:method:genie/generateDownloadFullQueryResult)", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "download_id_signature", + "description": "JWT signature for the download_id to ensure secure access to query results", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "download_id", + "description": "Download ID. This ID is provided by the [Generate Download endpoint](:method:genie/generateDownloadFullQueryResult)", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "download_id_signature", + "description": "JWT signature for the download_id to ensure secure access to query results", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetMessage", + "description": "Gets a message from a chat-mode or agent-mode conversation.\nFor a complete agent-mode transcript, use the List conversation items endpoint.", + "summary": "Get a conversation message.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieGetConversationMessageRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the target conversation is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the target conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the target message from the identified conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the target conversation is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the target conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the target message from the identified conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieMessage", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "User message content", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "User message content", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "conversation_id", + "description": "The ID associated with the target conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the target message from the identified conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space where the target conversation is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the target conversation is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the target conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the target message from the identified conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetMessageAttachmentQueryResult", + "description": "Get the result of SQL query if the message has a query attachment.\nThis is only available if a message has a query attachment and the message status is `EXECUTING_QUERY` OR `COMPLETED`.", + "summary": "Get an attachment SQL result.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/attachments/{attachment_id}/query-result", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieGetMessageAttachmentQueryResultRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieGetMessageQueryResultResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetMessageQueryResult", + "description": "DEPRECATED: Use [Get Message Attachment Query Result](:method:genie/getmessageattachmentqueryresult) instead.", + "summary": "[Deprecated] Get conversation message SQL query result.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/query-result", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GenieGetMessageQueryResultRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieGetMessageQueryResultResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetMessageQueryResultByAttachment", + "description": "DEPRECATED: Use [Get Message Attachment Query Result](:method:genie/getmessageattachmentqueryresult) instead.", + "summary": "[Deprecated] Get conversation message SQL query result.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/query-result/{attachment_id}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GenieGetQueryResultByAttachmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieGetMessageQueryResultResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "attachment_id", + "description": "Attachment ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSpace", + "description": "Get details of a Genie Space.", + "summary": "Get a Genie space.", + "path": "/api/2.0/genie/spaces/{space_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieGetSpaceRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieSpace", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "title", + "description": "Title of the Genie Space", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "title", + "description": "Title of the Genie Space", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "include_serialized_space", + "description": "Whether to include the serialized space export in the response.\nRequires at least CAN EDIT permission on the space.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListConversationComments", + "description": "List all comments across all messages in a conversation.", + "summary": "List all comments in a conversation.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/list-comments", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GenieListConversationCommentsRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieListConversationCommentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Maximum number of comments to return per page.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token for getting the next page of results.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListConversationMessages", + "description": "Lists messages in a chat-mode or agent-mode conversation.\nAgent-mode messages are returned as GenieMessage projections. Use the List conversation items\nendpoint for the complete reasoning and tool-call history.", + "summary": "List conversation messages.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieListConversationMessagesRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the conversation is located", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID of the conversation to list messages from", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the conversation is located", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID of the conversation to list messages from", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieListConversationMessagesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "conversation_id", + "description": "The ID of the conversation to list messages from", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Maximum number of messages to return per page", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Token to get the next page of results", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space where the conversation is located", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the conversation is located", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID of the conversation to list messages from", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListConversations", + "description": "Get a list of conversations in a Genie Space.", + "summary": "List conversations.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieListConversationsRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID of the Genie space to retrieve conversations from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID of the Genie space to retrieve conversations from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieListConversationsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "include_all", + "description": "Include all conversations in the space across all users.\nRequires at least CAN MANAGE permission on the space.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "page_size", + "description": "Maximum number of conversations to return per page", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Token to get the next page of results", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "The ID of the Genie space to retrieve conversations from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID of the Genie space to retrieve conversations from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListMessageComments", + "description": "List comments on a specific conversation message.", + "summary": "List comments on a message.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/comments", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GenieListMessageCommentsRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieListMessageCommentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Maximum number of comments to return per page.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token for getting the next page of results.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListSpaces", + "description": "Get list of Genie Spaces.", + "summary": "List Genie spaces.", + "path": "/api/2.0/genie/spaces", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieListSpacesRequest", + "is_object": true + }, + "response": { + "pascal_name": "GenieListSpacesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Maximum number of spaces to return per page", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token for getting the next page of results", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SendMessageFeedback", + "description": "Sends feedback for a message in a chat-mode or agent-mode conversation.", + "summary": "Send feedback on a message.", + "path": "/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/feedback", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieSendMessageFeedbackRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the message is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message to provide feedback for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rating", + "description": "The rating (POSITIVE, NEGATIVE, or NONE).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "GenieFeedbackRating", + "enum": [ + { + "content": "NEGATIVE" + }, + { + "content": "NONE" + }, + { + "content": "POSITIVE" + } + ] + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the message is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message to provide feedback for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "rating", + "description": "The rating (POSITIVE, NEGATIVE, or NONE).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "GenieFeedbackRating", + "enum": [ + { + "content": "NEGATIVE" + }, + { + "content": "NONE" + }, + { + "content": "POSITIVE" + } + ] + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "comment", + "description": "Optional text feedback that will be stored as a comment.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message to provide feedback for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rating", + "description": "The rating (POSITIVE, NEGATIVE, or NONE).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "GenieFeedbackRating", + "enum": [ + { + "content": "NEGATIVE" + }, + { + "content": "NONE" + }, + { + "content": "POSITIVE" + } + ] + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space where the message is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where the message is located.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "The ID associated with the conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "message_id", + "description": "The ID associated with the message to provide feedback for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rating", + "description": "The rating (POSITIVE, NEGATIVE, or NONE).", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "GenieFeedbackRating", + "enum": [ + { + "content": "NEGATIVE" + }, + { + "content": "NONE" + }, + { + "content": "POSITIVE" + } + ] + } + } + ] + }, + { + "name": "StartConversation", + "description": "Starts a new chat-mode conversation and sends its first message.", + "summary": "Chat mode: Start a conversation.", + "path": "/api/2.0/genie/spaces/{space_id}/start-conversation", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieStartConversationMessageRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where you want to start a conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "The text of the message that starts the conversation.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where you want to start a conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "content", + "description": "The text of the message that starts the conversation.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieStartConversationResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "message_id", + "description": "Message ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "conversation_id", + "description": "Conversation ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "content", + "description": "The text of the message that starts the conversation.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "enable_visualization", + "description": "Enable visualization generation.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "space_id", + "description": "The ID associated with the Genie space where you want to start a conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space where you want to start a conversation.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "content", + "description": "The text of the message that starts the conversation.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "COMPLETED" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "GenieMessage" + } + }, + "status_path": [ + { + "pascal_name": "Status" + } + ] + } + }, + { + "name": "TrashSpace", + "description": "Move a Genie Space to the trash.", + "summary": "Trash a Genie space.", + "path": "/api/2.0/genie/spaces/{space_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieTrashSpaceRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space to be sent to the trash.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space to be sent to the trash.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space to be sent to the trash.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "The ID associated with the Genie space to be sent to the trash.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateSpace", + "description": "Updates a Genie space with a serialized payload.", + "summary": "Update a Genie space.", + "path": "/api/2.0/genie/spaces/{space_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenieUpdateSpaceRequest", + "is_object": true, + "required_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GenieSpace", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "title", + "description": "Title of the Genie Space", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "title", + "description": "Title of the Genie Space", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "description", + "description": "Optional description", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "ETag returned by a previous GET or UPDATE. When set, the update will fail if the space\nhas been modified since. Omit to apply the update unconditionally.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent_path", + "description": "Parent workspace folder path to move this Genie space under.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "serialized_space", + "description": "The contents of the Genie Space in serialized string form (full replacement).\nUse the [Get Genie Space](:method:genie/getspace) API to retrieve an example response, which includes the `serialized_space` field.\nThis field provides the structure of the JSON string that represents the space's layout and components.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "title", + "description": "Optional title override", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "Optional warehouse override", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "space_id", + "description": "Genie space ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "workspace.GitCredentials", + "name": "GitCredentials", + "description": "Registers personal access token for Databricks to do operations on behalf of the user.\n\nSee [more info](https://docs.databricks.com/repos/get-access-tokens-from-git-provider.html).", + "package": { + "name": "workspace" + }, + "docs_group": "workspace", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "CredentialInfoGitProviderToCredentialIdMap" + }, + "request": { + "pascal_name": "ListCredentialsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a Git credential entry for the user.\nUse the PATCH endpoint to update existing credentials, or the DELETE endpoint to\ndelete existing credentials.", + "summary": "Create a credential entry.", + "path": "/api/2.0/git-credentials", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateCredentialsRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "git_provider", + "description": "Git provider. This field is case-insensitive. The available Git providers are `gitHub`,\n`bitbucketCloud`, `gitLab`, `azureDevOpsServices` (Azure DevOps Services, including\nMicrosoft Entra ID authentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket\nData Center), `gitLabEnterpriseEdition` (GitLab Self-Managed), and `awsCodeCommit`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "git_provider", + "description": "Git provider. This field is case-insensitive. The available Git providers are `gitHub`,\n`bitbucketCloud`, `gitLab`, `azureDevOpsServices` (Azure DevOps Services, including\nMicrosoft Entra ID authentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket\nData Center), `gitLabEnterpriseEdition` (GitLab Self-Managed), and `awsCodeCommit`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateCredentialsResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "credential_id", + "description": "ID of the credential object in the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "git_provider", + "description": "The Git provider associated with the credential.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "credential_id", + "description": "ID of the credential object in the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "git_provider", + "description": "The Git provider associated with the credential.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "git_email", + "description": "The authenticating email associated with your Git provider user account.\nUsed for authentication with the remote repository and also sets the author \u0026 committer identity for commits.\nRequired for most Git providers except AWS CodeCommit.\nLearn more at https://docs.databricks.com/aws/en/repos/get-access-tokens-from-git-provider", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_provider", + "description": "Git provider. This field is case-insensitive. The available Git providers are `gitHub`,\n`bitbucketCloud`, `gitLab`, `azureDevOpsServices` (Azure DevOps Services, including\nMicrosoft Entra ID authentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket\nData Center), `gitLabEnterpriseEdition` (GitLab Self-Managed), and `awsCodeCommit`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_username", + "description": "The username provided with your Git provider account and associated with the\ncredential. For most Git providers it is only used to set the Git committer \u0026 author names for commits,\nhowever it may be required for authentication depending on your Git provider / token requirements.\nRequired for AWS CodeCommit.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "is_default_for_provider", + "description": "if the credential is the default for the given provider", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "the name of the git credential, used for identification and ease of lookup", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "personal_access_token", + "description": "The personal access token used to authenticate to the corresponding Git provider.\nFor certain providers, support may exist for other types of scoped access tokens.\n[Learn more](https://docs.databricks.com/repos/get-access-tokens-from-git-provider.html).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal_id", + "description": "The ID of the service principal whose credentials will be modified. Only service principal managers can perform this action.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "git_provider", + "description": "Git provider. This field is case-insensitive. The available Git providers are `gitHub`,\n`bitbucketCloud`, `gitLab`, `azureDevOpsServices` (Azure DevOps Services, including\nMicrosoft Entra ID authentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket\nData Center), `gitLabEnterpriseEdition` (GitLab Self-Managed), and `awsCodeCommit`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes the specified Git credential.", + "summary": "Delete a credential.", + "path": "/api/2.0/git-credentials/{credential_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteCredentialsRequest", + "is_object": true, + "required_fields": [ + { + "name": "credential_id", + "description": "The ID for the corresponding credential to access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "credential_id", + "description": "The ID for the corresponding credential to access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteCredentialsResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "credential_id", + "description": "The ID for the corresponding credential to access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "The ID of the service principal whose credentials will be modified. Only service principal managers can perform this action.", + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "credential_id", + "description": "The ID for the corresponding credential to access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the Git credential with the specified credential ID.", + "summary": "Get a credential entry.", + "path": "/api/2.0/git-credentials/{credential_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetCredentialsRequest", + "is_object": true, + "required_fields": [ + { + "name": "credential_id", + "description": "The ID for the corresponding credential to access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "credential_id", + "description": "The ID for the corresponding credential to access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "GetCredentialsResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "credential_id", + "description": "ID of the credential object in the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "credential_id", + "description": "ID of the credential object in the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "credential_id", + "description": "The ID for the corresponding credential to access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "The ID of the service principal whose credentials will be modified. Only service principal managers can perform this action.", + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "credential_id", + "description": "The ID for the corresponding credential to access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "List", + "description": "Lists the calling user's Git credentials.", + "summary": "Get Git credentials.", + "path": "/api/2.0/git-credentials", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListCredentialsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListCredentialsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "principal_id", + "description": "The ID of the service principal whose credentials will be listed. Only service principal managers can perform this action.", + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "pagination": {} + }, + { + "name": "Update", + "description": "Updates the specified Git credential.", + "summary": "Update a credential.", + "path": "/api/2.0/git-credentials/{credential_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateCredentialsRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "credential_id", + "description": "The ID for the corresponding credential to access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "git_provider", + "description": "Git provider. This field is case-insensitive. The available Git providers are `gitHub`,\n`bitbucketCloud`, `gitLab`, `azureDevOpsServices` (Azure DevOps Services, including\nMicrosoft Entra ID authentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket\nData Center), `gitLabEnterpriseEdition` (GitLab Self-Managed), and `awsCodeCommit`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "credential_id", + "description": "The ID for the corresponding credential to access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "git_provider", + "description": "Git provider. This field is case-insensitive. The available Git providers are `gitHub`,\n`bitbucketCloud`, `gitLab`, `azureDevOpsServices` (Azure DevOps Services, including\nMicrosoft Entra ID authentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket\nData Center), `gitLabEnterpriseEdition` (GitLab Self-Managed), and `awsCodeCommit`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateCredentialsResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "credential_id", + "description": "The ID for the corresponding credential to access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "git_email", + "description": "The authenticating email associated with your Git provider user account.\nUsed for authentication with the remote repository and also sets the author \u0026 committer identity for commits.\nRequired for most Git providers except AWS CodeCommit.\nLearn more at https://docs.databricks.com/aws/en/repos/get-access-tokens-from-git-provider", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_provider", + "description": "Git provider. This field is case-insensitive. The available Git providers are `gitHub`,\n`bitbucketCloud`, `gitLab`, `azureDevOpsServices` (Azure DevOps Services, including\nMicrosoft Entra ID authentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket\nData Center), `gitLabEnterpriseEdition` (GitLab Self-Managed), and `awsCodeCommit`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "git_username", + "description": "The username provided with your Git provider account and associated with the\ncredential. For most Git providers it is only used to set the Git committer \u0026 author names for commits,\nhowever it may be required for authentication depending on your Git provider / token requirements.\nRequired for AWS CodeCommit.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "is_default_for_provider", + "description": "if the credential is the default for the given provider", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "the name of the git credential, used for identification and ease of lookup", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "personal_access_token", + "description": "The personal access token used to authenticate to the corresponding Git provider.\nFor certain providers, support may exist for other types of scoped access tokens.\n[Learn more](https://docs.databricks.com/repos/get-access-tokens-from-git-provider.html).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal_id", + "description": "The ID of the service principal whose credentials will be modified. Only service principal managers can perform this action.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "credential_id", + "description": "The ID for the corresponding credential to access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "git_provider", + "description": "Git provider. This field is case-insensitive. The available Git providers are `gitHub`,\n`bitbucketCloud`, `gitLab`, `azureDevOpsServices` (Azure DevOps Services, including\nMicrosoft Entra ID authentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket\nData Center), `gitLabEnterpriseEdition` (GitLab Self-Managed), and `awsCodeCommit`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "compute.GlobalInitScripts", + "name": "GlobalInitScripts", + "description": "The Global Init Scripts API enables Workspace administrators to configure global\ninitialization scripts for their workspace. These scripts run on every node in every cluster\nin the workspace.\n\n**Important:** Existing clusters must be restarted to pick up any changes made to global\ninit scripts.\nGlobal init scripts are run in order. If the init script returns with a bad exit code,\nthe Apache Spark container fails to launch and init scripts with later position are skipped.\nIf enough containers fail, the entire cluster fails with a `GLOBAL_INIT_SCRIPT_FAILURE`\nerror code.", + "package": { + "name": "compute" + }, + "docs_group": "compute", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "GlobalInitScriptDetailsNameToScriptIdMap" + }, + "is_legacy_empty_request": true, + "request": { + "pascal_name": "ListGlobalInitScriptsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new global init script in this workspace.", + "summary": "Create init script.", + "path": "/api/2.0/global-init-scripts", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GlobalInitScriptCreateRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the script", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "script", + "description": "The Base64-encoded content of the script.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the script", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "script", + "description": "The Base64-encoded content of the script.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "enabled", + "description": "Specifies whether the script is enabled. The script runs only if enabled.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "The name of the script", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "position", + "description": "The position of a global init script, where 0 represents the first script to run, 1 is the second script to run, in ascending order.\n\nIf you omit the numeric position for a new global init script, it defaults to last position. It will run after all current scripts.\nSetting any value greater than the position of the last script is equivalent to the last position. Example: Take three existing scripts with positions 0, 1, and 2. Any position of (3) or greater puts the script in the last position.\nIf an explicit position value conflicts with an existing script value, your request succeeds, but the original script at that position and all later scripts have their positions incremented by 1.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "script", + "description": "The Base64-encoded content of the script.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the script", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "script", + "description": "The Base64-encoded content of the script.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a global init script.", + "summary": "Delete init script.", + "path": "/api/2.0/global-init-scripts/{script_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteGlobalInitScriptRequest", + "is_object": true, + "required_fields": [ + { + "name": "script_id", + "description": "The ID of the global init script.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "script_id", + "description": "The ID of the global init script.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "script_id", + "description": "The ID of the global init script.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "script_id", + "description": "The ID of the global init script.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets all the details of a script, including its Base64-encoded contents.", + "summary": "Get an init script.", + "path": "/api/2.0/global-init-scripts/{script_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetGlobalInitScriptRequest", + "is_object": true, + "required_fields": [ + { + "name": "script_id", + "description": "The ID of the global init script.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "script_id", + "description": "The ID of the global init script.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GlobalInitScriptDetailsWithContent", + "is_object": true + }, + "all_fields": [ + { + "name": "script_id", + "description": "The ID of the global init script.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "script_id", + "description": "The ID of the global init script.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Get a list of all global init scripts for this workspace. This returns all properties for each script but **not** the script contents.\nTo retrieve the contents of a script, use the [get a global init script](:method:globalinitscripts/get) operation.", + "summary": "Get init scripts.", + "path": "/api/2.0/global-init-scripts", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListGlobalInitScriptsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListGlobalInitScriptsResponse", + "is_object": true + }, + "pagination": {} + }, + { + "name": "Update", + "description": "Updates a global init script, specifying only the fields to change. All fields are optional.\nUnspecified fields retain their current value.", + "summary": "Update init script.", + "path": "/api/2.0/global-init-scripts/{script_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GlobalInitScriptUpdateRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "script_id", + "description": "The ID of the global init script.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the script", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "script", + "description": "The Base64-encoded content of the script.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "script_id", + "description": "The ID of the global init script.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the script", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "script", + "description": "The Base64-encoded content of the script.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "enabled", + "description": "Specifies whether the script is enabled. The script runs only if enabled.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "The name of the script", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "position", + "description": "The position of a script, where 0 represents the first script to run,\n1 is the second script to run, in ascending order.\nTo move the script to run first, set its position to 0.\n\nTo move the script to the end, set its position to any value\ngreater or equal to the position of the last script.\nExample, three existing scripts with positions 0, 1, and 2.\nAny position value of 2 or greater puts the script in the last position (2).\n\nIf an explicit position value conflicts with an existing script, your request succeeds,\nbut the original script at that position and all later scripts have their positions\nincremented by 1.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "script", + "description": "The Base64-encoded content of the script.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "script_id", + "description": "The ID of the global init script.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "script_id", + "description": "The ID of the global init script.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the script", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "script", + "description": "The Base64-encoded content of the script.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.Grants", + "name": "Grants", + "description": "In Unity Catalog, data is secure by default. Initially, users have no access to data in\na metastore. Access can be granted by either a metastore admin, the owner of an object, or\nthe owner of the catalog or schema that contains the object. Securable objects in Unity\nCatalog are hierarchical and privileges are inherited downward.\n\nThis means that granting a privilege on the catalog automatically grants the privilege to\nall current and future objects within the catalog. Similarly, privileges granted on a schema\nare inherited by all current and future objects within that schema.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListPrivilegeAssignmentsRequest" + } + }, + "methods": [ + { + "name": "Get", + "description": "Gets the permissions for a securable. Does not include inherited permissions.\n\nNOTE: we recommend using max_results=0 to use the paginated version of this API. Unpaginated calls will be deprecated soon.\n\nPAGINATION BEHAVIOR: When using pagination (max_results \u003e= 0), a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "Get permissions.", + "path": "/api/2.1/unity-catalog/permissions/{securable_type}/{full_name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetGrantRequest", + "is_object": true, + "required_fields": [ + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetPermissionsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_results", + "description": "Specifies the maximum number of privileges to return (page length).\nEvery PrivilegeAssignment present in a single page response is guaranteed to contain all the privileges granted on\nthe requested Securable for the respective principal.\n\nIf not set, all the permissions are returned.\nIf set to\n- lesser than 0: invalid parameter error\n- 0: page length is set to a server configured value\n- lesser than 150 but greater than 0: invalid parameter error (this is to ensure that server is able to return at\nleast one complete PrivilegeAssignment in a single page response)\n- greater than (or equal to) 150: page length is the minimum of this value and a server configured value", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal", + "description": "If provided, only the permissions for the specified principal (user or group) are returned.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetEffective", + "description": "Gets the effective permissions for a securable. Includes inherited permissions from any parent securables.\n\nNOTE: we recommend using max_results=0 to use the paginated version of this API. Unpaginated calls will be deprecated soon.\n\nPAGINATION BEHAVIOR: When using pagination (max_results \u003e= 0), a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "Get effective permissions.", + "path": "/api/2.1/unity-catalog/effective-permissions/{securable_type}/{full_name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetEffectiveRequest", + "is_object": true, + "required_fields": [ + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EffectivePermissionsList", + "is_object": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_results", + "description": "Specifies the maximum number of privileges to return (page length).\nEvery EffectivePrivilegeAssignment present in a single page response is guaranteed to contain all the effective\nprivileges granted on (or inherited by) the requested Securable for the respective principal.\n\nIf not set, all the effective permissions are returned.\nIf set to\n- lesser than 0: invalid parameter error\n- 0: page length is set to a server configured value\n- lesser than 150 but greater than 0: invalid parameter error (this is to ensure that server is able to return at\nleast one complete EffectivePrivilegeAssignment in a single page response)\n- greater than (or equal to) 150: page length is the minimum of this value and a server configured value", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque token for the next page of results (pagination).", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal", + "description": "If provided, only the effective permissions for the specified principal (user or group) are returned.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Lists the privilege assignments for a securable. Does not include inherited privileges.\nPaginated version of Get Permissions API.", + "summary": "List permissions.", + "path": "/api/2.1/unity-catalog/privilege-assignments/{securable_type}/{full_name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListPrivilegeAssignmentsRequest", + "is_object": true, + "required_fields": [ + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListPrivilegeAssignmentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Specifies the maximum number of privilege assignments to return (page length).\nEvery PrivilegeAssignment present in a single page response is guaranteed to contain all the privileges granted on\nthe requested Securable for the respective principal.\n\nIf not set, page length is the server configured value.\nIf set to\n- lesser than 0: invalid parameter error\n- 0: page length is set to a server configured value\n- lesser than 150 but greater than 0: invalid parameter error (this is to ensure that server is able to return at\nleast one complete PrivilegeAssignment in a single page response)\n- greater than (or equal to) 150: page length is the minimum of this value and a server configured value", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal", + "description": "If provided, only the permissions for the specified principal (user or group) are returned.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListEffective", + "description": "Lists the effective privilege assignments for a securable. Includes inherited privileges.\nPaginated version of Get Effective Permissions API.", + "summary": "List effective permissions.", + "path": "/api/2.1/unity-catalog/effective-privilege-assignments/{securable_type}/{full_name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListEffectivePrivilegeAssignmentsRequest", + "is_object": true, + "required_fields": [ + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListEffectivePrivilegeAssignmentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Specifies the maximum number of privilege assignments to return (page length).\nEvery EffectivePrivilegeAssignment present in a single page response is guaranteed to contain all the effective\nprivileges granted on (or inherited by) the requested Securable for the respective principal.\n\nIf not set, a server-configured default is used.\nIf set to\n- lesser than 0: invalid parameter error\n- 0: page length is set to a server configured value\n- lesser than 150 but greater than 0: invalid parameter error (this is to ensure that server is able to return at\nleast one complete EffectivePrivilegeAssignment in a single page response)\n- greater than (or equal to) 150: page length is the minimum of this value and a server configured value", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal", + "description": "If provided, only the effective permissions for the specified principal (user or group) are returned.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Updates the permissions for a securable.", + "summary": "Update permissions.", + "path": "/api/2.1/unity-catalog/permissions/{securable_type}/{full_name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdatePermissions", + "is_object": true, + "required_fields": [ + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdatePermissionsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "changes", + "description": "Array of permissions change objects.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PermissionsChangeList", + "array_value": { + "pascal_name": "PermissionsChange", + "is_object": true + } + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "omit_permissions_in_response", + "description": "Optional, default false. Specifies whether all the permissions should be returned in the response.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "securable_type", + "description": "Type of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "iam.GroupsV2", + "name": "GroupsV2", + "description": "Groups simplify identity management, making it easier to assign access to Databricks workspace, data,\nand other securable objects.\n\nIt is best practice to assign access to workspaces and access-control policies in\nUnity Catalog to groups, instead of to users individually. All Databricks workspace identities can be\nassigned as members of groups, and members inherit permissions that are assigned to their\ngroup.", + "package": { + "name": "iam" + }, + "docs_group": "iam", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "request": { + "pascal_name": "ListGroupsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a group in the Databricks workspace with a unique name, using the supplied group details.", + "summary": "Create a new group.", + "path": "/api/2.0/preview/scim/v2/Groups", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateGroupRequest", + "is_object": true + }, + "response": { + "pascal_name": "Group", + "is_object": true + }, + "all_fields": [ + { + "name": "displayName", + "description": "String that represents a human-readable group name", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entitlements", + "description": "Entitlements assigned to the group. See [assigning entitlements](https://docs.databricks.com/administration-guide/users-groups/index.html#assigning-entitlements) for a full list of supported values.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "externalId", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "groups", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "id", + "description": "Databricks group ID", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "members", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "meta", + "description": "Container for the group identifier. Workspace local versus account.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ResourceMeta", + "is_object": true + } + }, + { + "name": "roles", + "description": "Corresponds to AWS instance profile/arn role.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "schemas", + "description": "The schema of the group.", + "is_request_body_field": true, + "entity": { + "pascal_name": "GroupSchemaList", + "array_value": { + "pascal_name": "GroupSchema", + "enum": [ + { + "content": "urn:ietf:params:scim:schemas:core:2.0:Group" + } + ] + } + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a group from the Databricks workspace.", + "summary": "Delete a group.", + "path": "/api/2.0/preview/scim/v2/Groups/{id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteGroupRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the information for a specific group in the Databricks workspace.", + "summary": "Get group details.", + "path": "/api/2.0/preview/scim/v2/Groups/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetGroupRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Group", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets all details of the groups associated with the Databricks workspace.", + "summary": "List group details.", + "path": "/api/2.0/preview/scim/v2/Groups", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListGroupsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListGroupsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "attributes", + "description": "Comma-separated list of attributes to return in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "count", + "description": "Desired number of results per page.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "excludedAttributes", + "description": "Comma-separated list of attributes to exclude in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "filter", + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortBy", + "description": "Attribute to sort the results.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortOrder", + "description": "The order to sort the results.", + "is_query": true, + "entity": { + "pascal_name": "ListSortOrder", + "enum": [ + { + "content": "ascending" + }, + { + "content": "descending" + } + ] + } + }, + { + "name": "startIndex", + "description": "Specifies the index of the first result. First item is number 1.", + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "pagination": { + "offset": { + "name": "startIndex", + "description": "Specifies the index of the first result. First item is number 1.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + "limit": { + "name": "count", + "description": "Desired number of results per page.", + "is_query": true, + "entity": { + "is_int64": true + } + } + } + }, + { + "name": "Patch", + "description": "Partially updates the details of a group.", + "summary": "Update group details.", + "path": "/api/2.0/preview/scim/v2/Groups/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "PatchGroupRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "Operations", + "is_request_body_field": true, + "entity": { + "pascal_name": "PatchList", + "array_value": { + "pascal_name": "Patch", + "is_object": true + } + } + }, + { + "name": "schemas", + "description": "The schema of the patch request. Must be [\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"].", + "is_request_body_field": true, + "entity": { + "pascal_name": "PatchSchemaList", + "array_value": { + "pascal_name": "PatchSchema", + "enum": [ + { + "content": "urn:ietf:params:scim:api:messages:2.0:PatchOp" + } + ] + } + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the details of a group by replacing the entire group entity.", + "summary": "Replace a group.", + "path": "/api/2.0/preview/scim/v2/Groups/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateGroupRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Databricks group ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Databricks group ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "displayName", + "description": "String that represents a human-readable group name", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entitlements", + "description": "Entitlements assigned to the group. See [assigning entitlements](https://docs.databricks.com/administration-guide/users-groups/index.html#assigning-entitlements) for a full list of supported values.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "externalId", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "groups", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "id", + "description": "Databricks group ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "members", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "meta", + "description": "Container for the group identifier. Workspace local versus account.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ResourceMeta", + "is_object": true + } + }, + { + "name": "roles", + "description": "Corresponds to AWS instance profile/arn role.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "schemas", + "description": "The schema of the group.", + "is_request_body_field": true, + "entity": { + "pascal_name": "GroupSchemaList", + "array_value": { + "pascal_name": "GroupSchema", + "enum": [ + { + "content": "urn:ietf:params:scim:schemas:core:2.0:Group" + } + ] + } + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Databricks group ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "iam.AccountGroupsV2", + "name": "AccountGroupsV2", + "description": "Groups simplify identity management, making it easier to assign access to Databricks account, data,\nand other securable objects.\n\nIt is best practice to assign access to workspaces and access-control policies in\nUnity Catalog to groups, instead of to users individually. All Databricks account identities can be\nassigned as members of groups, and members inherit permissions that are assigned to their\ngroup.", + "package": { + "name": "iam" + }, + "is_accounts": true, + "docs_group": "iam", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListAccountGroupsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a group in the Databricks account with a unique name, using the supplied group details.", + "summary": "Create a new group.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/Groups", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateAccountGroupRequest", + "is_object": true + }, + "response": { + "pascal_name": "AccountGroup", + "is_object": true + }, + "all_fields": [ + { + "name": "displayName", + "description": "String that represents a human-readable group name", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "externalId", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Databricks group ID", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "members", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "meta", + "description": "Container for the group identifier. Workspace local versus account.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ResourceMeta", + "is_object": true + } + }, + { + "name": "roles", + "description": "Indicates if the group has the admin role.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a group from the Databricks account.", + "summary": "Delete a group.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/Groups/{id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteAccountGroupRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the information for a specific group in the Databricks account.", + "summary": "Get group details.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/Groups/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAccountGroupRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccountGroup", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID for a group in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets all details of the groups associated with the Databricks account. As of 08/22/2025,\nthis endpoint will no longer return members. Instead, members should be retrieved by\niterating through `Get group details`. Existing accounts that rely on this attribute\nwill not be impacted and will continue receiving member data as before.", + "summary": "List group details.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/Groups", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAccountGroupsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListAccountGroupsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "attributes", + "description": "Comma-separated list of attributes to return in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "count", + "description": "Desired number of results per page. Default is 10000.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "excludedAttributes", + "description": "Comma-separated list of attributes to exclude in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "filter", + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortBy", + "description": "Attribute to sort the results.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortOrder", + "description": "The order to sort the results.", + "is_query": true, + "entity": { + "pascal_name": "ListSortOrder", + "enum": [ + { + "content": "ascending" + }, + { + "content": "descending" + } + ] + } + }, + { + "name": "startIndex", + "description": "Specifies the index of the first result. First item is number 1.", + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "pagination": { + "offset": { + "name": "startIndex", + "description": "Specifies the index of the first result. First item is number 1.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + "limit": { + "name": "count", + "description": "Desired number of results per page. Default is 10000.", + "is_query": true, + "entity": { + "is_int64": true + } + } + } + }, + { + "name": "Patch", + "description": "Partially updates the details of a group.", + "summary": "Update group details.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/Groups/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "PatchAccountGroupRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "Operations", + "is_request_body_field": true, + "entity": { + "pascal_name": "PatchList", + "array_value": { + "pascal_name": "Patch", + "is_object": true + } + } + }, + { + "name": "schemas", + "description": "The schema of the patch request. Must be [\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"].", + "is_request_body_field": true, + "entity": { + "pascal_name": "PatchSchemaList", + "array_value": { + "pascal_name": "PatchSchema", + "enum": [ + { + "content": "urn:ietf:params:scim:api:messages:2.0:PatchOp" + } + ] + } + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the details of a group by replacing the entire group entity.", + "summary": "Replace a group.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/Groups/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateAccountGroupRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Databricks group ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Databricks group ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "displayName", + "description": "String that represents a human-readable group name", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "externalId", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Databricks group ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "members", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "meta", + "description": "Container for the group identifier. Workspace local versus account.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ResourceMeta", + "is_object": true + } + }, + { + "name": "roles", + "description": "Indicates if the group has the admin role.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Databricks group ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "iamv2.AccountIamV2", + "name": "AccountIamV2", + "description": "These APIs are used to manage identities and the workspace access of these identities in Databricks.", + "package": { + "name": "iamv2" + }, + "is_accounts": true, + "docs_group": "iam", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "CreateDirectGroupMember", + "description": "Creates a group membership (assigns a principal to a group).\n\nAuthorization: the caller must be an account admin or a manager of the group (holds the\n`roles/group.manager` role on it).", + "summary": "Create a direct group membership.", + "path": "/api/2.0/identity/accounts/{account_id}/groups/{group_id}/direct-members", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateDirectGroupMemberRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "direct_group_member", + "description": "Required. The direct group member to be added to the group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DirectGroupMember", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "direct_group_member", + "description": "Required. The direct group member to be added to the group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DirectGroupMember", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "direct_group_member", + "description": "Required. The direct group member to be added to the group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DirectGroupMember", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + "response": { + "pascal_name": "DirectGroupMember", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "direct_group_member", + "description": "Required. The direct group member to be added to the group.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DirectGroupMember", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "display_name", + "description": "Display name of the principal.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "external_id", + "description": "The external ID of the principal in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "group_id", + "description": "The internal ID of the group this member belongs to.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "membership_source", + "description": "The source of group membership (internal or from identity provider).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "GroupMembershipSource", + "enum": [ + { + "content": "IDENTITY_PROVIDER" + }, + { + "content": "INTERNAL" + } + ] + } + }, + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_type", + "description": "The type of the principal (user/service principal/group).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "CreateGroup", + "description": "Creates a local group in the Databricks account and returns the created group. A local group\nis one that is not synced from the customer's identity provider, and can be created whether or\nnot Account Identity Management (AIM) is enabled.\n\nWhen AIM is enabled, supplying an external ID returns an error. To provision the identity from\nyour identity provider, resolve it by its external ID with ResolveGroup; to read an existing\nexternal identity, use the ExternalGroup resource.", + "summary": "Create a group in the account.", + "path": "/api/2.0/identity/accounts/{account_id}/groups", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateGroupRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "group", + "description": "Required. Group to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "group", + "description": "Required. Group to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "group", + "description": "Required. Group to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + }, + "response": { + "pascal_name": "Group", + "is_object": true + }, + "all_fields": [ + { + "name": "group", + "description": "Required. Group to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + }, + { + "name": "account_id", + "description": "The parent account ID for group in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "external_id", + "description": "ExternalId of the group in the customer's IdP.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "group_id", + "description": "Internal group ID of the group in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "group_name", + "description": "Display name of the group.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateIdentityVisibilityFilter", + "description": "Creates a group visibility filter in the account. Requires account admin privileges.\nSet `principal_type` to `GROUP` and specify exactly one of `exact` (external ID) or `prefix`\n(display-name starts with). The filter applies across all workspaces in the account.\nA duplicate filter ID or an existing rule with the same type and match value returns\n`ALREADY_EXISTS`. Filters are immutable; to change a rule, delete it and create a new one.", + "summary": "Create an identity-visibility filter in the account.", + "path": "/api/2.0/identity/{parent=accounts/*}/identity-visibility-filters", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateIdentityVisibilityFilterRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "Required. The parent account. Format: accounts/{account_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "identity_visibility_filter", + "description": "Required. The filter to create. Set `principal_type` to `GROUP` and specify exactly one of\n`exact` or `prefix`. The server assigns the resource name; any supplied `name` is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IdentityVisibilityFilter", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Required. The parent account. Format: accounts/{account_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "identity_visibility_filter", + "description": "Required. The filter to create. Set `principal_type` to `GROUP` and specify exactly one of\n`exact` or `prefix`. The server assigns the resource name; any supplied `name` is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IdentityVisibilityFilter", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "identity_visibility_filter", + "description": "Required. The filter to create. Set `principal_type` to `GROUP` and specify exactly one of\n`exact` or `prefix`. The server assigns the resource name; any supplied `name` is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IdentityVisibilityFilter", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_type", + "description": "The type of principal this rule applies to. Set to `GROUP` when creating a filter.\nOther principal types are not supported for creation.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_type", + "description": "The type of principal this rule applies to. Set to `GROUP` when creating a filter.\nOther principal types are not supported for creation.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "IdentityVisibilityFilter", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_type", + "description": "The type of principal this rule applies to. Set to `GROUP` when creating a filter.\nOther principal types are not supported for creation.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_type", + "description": "The type of principal this rule applies to. Set to `GROUP` when creating a filter.\nOther principal types are not supported for creation.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "identity_visibility_filter", + "description": "Required. The filter to create. Set `principal_type` to `GROUP` and specify exactly one of\n`exact` or `prefix`. The server assigns the resource name; any supplied `name` is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "IdentityVisibilityFilter", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_type", + "description": "The type of principal this rule applies to. Set to `GROUP` when creating a filter.\nOther principal types are not supported for creation.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_type", + "description": "The type of principal this rule applies to. Set to `GROUP` when creating a filter.\nOther principal types are not supported for creation.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + } + ] + } + }, + { + "name": "identity_visibility_filter_id", + "description": "Optional. The ID to use for the filter, which becomes the final component of its resource name.\nIf not specified or empty, the server generates one. Must not contain `/`.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Required. The parent account. Format: accounts/{account_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "exact", + "description": "Exact match on the group's external ID from the identity provider.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ExactMatchRule", + "is_object": true + } + }, + { + "name": "name", + "description": "The resource name of the identity-visibility filter.\nFormat: accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "prefix", + "description": "Case-sensitive starts-with match on the group's display name.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PrefixMatchRule", + "is_object": true + } + }, + { + "name": "principal_type", + "description": "The type of principal this rule applies to. Set to `GROUP` when creating a filter.\nOther principal types are not supported for creation.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Required. The parent account. Format: accounts/{account_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal_type", + "description": "The type of principal this rule applies to. Set to `GROUP` when creating a filter.\nOther principal types are not supported for creation.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + } + ] + }, + { + "name": "CreateServicePrincipal", + "description": "Creates a local service principal in the Databricks account and returns the created service\nprincipal. A local service principal is one that is not synced from the customer's identity\nprovider, and can be created whether or not Account Identity Management (AIM) is enabled.\n\nWhen AIM is enabled, supplying an external ID returns an error. To provision the identity from\nyour identity provider, resolve it by its external ID with ResolveServicePrincipal; to read an\nexisting external identity, use the ExternalServicePrincipal resource.", + "summary": "Create a service principal in the account.", + "path": "/api/2.0/identity/accounts/{account_id}/service-principals", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateServicePrincipalRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "service_principal", + "description": "Required. Service principal to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "service_principal", + "description": "Required. Service principal to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "service_principal", + "description": "Required. Service principal to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "ServicePrincipal", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "service_principal", + "description": "Required. Service principal to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + { + "name": "account_id", + "description": "The parent account ID for the service principal in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + }, + { + "name": "application_id", + "description": "Application ID of the service principal. Set at creation time and cannot be changed\nafterwards; when omitted, the server generates one.", + "is_computed": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "external_id", + "description": "ExternalId of the service principal in the customer's IdP.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "Internal service principal ID of the service principal in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + { + "name": "CreateUser", + "description": "Creates a local user in the Databricks account and returns the created user. A local user is\none that is not synced from the customer's identity provider, and can be created whether or not\nAccount Identity Management (AIM) is enabled.\n\nWhen AIM is enabled, supplying an external ID returns an error. To provision the identity from\nyour identity provider, resolve it by its external ID with ResolveUser; to read an existing\nexternal identity, use the ExternalUser resource.", + "summary": "Create a user in the account.", + "path": "/api/2.0/identity/accounts/{account_id}/users", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateUserRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "user", + "description": "Required. User to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "user", + "description": "Required. User to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "user", + "description": "Required. User to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "User", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "user", + "description": "Required. User to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + { + "name": "account_id", + "description": "The accountId parent of the user in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + }, + { + "name": "external_id", + "description": "ExternalId of the user in the customer's IdP.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "user_id", + "description": "Internal userId of the user in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + { + "name": "CreateWorkspaceAssignment", + "description": "Creates a workspace assignment for a principal. Entitlements are granted one at a time\nrather than atomically. If the request fails partway through, the principal stays assigned to\nthe workspace with only some of the requested entitlements. Get the assignment\nafterwards to confirm which entitlements were granted.", + "summary": "Create a workspace assignment.", + "path": "/api/2.0/identity/accounts/{account_id}/workspaces/{workspace_id}/workspace-assignments", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateWorkspaceAssignmentRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment is being created.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment is being created.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + "response": { + "pascal_name": "WorkspaceAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment is being created.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "account_id", + "description": "The account ID parent of the workspace where the principal is assigned", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_entitlements", + "description": "Every entitlement the principal holds in this workspace, whether granted directly or through\ngroup membership. Get responses populate this field. List responses leave it empty.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "entitlements", + "description": "Entitlements granted directly to the principal on this workspace. This is the only\nclient-settable field. Create and update manage exactly this set, including entitlements the\nprincipal also holds through a group.\nList responses leave this field empty. Get a single principal to read its entitlements.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_type", + "description": "The type of the principal (user/service principal/group) that is assigned.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + }, + { + "name": "workspace_id", + "description": "The workspace ID where the principal is assigned.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment is being created.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "CreateWorkspaceAssignmentDetail", + "description": "Creates a workspace assignment detail for a principal.", + "summary": "Create a workspace assignment detail.", + "path": "/api/2.0/identity/accounts/{account_id}/workspaces/{workspace_id}/workspace-assignment-details", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateWorkspaceAssignmentDetailRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment detail is being created.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment detail is being created.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + "response": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment detail is being created.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "account_id", + "description": "The account ID parent of the workspace where the principal is assigned", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_entitlements", + "description": "Every entitlement the principal holds in this workspace, whether granted directly or through\ngroup membership. Get responses populate this field. List responses leave it empty.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "entitlements", + "description": "Entitlements granted directly to the principal on this workspace. This is the only\nclient-settable field. Create and update manage exactly this set, including entitlements the\nprincipal also holds through a group.\nList responses leave this field empty. Get a single principal to read its entitlements.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_type", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + }, + { + "name": "workspace_id", + "description": "The workspace ID where the principal is assigned.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment detail is being created.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "DeleteDirectGroupMember", + "description": "Deletes a group membership (unassigns a principal from a group).\n\nAuthorization: the caller must be an account admin or a manager of the group (holds the\n`roles/group.manager` role on it).", + "summary": "Delete a direct group membership.", + "path": "/api/2.0/identity/accounts/{account_id}/groups/{group_id}/direct-members/{principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteDirectGroupMemberRequest", + "is_object": true, + "required_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal to be unassigned from the group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal to be unassigned from the group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal to be unassigned from the group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal to be unassigned from the group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "DeleteGroup", + "description": "Deletes a group from the Databricks account by its internal ID.\n\nAuthorization: the caller must be an account admin or a manager of the group (holds the\n`roles/group.manager` role on it).", + "summary": "Delete a group in the account.", + "path": "/api/2.0/identity/accounts/{account_id}/groups/{group_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteGroupRequest", + "is_object": true, + "required_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteIdentityVisibilityFilter", + "description": "Deletes a group visibility filter by its resource name. Requires account admin privileges.\nDeleting a filter does not delete groups or revoke access. Groups covered only by this rule\nstop being discoverable unless they or a transitive parent are already provisioned in the\naccount. If no group filters remain, all groups become visible again.\nDeleting a filter that does not exist succeeds without making any changes.", + "summary": "Delete an identity-visibility filter.", + "path": "/api/2.0/identity/{name=accounts/*/identity-visibility-filters/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteIdentityVisibilityFilterRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Required. The resource name of the filter.\nFormat: accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Required. The resource name of the filter.\nFormat: accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The resource name of the filter.\nFormat: accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Required. The resource name of the filter.\nFormat: accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteServicePrincipal", + "description": "Deletes a service principal from the Databricks account by its internal ID.", + "summary": "Delete a service principal in the account.", + "path": "/api/2.0/identity/accounts/{account_id}/service-principals/{service_principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteServicePrincipalRequest", + "is_object": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteUser", + "description": "Deletes a user from the Databricks account by its internal ID.", + "summary": "Delete a user in the account.", + "path": "/api/2.0/identity/accounts/{account_id}/users/{user_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteUserRequest", + "is_object": true, + "required_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteWorkspaceAssignment", + "description": "Deletes a workspace assignment for a principal, revoking all of its entitlements.\nEntitlements are revoked one at a time rather than atomically. If the request fails partway\nthrough, the principal stays assigned with some of its original entitlements. Retrying is safe.", + "summary": "Delete a workspace assignment.", + "path": "/api/2.0/identity/accounts/{account_id}/workspaces/{workspace_id}/workspace-assignments/{principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteWorkspaceAssignmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID where the principal has access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID where the principal has access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_id", + "description": "The workspace ID where the principal has access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "The workspace ID where the principal has access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "DeleteWorkspaceAssignmentDetail", + "description": "Deletes a workspace assignment detail for a principal, revoking all of its entitlements.\nEntitlements are revoked one at a time rather than atomically. If the request fails partway\nthrough, the principal stays assigned with some of its original entitlements. Retrying is safe.", + "summary": "Delete a workspace assignment detail.", + "path": "/api/2.0/identity/accounts/{account_id}/workspaces/{workspace_id}/workspace-assignment-details/{principal_id}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteWorkspaceAssignmentDetailRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID where the principal has access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID where the principal has access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_id", + "description": "The workspace ID where the principal has access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "The workspace ID where the principal has access.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "GetDirectGroupMember", + "description": "Gets a provisioned direct member of a group.", + "summary": "Get a direct group member.", + "path": "/api/2.0/identity/accounts/{account_id}/groups/{group_id}/direct-members/{principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetDirectGroupMemberRequest", + "is_object": true, + "required_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal belonging to the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal belonging to the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "DirectGroupMember", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal belonging to the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal belonging to the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "GetExternalGroup", + "description": "Retrieves an external group with the given external ID from the customer's\nIdP. If the group does not exist, it will be created in the account. If the\ncustomer is not onboarded onto Automatic Identity Management (AIM), this will\nreturn an error.", + "summary": "Get an external group in the account.", + "path": "/api/2.0/identity/{name=accounts/*/external-groups/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetExternalGroupRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external group.\nFormat: accounts/{account_id}/external-groups/{external_group_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external group.\nFormat: accounts/{account_id}/external-groups/{external_group_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExternalGroup", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external group.\nFormat: accounts/{account_id}/external-groups/{external_group_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Required. The resource name of the external group.\nFormat: accounts/{account_id}/external-groups/{external_group_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetExternalServicePrincipal", + "description": "Retrieves an external service principal with the given external ID from the\ncustomer's IdP. If the service principal does not exist, it will be created.\nIf the customer is not onboarded onto Automatic Identity Management (AIM),\nthis will return an error.", + "summary": "Get an external service principal in the account.", + "path": "/api/2.0/identity/{name=accounts/*/external-service-principals/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetExternalServicePrincipalRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external service principal.\nFormat: accounts/{account_id}/external-service-principals/{external_service_principal_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external service principal.\nFormat: accounts/{account_id}/external-service-principals/{external_service_principal_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExternalServicePrincipal", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external service principal.\nFormat: accounts/{account_id}/external-service-principals/{external_service_principal_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Required. The resource name of the external service principal.\nFormat: accounts/{account_id}/external-service-principals/{external_service_principal_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetExternalUser", + "description": "Retrieves an external user with the given external ID from the customer's\nIdP. If the user does not exist, it will be created. If the customer is not\nonboarded onto Automatic Identity Management (AIM), this will return an error.", + "summary": "Get an external user in the account.", + "path": "/api/2.0/identity/{name=accounts/*/external-users/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetExternalUserRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external user.\nFormat: accounts/{account_id}/external-users/{external_user_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external user.\nFormat: accounts/{account_id}/external-users/{external_user_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExternalUser", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external user.\nFormat: accounts/{account_id}/external-users/{external_user_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Required. The resource name of the external user.\nFormat: accounts/{account_id}/external-users/{external_user_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetGroup", + "description": "Fetches a group from the Databricks account by its internal ID.", + "summary": "Get a group in the account.", + "path": "/api/2.0/identity/accounts/{account_id}/groups/{group_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetGroupRequest", + "is_object": true, + "required_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Group", + "is_object": true + }, + "all_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetIdentityVisibilityFilter", + "description": "Gets a group visibility filter by its resource name. Requires account admin privileges.\nReturns the filter rule, not the groups matched by the rule.", + "summary": "Get an identity-visibility filter.", + "path": "/api/2.0/identity/{name=accounts/*/identity-visibility-filters/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetIdentityVisibilityFilterRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Required. The resource name of the filter.\nFormat: accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Required. The resource name of the filter.\nFormat: accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "IdentityVisibilityFilter", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_type", + "description": "The type of principal this rule applies to. Set to `GROUP` when creating a filter.\nOther principal types are not supported for creation.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_type", + "description": "The type of principal this rule applies to. Set to `GROUP` when creating a filter.\nOther principal types are not supported for creation.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The resource name of the filter.\nFormat: accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Required. The resource name of the filter.\nFormat: accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetServicePrincipal", + "description": "Fetches a service principal from the Databricks account by its internal ID.", + "summary": "Get a service principal in the account.", + "path": "/api/2.0/identity/accounts/{account_id}/service-principals/{service_principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetServicePrincipalRequest", + "is_object": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ServicePrincipal", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetUser", + "description": "Fetches a user from the Databricks account by its internal ID.", + "summary": "Get a user in the account.", + "path": "/api/2.0/identity/accounts/{account_id}/users/{user_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetUserRequest", + "is_object": true, + "required_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "User", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetWorkspaceAccessDetail", + "description": "Returns the access details for a principal in a workspace. Allows for checking access details for any\nprovisioned principal (user, service principal, or group) in a workspace.\n* Provisioned principal here refers to one that has been synced into Databricks from the customer's IdP or\nadded explicitly to Databricks via SCIM/UI.\nAllows for passing in a \"view\" parameter to control what fields are returned (BASIC by default or FULL).", + "summary": "Get workspace access details for a principal.", + "path": "/api/2.0/identity/accounts/{account_id}/workspaces/{workspace_id}/workspace-access-details/{principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetWorkspaceAccessDetailRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the access details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the access details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the access details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the access details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "WorkspaceAccessDetail", + "is_object": true + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the access details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "view", + "description": "Controls what fields are returned.", + "is_query": true, + "entity": { + "pascal_name": "WorkspaceAccessDetailView", + "enum": [ + { + "content": "BASIC" + }, + { + "content": "FULL" + } + ] + } + }, + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the access details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the access details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the access details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "GetWorkspaceAssignment", + "description": "Returns the assignment for a principal in a workspace.", + "summary": "Get a workspace assignment for a principal.", + "path": "/api/2.0/identity/accounts/{account_id}/workspaces/{workspace_id}/workspace-assignments/{principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetWorkspaceAssignmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the assignment is being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment is being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the assignment is being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment is being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "WorkspaceAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment is being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the assignment is being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the assignment is being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment is being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "GetWorkspaceAssignmentDetail", + "description": "Returns the assignment details for a principal in a workspace.", + "summary": "Get workspace assignment details for a principal.", + "path": "/api/2.0/identity/accounts/{account_id}/workspaces/{workspace_id}/workspace-assignment-details/{principal_id}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetWorkspaceAssignmentDetailRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the assignment details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the assignment details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the assignment details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the assignment details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "ListDirectGroupMembers", + "description": "Lists provisioned direct members of a group with their membership source (internal or from identity provider).", + "summary": "List direct group members.", + "path": "/api/2.0/identity/accounts/{account_id}/groups/{group_id}/direct-members", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListDirectGroupMembersRequest", + "is_object": true, + "required_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks whose direct members are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks whose direct members are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "ListDirectGroupMembersResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks whose direct members are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "page_size", + "description": "The maximum number of members to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous ListDirectGroupMembers call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks whose direct members are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous ListDirectGroupMembers call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListGroups", + "description": "Lists the groups in the Databricks account, returning one page per call. Supports filtering by\ngroup name or external ID.", + "summary": "List groups in the account.", + "path": "/api/2.0/identity/accounts/{account_id}/groups", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListGroupsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListGroupsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter", + "description": "Optional. Allows filtering groups by group name or external id.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "The maximum number of groups to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous ListGroups call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous ListGroups call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListIdentityVisibilityFilters", + "description": "Lists group visibility filters in the account, returning one page per call. Requires account\nadmin privileges. Returns filter rules, not the groups matched by those rules.\nTo retrieve the next page, pass the response's `next_page_token` as `page_token` in the next\nrequest. If `next_page_token` is omitted, there are no more pages.", + "summary": "List the identity-visibility filters in the account.", + "path": "/api/2.0/identity/{parent=accounts/*}/identity-visibility-filters", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListIdentityVisibilityFiltersRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "Required. The parent account. Format: accounts/{account_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Required. The parent account. Format: accounts/{account_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListIdentityVisibilityFiltersResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of filters to return. The service may return fewer than this value.\nIf omitted or non-positive, defaults to 100. Values above 1000 are reduced to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous ListIdentityVisibilityFilters call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Required. The parent account. Format: accounts/{account_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Required. The parent account. Format: accounts/{account_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous ListIdentityVisibilityFilters call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListServicePrincipals", + "description": "Lists the service principals in the Databricks account, returning one page per call. Supports\nfiltering by application ID or external ID.", + "summary": "List service principals in the account.", + "path": "/api/2.0/identity/accounts/{account_id}/service-principals", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListServicePrincipalsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListServicePrincipalsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter", + "description": "Optional. Allows filtering service principals by application id or external id.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "The maximum number of service principals to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous ListServicePrincipals call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous ListServicePrincipals call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListTransitiveParentGroups", + "description": "Lists all transitive parent groups of a principal.", + "summary": "List all transitive parent groups of a principal.", + "path": "/api/2.0/identity/accounts/{account_id}/principals/{principal_id}/transitive-parent-groups", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListTransitiveParentGroupsRequest", + "is_object": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Required. Internal ID of the principal in Databricks whose transitive parent groups are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "principal_id", + "description": "Required. Internal ID of the principal in Databricks whose transitive parent groups are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "ListTransitiveParentGroupsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of parent groups to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous ListTransitiveParentGroups call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal in Databricks whose transitive parent groups are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "principal_id", + "description": "Required. Internal ID of the principal in Databricks whose transitive parent groups are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "ListUsers", + "description": "Lists the users in the Databricks account, returning one page per call. Supports filtering by\nusername or external ID.", + "summary": "List users in the account.", + "path": "/api/2.0/identity/accounts/{account_id}/users", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListUsersRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListUsersResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter", + "description": "Optional. Allows filtering users by username or external id.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "The maximum number of users to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous ListUsers call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous ListUsers call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListWorkspaceAssignmentDetails", + "description": "Lists workspace assignment details for a workspace. The response omits the per-principal\nentitlement fields (`entitlements` and `effective_entitlements`). To read the entitlements for\na single principal, get that principal's assignment detail.", + "summary": "List workspace assignment details for a workspace.", + "path": "/api/2.0/identity/accounts/{account_id}/workspaces/{workspace_id}/workspace-assignment-details", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListWorkspaceAssignmentDetailsRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment details are being fetched.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment details are being fetched.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "ListWorkspaceAssignmentDetailsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of workspace assignment details to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous ListWorkspaceAssignmentDetails call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment details are being fetched.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment details are being fetched.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous ListWorkspaceAssignmentDetails call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListWorkspaceAssignments", + "description": "Lists workspace assignments for a workspace. The response omits the per-principal\nentitlement fields (`entitlements` and `effective_entitlements`). To read the entitlements for\na single principal, get that principal's assignment.", + "summary": "List workspace assignments for a workspace.", + "path": "/api/2.0/identity/accounts/{account_id}/workspaces/{workspace_id}/workspace-assignments", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListWorkspaceAssignmentsRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignments are being fetched.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignments are being fetched.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "ListWorkspaceAssignmentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of workspace assignments to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous ListWorkspaceAssignments call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignments are being fetched.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignments are being fetched.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous ListWorkspaceAssignments call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ResolveGroup", + "description": "Resolves a group with the given external ID from the customer's IdP. If the group does not exist, it will be created in the account.\nIf the customer is not onboarded onto Automatic Identity Management (AIM), this will return an error.", + "summary": "Resolve an external group in the Databricks account.", + "path": "/api/2.0/identity/accounts/{account_id}/groups/resolve-by-external-id", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ResolveGroupRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the group in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the group in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ResolveGroupResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the group in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "external_id", + "description": "Required. The external ID of the group in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ResolveServicePrincipal", + "description": "Resolves a service principal with the given external ID from the customer's IdP. If the service\nprincipal does not exist, it will be created.\nIf the customer is not onboarded onto Automatic Identity Management (AIM), this will return an error.", + "summary": "Resolve an external service principal in the Databricks account.", + "path": "/api/2.0/identity/accounts/{account_id}/service-principals/resolve-by-external-id", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ResolveServicePrincipalRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the service principal in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the service principal in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ResolveServicePrincipalResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the service principal in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "external_id", + "description": "Required. The external ID of the service principal in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ResolveUser", + "description": "Resolves a user with the given external ID from the customer's IdP. If the user does not exist, it will be created.\nIf the customer is not onboarded onto Automatic Identity Management (AIM), this will return an error.", + "summary": "Resolve an external user in the Databricks account.", + "path": "/api/2.0/identity/accounts/{account_id}/users/resolve-by-external-id", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ResolveUserRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the user in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the user in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ResolveUserResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the user in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "external_id", + "description": "Required. The external ID of the user in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateGroup", + "description": "Updates an existing group in the Databricks account. Only the fields named in the update mask\nare modified. Returns the updated Group resource.\n\nWhen AIM is enabled and the group is an external identity (its external_id is set), only\nexternal_id can be updated; its other fields are sourced from your identity provider.\nWith AIM and group visibility filters, a new nonempty external_id must identify a visible group.\nClearing external_id is allowed.\n\nAuthorization: the caller must be an account admin or a manager of the group (holds the\n`roles/group.manager` role on it).", + "summary": "Update a group in the account.", + "path": "/api/2.0/identity/accounts/{account_id}/groups/{group_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateGroupRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "group", + "description": "Required. Group to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "group", + "description": "Required. Group to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "group", + "description": "Required. Group to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + }, + "response": { + "pascal_name": "Group", + "is_object": true + }, + "all_fields": [ + { + "name": "group", + "description": "Required. Group to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + }, + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_id", + "description": "The parent account ID for group in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "external_id", + "description": "ExternalId of the group in the customer's IdP.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "group_id", + "description": "Internal group ID of the group in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "group_name", + "description": "Display name of the group.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateServicePrincipal", + "description": "Updates an existing service principal in the Databricks account. Only the fields named in the\nupdate mask are modified. Returns the updated ServicePrincipal resource.\n\nWhen AIM is enabled and the service principal is an external identity (its external_id is set),\nonly external_id can be updated; its other fields are sourced from your identity provider.", + "summary": "Update a service principal in the account.", + "path": "/api/2.0/identity/accounts/{account_id}/service-principals/{service_principal_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateServicePrincipalRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal", + "description": "Required. Service Principal to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "service_principal", + "description": "Required. Service Principal to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "service_principal", + "description": "Required. Service Principal to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "ServicePrincipal", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "service_principal", + "description": "Required. Service Principal to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_id", + "description": "The parent account ID for the service principal in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + }, + { + "name": "application_id", + "description": "Application ID of the service principal. Set at creation time and cannot be changed\nafterwards; when omitted, the server generates one.", + "is_computed": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "external_id", + "description": "ExternalId of the service principal in the customer's IdP.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "Internal service principal ID of the service principal in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + { + "name": "UpdateUser", + "description": "Updates an existing user in the Databricks account and returns the updated user. Only the\nfields named in the update mask are modified. The updatable fields are fullName.givenName,\nfullName.familyName, status, and externalId.\n\nWhen AIM is enabled and the user is an external identity (its external_id is set), only\nexternal_id can be updated; its other fields are sourced from your identity provider.", + "summary": "Update a user in the account.", + "path": "/api/2.0/identity/accounts/{account_id}/users/{user_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateUserRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "user", + "description": "Required. User to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "user", + "description": "Required. User to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "user", + "description": "Required. User to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "User", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "user", + "description": "Required. User to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_id", + "description": "The accountId parent of the user in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + }, + { + "name": "external_id", + "description": "ExternalId of the user in the customer's IdP.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "user_id", + "description": "Internal userId of the user in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + { + "name": "UpdateWorkspaceAssignment", + "description": "Updates the entitlements of a directly assigned principal in a workspace. Changes are applied\none at a time rather than atomically. If the request fails partway through, only some of the\nrequested changes take effect. Get the assignment afterwards to confirm the final state.", + "summary": "Update a workspace assignment.", + "path": "/api/2.0/identity/accounts/{account_id}/workspaces/{workspace_id}/workspace-assignments/{principal_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateWorkspaceAssignmentRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment is being updated.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment is being updated.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + "response": { + "pascal_name": "WorkspaceAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment is being updated.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "account_id", + "description": "The account ID parent of the workspace where the principal is assigned", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_entitlements", + "description": "Every entitlement the principal holds in this workspace, whether granted directly or through\ngroup membership. Get responses populate this field. List responses leave it empty.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "entitlements", + "description": "Entitlements granted directly to the principal on this workspace. This is the only\nclient-settable field. Create and update manage exactly this set, including entitlements the\nprincipal also holds through a group.\nList responses leave this field empty. Get a single principal to read its entitlements.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_type", + "description": "The type of the principal (user/service principal/group) that is assigned.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + }, + { + "name": "workspace_id", + "description": "The workspace ID where the principal is assigned.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment is being updated.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "UpdateWorkspaceAssignmentDetail", + "description": "Updates the entitlements of a directly assigned principal in a workspace. Changes are applied\none at a time rather than atomically. If the request fails partway through, only some of the\nrequested changes take effect. Get the assignment detail afterwards to confirm the final state.", + "summary": "Update a workspace assignment detail.", + "path": "/api/2.0/identity/accounts/{account_id}/workspaces/{workspace_id}/workspace-assignment-details/{principal_id}", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateWorkspaceAssignmentDetailRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment detail is being updated.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment detail is being updated.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + "response": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment detail is being updated.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "account_id", + "description": "The account ID parent of the workspace where the principal is assigned", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_entitlements", + "description": "Every entitlement the principal holds in this workspace, whether granted directly or through\ngroup membership. Get responses populate this field. List responses leave it empty.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "entitlements", + "description": "Entitlements granted directly to the principal on this workspace. This is the only\nclient-settable field. Create and update manage exactly this set, including entitlements the\nprincipal also holds through a group.\nList responses leave this field empty. Get a single principal to read its entitlements.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_type", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + }, + { + "name": "workspace_id", + "description": "The workspace ID where the principal is assigned.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "Required. The workspace ID for which the workspace assignment detail is being updated.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + ] + }, + { + "id": "compute.InstancePools", + "name": "InstancePools", + "description": "Instance Pools API are used to create, edit, delete and list instance pools by using\nready-to-use cloud instances which reduces a cluster start and auto-scaling times.\n\nDatabricks pools reduce cluster start and auto-scaling times by maintaining a set of idle,\nready-to-use instances. When a cluster is attached to a pool, cluster nodes are created using\nthe pool’s idle instances. If the pool has no idle instances, the pool expands by allocating\na new instance from the instance provider in order to accommodate the cluster’s request.\nWhen a cluster releases an instance, it returns to the pool and is free for another cluster\nto use. Only clusters attached to a pool can use that pool’s idle instances.\n\nYou can specify a different pool for the driver node and worker nodes, or use the same pool\nfor both.\n\nDatabricks does not charge DBUs while instances are idle in the pool. Instance provider\nbilling does apply. See pricing.", + "package": { + "name": "compute" + }, + "docs_group": "compute", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "InstancePoolAndStatsInstancePoolNameToInstancePoolIdMap" + }, + "is_legacy_empty_request": true, + "request": { + "pascal_name": "ListInstancePoolsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new instance pool using idle and ready-to-use cloud instances.", + "summary": "Create a new instance pool.", + "path": "/api/2.0/instance-pools/create", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateInstancePool", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "instance_pool_name", + "description": "Pool name requested by the user. Pool name must be unique. Length must be between 1 and 100\ncharacters.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "node_type_id", + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "instance_pool_name", + "description": "Pool name requested by the user. Pool name must be unique. Length must be between 1 and 100\ncharacters.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "node_type_id", + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateInstancePoolResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "aws_attributes", + "description": "Attributes related to instance pools running on Amazon Web Services.\nIf not specified at pool creation, a set of default values will be used.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "InstancePoolAwsAttributes", + "is_object": true + } + }, + { + "name": "azure_attributes", + "description": "Attributes related to instance pools running on Azure.\nIf not specified at pool creation, a set of default values will be used.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "InstancePoolAzureAttributes", + "is_object": true + } + }, + { + "name": "custom_tags", + "description": "Additional tags for pool resources. Databricks will tag all pool resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "disk_spec", + "description": "Defines the specification of the disks that will be attached to all spark containers.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DiskSpec", + "is_object": true + } + }, + { + "name": "enable_elastic_disk", + "description": "Autoscaling Local Storage: when enabled, this instances in this pool will dynamically acquire\nadditional disk space when its Spark workers are running low on disk space. In AWS, this\nfeature requires specific AWS permissions to function correctly - refer to the User Guide for\nmore details.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "gcp_attributes", + "description": "Attributes related to instance pools running on Google Cloud Platform.\nIf not specified at pool creation, a set of default values will be used.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "InstancePoolGcpAttributes", + "is_object": true + } + }, + { + "name": "idle_instance_autotermination_minutes", + "description": "Automatically terminates the extra instances in the pool cache after they are inactive for this\ntime in minutes if min_idle_instances requirement is already met. If not set, the extra pool\ninstances will be automatically terminated after a default timeout. If specified, the\nthreshold must be between 0 and 10000 minutes.\nUsers can also set this value to 0 to instantly remove idle instances from the cache if\nmin cache size could still hold.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "instance_pool_name", + "description": "Pool name requested by the user. Pool name must be unique. Length must be between 1 and 100\ncharacters.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_capacity", + "description": "Maximum number of outstanding instances to keep in the pool, including both instances used by\nclusters and idle instances. Clusters that require further instance provisioning will fail during\nupsize requests.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "min_idle_instances", + "description": "Minimum number of idle instances to keep in the instance pool", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "node_type_flexibility", + "description": "Flexible node type configuration for the pool.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "NodeTypeFlexibility", + "is_object": true + } + }, + { + "name": "node_type_id", + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "preloaded_docker_images", + "description": "Custom Docker Image BYOC", + "is_request_body_field": true, + "entity": { + "pascal_name": "DockerImageList", + "array_value": { + "pascal_name": "DockerImage", + "is_object": true + } + } + }, + { + "name": "preloaded_spark_versions", + "description": "A list containing at most one preloaded Spark image version for the pool. Pool-backed clusters started\nwith the preloaded Spark version will start faster. A list of available Spark versions\ncan be retrieved by using the [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "remote_disk_throughput", + "description": "If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED types.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "total_initial_remote_disk_size", + "description": "If set, what the total initial volume size (in GB) of the remote disks should be. Currently only supported for GCP HYPERDISK_BALANCED types.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_pool_name", + "description": "Pool name requested by the user. Pool name must be unique. Length must be between 1 and 100\ncharacters.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "node_type_id", + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes the instance pool permanently. The idle instances in the pool are terminated asynchronously.", + "summary": "Delete an instance pool.", + "path": "/api/2.0/instance-pools/delete", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteInstancePool", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "instance_pool_id", + "description": "The instance pool to be terminated.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "instance_pool_id", + "description": "The instance pool to be terminated.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteInstancePoolResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "instance_pool_id", + "description": "The instance pool to be terminated.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_pool_id", + "description": "The instance pool to be terminated.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Edit", + "description": "Modifies the configuration of an existing instance pool.", + "summary": "Edit an existing instance pool.", + "path": "/api/2.0/instance-pools/edit", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "EditInstancePool", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "instance_pool_id", + "description": "Instance pool ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instance_pool_name", + "description": "Pool name requested by the user. Pool name must be unique. Length must be between 1 and 100\ncharacters.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "node_type_id", + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "instance_pool_id", + "description": "Instance pool ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instance_pool_name", + "description": "Pool name requested by the user. Pool name must be unique. Length must be between 1 and 100\ncharacters.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "node_type_id", + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EditInstancePoolResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "custom_tags", + "description": "Additional tags for pool resources. Databricks will tag all pool resources (e.g., AWS\ninstances and EBS volumes) with these tags in addition to `default_tags`. Notes:\n\n- Currently, Databricks allows at most 45 custom tags", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "idle_instance_autotermination_minutes", + "description": "Automatically terminates the extra instances in the pool cache after they are inactive for this\ntime in minutes if min_idle_instances requirement is already met. If not set, the extra pool\ninstances will be automatically terminated after a default timeout. If specified, the\nthreshold must be between 0 and 10000 minutes.\nUsers can also set this value to 0 to instantly remove idle instances from the cache if\nmin cache size could still hold.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "instance_pool_id", + "description": "Instance pool ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instance_pool_name", + "description": "Pool name requested by the user. Pool name must be unique. Length must be between 1 and 100\ncharacters.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_capacity", + "description": "Maximum number of outstanding instances to keep in the pool, including both instances used by\nclusters and idle instances. Clusters that require further instance provisioning will fail during\nupsize requests.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "min_idle_instances", + "description": "Minimum number of idle instances to keep in the instance pool", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "node_type_id", + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "remote_disk_throughput", + "description": "If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED types.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "total_initial_remote_disk_size", + "description": "If set, what the total initial volume size (in GB) of the remote disks should be. Currently only supported for GCP HYPERDISK_BALANCED types.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_pool_id", + "description": "Instance pool ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instance_pool_name", + "description": "Pool name requested by the user. Pool name must be unique. Length must be between 1 and 100\ncharacters.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "node_type_id", + "description": "This field encodes, through a single value, the resources available to each of\nthe Spark nodes in this cluster. For example, the Spark nodes can be provisioned\nand optimized for memory or compute intensive workloads. A list of available node\ntypes can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Retrieve the information for an instance pool based on its identifier.", + "summary": "Get instance pool information.", + "path": "/api/2.0/instance-pools/get", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetInstancePoolRequest", + "is_object": true, + "required_fields": [ + { + "name": "instance_pool_id", + "description": "The canonical unique identifier for the instance pool.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "instance_pool_id", + "description": "The canonical unique identifier for the instance pool.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetInstancePool", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "instance_pool_id", + "description": "Canonical unique identifier for the pool.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "instance_pool_id", + "description": "Canonical unique identifier for the pool.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "instance_pool_id", + "description": "The canonical unique identifier for the instance pool.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_pool_id", + "description": "The canonical unique identifier for the instance pool.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get instance pool permission levels.", + "path": "/api/2.0/permissions/instance-pools/{instance_pool_id}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetInstancePoolPermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetInstancePoolPermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of an instance pool. Instance pools can inherit permissions from their root object.", + "summary": "Get instance pool permissions.", + "path": "/api/2.0/permissions/instance-pools/{instance_pool_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetInstancePoolPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "InstancePoolPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets a list of instance pools with their statistics.", + "summary": "List instance pool info.", + "path": "/api/2.0/instance-pools/list", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListInstancePoolsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListInstancePools", + "is_object": true + }, + "pagination": {} + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set instance pool permissions.", + "path": "/api/2.0/permissions/instance-pools/{instance_pool_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "InstancePoolPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "InstancePoolPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "InstancePoolAccessControlRequestList", + "array_value": { + "pascal_name": "InstancePoolAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on an instance pool. Instance pools can inherit permissions from their root object.", + "summary": "Update instance pool permissions.", + "path": "/api/2.0/permissions/instance-pools/{instance_pool_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "InstancePoolPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "InstancePoolPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "InstancePoolAccessControlRequestList", + "array_value": { + "pascal_name": "InstancePoolAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_pool_id", + "description": "The instance pool for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "compute.InstanceProfiles", + "name": "InstanceProfiles", + "description": "The Instance Profiles API allows admins to add, list, and remove instance profiles that users can launch\nclusters with. Regular users can list the instance profiles available to them.\nSee [Secure access to S3 buckets](https://docs.databricks.com/administration-guide/cloud-configurations/aws/instance-profiles.html) using\ninstance profiles for more information.", + "package": { + "name": "compute" + }, + "docs_group": "compute", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "is_legacy_empty_request": true, + "request": { + "pascal_name": "ListInstanceProfilesRequest" + } + }, + "methods": [ + { + "name": "Add", + "description": "Registers an instance profile in Databricks. In the UI, you can then give users the permission\nto use this instance profile when launching clusters.\n\nThis API is only available to admin users.", + "summary": "Register an instance profile.", + "path": "/api/2.0/instance-profiles/add", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "AddInstanceProfile", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "instance_profile_arn", + "description": "The AWS ARN of the instance profile to register with Databricks. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "instance_profile_arn", + "description": "The AWS ARN of the instance profile to register with Databricks. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AddResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "iam_role_arn", + "description": "The AWS IAM role ARN of the role associated with the instance profile.\nThis field is required if your role name and instance profile name do\nnot match and you want to use the instance profile with\n[Databricks SQL Serverless](https://docs.databricks.com/sql/admin/serverless.html).\n\nOtherwise, this field is optional.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instance_profile_arn", + "description": "The AWS ARN of the instance profile to register with Databricks. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "is_meta_instance_profile", + "description": "Boolean flag indicating whether the instance profile should only be used in credential\npassthrough scenarios. If true, it means the instance profile contains an meta IAM role\nwhich could assume a wide range of roles. Therefore it should always be used with\nauthorization.\nThis field is optional, the default value is `false`.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "skip_validation", + "description": "By default, Databricks validates that it has sufficient permissions to launch\ninstances with the instance profile. This validation uses AWS dry-run mode for\nthe RunInstances API. If validation fails with an error message that does not\nindicate an IAM related permission issue,\n(e.g. “Your requested instance type is not supported in your requested availability zone”),\nyou can pass this flag to skip the validation and forcibly add the instance profile.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_profile_arn", + "description": "The AWS ARN of the instance profile to register with Databricks. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Edit", + "description": "The only supported field to change is the optional IAM role ARN associated with\nthe instance profile. It is required to specify the IAM role ARN if both of\nthe following are true:\n\n* Your role name and instance profile name do not match. The name is the part\nafter the last slash in each ARN.\n* You want to use the instance profile with [Databricks SQL Serverless](https://docs.databricks.com/sql/admin/serverless.html).\n\nTo understand where these fields are in the AWS console, see\n[Enable serverless SQL warehouses](https://docs.databricks.com/sql/admin/serverless.html).\n\nThis API is only available to admin users.", + "summary": "Edit an instance profile.", + "path": "/api/2.0/instance-profiles/edit", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "InstanceProfile", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "instance_profile_arn", + "description": "The AWS ARN of the instance profile to register with Databricks. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "instance_profile_arn", + "description": "The AWS ARN of the instance profile to register with Databricks. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EditResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "iam_role_arn", + "description": "The AWS IAM role ARN of the role associated with the instance profile.\nThis field is required if your role name and instance profile name do\nnot match and you want to use the instance profile with\n[Databricks SQL Serverless](https://docs.databricks.com/sql/admin/serverless.html).\n\nOtherwise, this field is optional.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instance_profile_arn", + "description": "The AWS ARN of the instance profile to register with Databricks. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "is_meta_instance_profile", + "description": "Boolean flag indicating whether the instance profile should only be used in credential\npassthrough scenarios. If true, it means the instance profile contains an meta IAM role\nwhich could assume a wide range of roles. Therefore it should always be used with\nauthorization.\nThis field is optional, the default value is `false`.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_profile_arn", + "description": "The AWS ARN of the instance profile to register with Databricks. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List the instance profiles that the calling user can use to launch a cluster.\n\nThis API is available to all users.", + "summary": "List available instance profiles.", + "path": "/api/2.0/instance-profiles/list", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListInstanceProfilesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListInstanceProfilesResponse", + "is_object": true + }, + "pagination": {} + }, + { + "name": "Remove", + "description": "Remove the instance profile with the provided ARN.\nExisting clusters with this instance profile will continue to function.\n\nThis API is only accessible to admin users.", + "summary": "Remove the instance profile.", + "path": "/api/2.0/instance-profiles/remove", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RemoveInstanceProfile", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "instance_profile_arn", + "description": "The ARN of the instance profile to remove. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "instance_profile_arn", + "description": "The ARN of the instance profile to remove. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RemoveResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "instance_profile_arn", + "description": "The ARN of the instance profile to remove. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "instance_profile_arn", + "description": "The ARN of the instance profile to remove. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "settings.IpAccessLists", + "name": "IpAccessLists", + "description": "IP Access List enables admins to configure IP access lists.\n\nIP access lists affect web application access and REST API access to this workspace only.\nIf the feature is disabled for a workspace, all access is allowed for this workspace.\nThere is support for allow lists (inclusion) and block lists (exclusion).\n\nWhen a connection is attempted:\n1. **First, all block lists are checked.** If the connection IP address matches any block list, the connection is rejected.\n2. **If the connection was not rejected by block lists**, the IP address is compared with the allow lists.\n\nIf there is at least one allow list for the workspace, the connection is allowed only if the IP address matches an allow list.\nIf there are no allow lists for the workspace, all IP addresses are allowed.\n\nFor all allow lists and block lists combined, the workspace supports a maximum of 1000 IP/CIDR values, where one CIDR counts as a single value.\n\nAfter changes to the IP access list feature, it can take a few minutes for changes to take effect.", + "package": { + "name": "settings" + }, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "IpAccessListInfoLabelToListIdMap" + }, + "is_legacy_empty_request": true, + "request": { + "pascal_name": "ListIpAccessLists" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates an IP access list for this workspace.\n\nA list can be an allow list or a block list.\nSee the top of this file for a description of how the server treats allow lists and block lists at runtime.\n\nWhen creating or updating an IP access list:\n\n* For all allow lists and block lists combined, the API supports a maximum of 1000 IP/CIDR values,\nwhere one CIDR counts as a single value. Attempts to exceed that number return error 400 with `error_code` value `QUOTA_EXCEEDED`.\n* If the new list would block the calling user's current IP, error 400 is returned with `error_code` value `INVALID_STATE`.\n\nIt can take a few minutes for the changes to take effect. **Note**: Your new IP access list has no effect until you enable the feature. See [workspaceconf/setStatus](https://docs.databricks.com/api/workspace/workspaceconf/setstatus)", + "summary": "Create access list.", + "path": "/api/2.0/ip-access-lists", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateIpAccessList", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "CreateIpAccessListResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "ip_addresses", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes an IP access list, specified by its list ID.", + "summary": "Delete access list.", + "path": "/api/2.0/ip-access-lists/{ip_access_list_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteIpAccessListRequest", + "is_object": true, + "required_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets an IP access list, specified by its list ID.", + "summary": "Get access list.", + "path": "/api/2.0/ip-access-lists/{ip_access_list_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetIpAccessListRequest", + "is_object": true, + "required_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "FetchIpAccessListResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets all IP access lists for the specified workspace.", + "summary": "Get access lists.", + "path": "/api/2.0/ip-access-lists", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListIpAccessLists", + "is_object": true + }, + "response": { + "pascal_name": "ListIpAccessListResponse", + "is_object": true + }, + "pagination": {} + }, + { + "name": "Replace", + "description": "Replaces an IP access list, specified by its ID.\n\nA list can include allow lists and block lists. See the top\nof this file for a description of how the server treats allow lists and block lists at run time. When\nreplacing an IP access list:\n* For all allow lists and block lists combined, the API supports a maximum of 1000 IP/CIDR values,\nwhere one CIDR counts as a single value. Attempts to exceed that number return error 400 with `error_code`\nvalue `QUOTA_EXCEEDED`.\n* If the resulting list would block the calling user's current IP, error 400 is returned with `error_code`\nvalue `INVALID_STATE`.\nIt can take a few minutes for the changes to take effect. Note that your resulting IP access list has no\neffect until you enable the feature. See [workspaceconf/setStatus](https://docs.databricks.com/api/workspace/workspaceconf/setstatus).", + "summary": "Replace access list.", + "path": "/api/2.0/ip-access-lists/{ip_access_list_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ReplaceIpAccessList", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + }, + { + "name": "enabled", + "description": "Specifies whether this IP access list is enabled.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_in_url_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + }, + { + "name": "enabled", + "description": "Specifies whether this IP access list is enabled.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "enabled", + "description": "Specifies whether this IP access list is enabled.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "ip_addresses", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + }, + { + "name": "enabled", + "description": "Specifies whether this IP access list is enabled.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates an existing IP access list, specified by its ID.\n\nA list can include allow lists and block lists.\nSee the top of this file for a description of how the server treats allow lists and block lists at run time.\n\nWhen updating an IP access list:\n\n* For all allow lists and block lists combined, the API supports a maximum of 1000 IP/CIDR values,\nwhere one CIDR counts as a single value. Attempts to exceed that number return error 400 with `error_code` value `QUOTA_EXCEEDED`.\n* If the updated list would block the calling user's current IP, error 400 is returned with `error_code` value `INVALID_STATE`.\n\nIt can take a few minutes for the changes to take effect. Note that your resulting IP access list has no effect until you enable\nthe feature. See [workspaceconf/setStatus](https://docs.databricks.com/api/workspace/workspaceconf/setstatus).", + "summary": "Update access list.", + "path": "/api/2.0/ip-access-lists/{ip_access_list_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateIpAccessList", + "is_object": true, + "required_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "enabled", + "description": "Specifies whether this IP access list is enabled.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "ip_addresses", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "settings.AccountIpAccessLists", + "name": "AccountIpAccessLists", + "description": "The Accounts IP Access List API enables account admins to configure IP access lists for\naccess to the account console.\n\nAccount IP Access Lists affect web application access and REST API access to the account\nconsole and account APIs. If the feature is disabled for the account, all access is allowed\nfor this account. There is support for allow lists (inclusion) and block lists (exclusion).\n\nWhen a connection is attempted:\n1. **First, all block lists are checked.** If the connection IP address matches any block\nlist, the connection is rejected.\n2. **If the connection was not rejected by block lists**, the IP address is compared with\nthe allow lists.\n\nIf there is at least one allow list for the account, the connection is allowed only if the\nIP address matches an allow list. If there are no allow lists for the account, all IP\naddresses are allowed.\n\nFor all allow lists and block lists combined, the account supports a maximum of 1000 IP/CIDR\nvalues, where one CIDR counts as a single value.\n\nAfter changes to the account-level IP access lists, it can take a few minutes for changes\nto take effect.", + "package": { + "name": "settings" + }, + "is_accounts": true, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "IpAccessListInfoLabelToListIdMap" + }, + "is_legacy_empty_request": true, + "request": { + "pascal_name": "ListIpAccessLists" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates an IP access list for the account.\n\nA list can be an allow list or a block list. See the top of this file for a description of\nhow the server treats allow lists and block lists at runtime.\n\nWhen creating or updating an IP access list:\n\n* For all allow lists and block lists combined, the API supports a maximum of 1000\nIP/CIDR values, where one CIDR counts as a single value. Attempts to exceed that number\nreturn error 400 with `error_code` value `QUOTA_EXCEEDED`.\n* If the new list would block the calling user's current IP, error 400 is returned with\n`error_code` value `INVALID_STATE`.\n\nIt can take a few minutes for the changes to take effect.", + "summary": "Create access list.", + "path": "/api/2.0/accounts/{account_id}/ip-access-lists", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateIpAccessList", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "CreateIpAccessListResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "ip_addresses", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes an IP access list, specified by its list ID.", + "summary": "Delete access list.", + "path": "/api/2.0/accounts/{account_id}/ip-access-lists/{ip_access_list_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteAccountIpAccessListRequest", + "is_object": true, + "required_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets an IP access list, specified by its list ID.", + "summary": "Get IP access list.", + "path": "/api/2.0/accounts/{account_id}/ip-access-lists/{ip_access_list_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAccountIpAccessListRequest", + "is_object": true, + "required_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetIpAccessListResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets all IP access lists for the specified account.", + "summary": "Get access lists.", + "path": "/api/2.0/accounts/{account_id}/ip-access-lists", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListIpAccessLists", + "is_object": true + }, + "response": { + "pascal_name": "GetIpAccessListsResponse", + "is_object": true + }, + "pagination": {} + }, + { + "name": "Replace", + "description": "Replaces an IP access list, specified by its ID.\n\nA list can include allow lists and block lists. See the top of this file for a description\nof how the server treats allow lists and block lists at run time. When replacing an IP\naccess list:\n* For all allow lists and block lists combined, the API supports a maximum of 1000 IP/CIDR values,\nwhere one CIDR counts as a single value. Attempts to exceed that number return error 400 with `error_code`\nvalue `QUOTA_EXCEEDED`.\n* If the resulting list would block the calling user's current IP, error 400 is returned with `error_code`\nvalue `INVALID_STATE`.\nIt can take a few minutes for the changes to take effect.", + "summary": "Replace access list.", + "path": "/api/2.0/accounts/{account_id}/ip-access-lists/{ip_access_list_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ReplaceIpAccessList", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + }, + { + "name": "enabled", + "description": "Specifies whether this IP access list is enabled.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_in_url_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + }, + { + "name": "enabled", + "description": "Specifies whether this IP access list is enabled.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "enabled", + "description": "Specifies whether this IP access list is enabled.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "ip_addresses", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + }, + { + "name": "enabled", + "description": "Specifies whether this IP access list is enabled.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates an existing IP access list, specified by its ID.\n\nA list can include allow lists and block lists. See the top of this file for a description\nof how the server treats allow lists and block lists at run time.\n\nWhen updating an IP access list:\n\n* For all allow lists and block lists combined, the API supports a maximum of 1000\nIP/CIDR values, where one CIDR counts as a single value. Attempts to exceed that number\nreturn error 400 with `error_code` value `QUOTA_EXCEEDED`.\n* If the updated list would block the calling user's current IP, error 400 is returned\nwith `error_code` value `INVALID_STATE`.\n\nIt can take a few minutes for the changes to take effect.", + "summary": "Update access list.", + "path": "/api/2.0/accounts/{account_id}/ip-access-lists/{ip_access_list_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateIpAccessList", + "is_object": true, + "required_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "enabled", + "description": "Specifies whether this IP access list is enabled.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "ip_addresses", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "label", + "description": "Label for the IP access list. This **cannot** be empty.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "list_type", + "is_request_body_field": true, + "entity": { + "pascal_name": "ListType", + "enum": [ + { + "content": "ALLOW" + }, + { + "content": "BLOCK" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "ip_access_list_id", + "description": "The ID for the corresponding IP access list", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "jobs.Jobs", + "name": "Jobs", + "description": "The Jobs API allows you to create, edit, and delete jobs.\n\nYou can use a Databricks job to run a data processing or data analysis task in a Databricks\ncluster with scalable resources. Your job can consist of a single task or can be a large,\nmulti-task workflow with complex dependencies. Databricks manages the task orchestration,\ncluster management, monitoring, and error reporting for all of your jobs. You can run your jobs\nimmediately or periodically through an easy-to-use scheduling system. You can implement\njob tasks using notebooks, JARS, Spark Declarative Pipelines, or Python, Scala, Spark\nsubmit, and Java applications.\n\nYou should never hard code secrets or store them in plain text. Use the [Secrets CLI](https://docs.databricks.com/dev-tools/cli/secrets-cli.html)\nto manage secrets in the [Databricks CLI](https://docs.databricks.com/dev-tools/cli/index.html).\nUse the [Secrets utility](https://docs.databricks.com/dev-tools/databricks-utils.html#dbutils-secrets) to reference secrets in notebooks and jobs.", + "package": { + "name": "jobs" + }, + "docs_group": "lakeflow", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "BaseJobSettingsNameToJobIdMap" + }, + "request": { + "pascal_name": "ListJobsRequest" + } + }, + "methods": [ + { + "name": "CancelAllRuns", + "description": "Cancels all active runs of a job. The runs are canceled asynchronously, so it doesn't\nprevent new runs from being started.", + "summary": "Cancel all runs of a job.", + "path": "/api/2.2/jobs/runs/cancel-all", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CancelAllRuns", + "is_object": true + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "all_queued_runs", + "description": "Optional boolean parameter to cancel all queued runs. If no job_id is provided, all queued runs in the workspace are canceled.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "job_id", + "description": "The canonical identifier of the job to cancel all runs of.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "CancelRun", + "description": "Cancels a job run or a task run. The run is canceled asynchronously, so it may still be running when\nthis request completes.", + "summary": "Cancel a run.", + "path": "/api/2.2/jobs/runs/cancel", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CancelRun", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "run_id", + "description": "This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "run_id", + "description": "This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "run_id", + "description": "This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "run_id", + "description": "This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "wait": { + "success": [ + { + "content": "TERMINATED" + }, + { + "content": "SKIPPED" + } + ], + "timeout": 20, + "complex_message_path": true, + "poll": { + "response": { + "pascal_name": "Run" + } + }, + "status_path": [ + { + "pascal_name": "State" + }, + { + "pascal_name": "LifeCycleState" + } + ], + "message_path": [ + { + "pascal_name": "State" + }, + { + "pascal_name": "StateMessage" + } + ], + "message_path_head": { + "pascal_name": "State" + } + } + }, + { + "name": "Create", + "description": "Create a new job.", + "summary": "Create a new job.", + "path": "/api/2.2/jobs/create", + "can_use_json": true, + "must_use_json": true, + "is_json_only": true, + "is_crud_create": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateJob", + "is_object": true + }, + "response": { + "pascal_name": "CreateResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "description": "List of permissions to set on the job.", + "is_request_body_field": true, + "entity": { + "pascal_name": "JobAccessControlRequestList", + "array_value": { + "pascal_name": "JobAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "budget_policy_id", + "description": "The id of the user specified budget policy to use for this job.\nIf not specified, a default budget policy may be applied when creating or modifying the job.\nSee `effective_budget_policy_id` for the budget policy used by this workload.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "continuous", + "description": "An optional continuous property for this job. The continuous property will ensure that there is always one run executing. Only one of `schedule` and `continuous` can be used.\n\nPipelines started by a continuous job also run continuously, regardless of their own pipeline mode setting.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Continuous", + "is_object": true + } + }, + { + "name": "deployment", + "description": "Deployment information for jobs managed by external sources.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "JobDeployment", + "is_object": true + } + }, + { + "name": "description", + "description": "An optional description for the job. The maximum length is 27700 characters in UTF-8 encoding.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "duration_target", + "description": "The window the run aims to finish within, in hours, for a Cost-optimized serverless run.\nRequired only when `performance_target` is `COST_OPTIMIZED`. Must be one of the\nsupported values: `NO_FLEXIBILITY`, `4h`, `12h`, `24h`, `72h`. `NO_FLEXIBILITY` means the run\nuses the default cost-optimized performance level without additional cost-saving optimizations.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "edit_mode", + "description": "Edit mode of the job.\n\n* `UI_LOCKED`: The job is in a locked UI state and cannot be modified.\n* `EDITABLE`: The job is in an editable state and can be modified.", + "is_request_body_field": true, + "entity": { + "pascal_name": "JobEditMode", + "enum": [ + { + "content": "EDITABLE" + }, + { + "content": "UI_LOCKED" + } + ] + } + }, + { + "name": "email_notifications", + "description": "An optional set of email addresses that is notified when runs of this job begin or complete as well as when this job is deleted.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "JobEmailNotifications", + "is_object": true + } + }, + { + "name": "environment_variables", + "description": "Named environment-variable entries that tasks can reference by key from\n`TaskSettings.environment_variables_key`. Each entry's `spec` holds inline\n`variables` and optional `.env` `files`. Maximum 10 entries per job. A task\ncan reference at most one entry from this list.", + "is_request_body_field": true, + "entity": { + "pascal_name": "JobEnvironmentVariablesList", + "array_value": { + "pascal_name": "JobEnvironmentVariables", + "is_object": true + } + } + }, + { + "name": "environments", + "description": "A list of task execution environment specifications that can be referenced by tasks that use serverless compute or a compute resource that uses Environments mode.\n\nFor notebook tasks that use serverless compute or a compute resource that uses Environments mode, if the environment_key is not specified, the notebook environment will be used if present. If a jobs environment is specified, it will override the notebook environment.\nFor other tasks that use serverless compute or a compute resource that uses Environments mode, the task environment is required to be specified using environment_key in the task settings.", + "is_request_body_field": true, + "entity": { + "pascal_name": "JobEnvironmentList", + "array_value": { + "pascal_name": "JobEnvironment", + "is_object": true + } + } + }, + { + "name": "format", + "description": "Used to tell what is the format of the job. This field is ignored in Create/Update/Reset calls. When using the Jobs API 2.1 this value is always set to `\"MULTI_TASK\"`.", + "is_request_body_field": true, + "entity": { + "pascal_name": "Format", + "enum": [ + { + "content": "MULTI_TASK" + }, + { + "content": "SINGLE_TASK" + } + ] + } + }, + { + "name": "git_source", + "description": "An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks.\n\nIf `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task.\n\nNote: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GitSource", + "is_object": true + } + }, + { + "name": "health", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "JobsHealthRules", + "is_object": true + } + }, + { + "name": "job_clusters", + "description": "A list of job cluster specifications that can be shared and reused by tasks of this job. Libraries cannot be declared in a shared job cluster. You must declare dependent libraries in task settings.", + "is_request_body_field": true, + "entity": { + "pascal_name": "JobClusterList", + "array_value": { + "pascal_name": "JobCluster", + "is_object": true + } + } + }, + { + "name": "max_concurrent_runs", + "description": "An optional maximum allowed number of concurrent runs of the job.\nSet this value if you want to be able to execute multiple runs of the same job concurrently.\nThis is useful for example if you trigger your job on a frequent schedule and want to allow consecutive runs to overlap with each other, or if you want to trigger multiple runs which differ by their input parameters.\nThis setting affects only new runs. For example, suppose the job’s concurrency is 4 and there are 4 concurrent active runs. Then setting the concurrency to 3 won’t kill any of the active runs.\nHowever, from then on, new runs are skipped unless there are fewer than 3 active runs.\nThis value cannot exceed 1000. Setting this value to `0` causes all new runs to be skipped.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "name", + "description": "An optional name for the job. The maximum length is 4096 bytes in UTF-8 encoding.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "notification_settings", + "description": "Optional notification settings that are used when sending notifications to each of the `email_notifications` and `webhook_notifications` for this job.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "JobNotificationSettings", + "is_object": true + } + }, + { + "name": "parameters", + "description": "Job-level parameter definitions", + "is_request_body_field": true, + "entity": { + "pascal_name": "JobParameterDefinitionList", + "array_value": { + "pascal_name": "JobParameterDefinition", + "is_object": true + } + } + }, + { + "name": "parent_path", + "description": "Path of the job parent folder in workspace file tree. If absent, the job doesn't have a workspace object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "performance_target", + "description": "The performance mode on a serverless job. This field determines the level of compute performance or cost-efficiency for the run.\nThe performance target does not apply to tasks that run on Serverless GPU compute.\n\n* `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance.\n* `STANDARD`: Enables cost-efficient execution of serverless workloads.\n* `COST_OPTIMIZED`: Enables lower job costs by optimizing compute for your selected target duration time. Must provide a duration target.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PerformanceTarget", + "enum": [ + { + "content": "PERFORMANCE_OPTIMIZED" + }, + { + "content": "STANDARD" + } + ] + } + }, + { + "name": "queue", + "description": "The queue settings of the job.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "QueueSettings", + "is_object": true + } + }, + { + "name": "run_as", + "description": "The user or service principal that the job runs as, if specified in the request.\nThis field indicates the explicit configuration of `run_as` for the job.\nTo find the value in all cases, explicit or implicit, use `run_as_user_name`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "JobRunAs", + "is_object": true + } + }, + { + "name": "schedule", + "description": "An optional periodic schedule for this job. The default behavior is that the job only runs when triggered by clicking “Run Now” in the Jobs UI or sending an API request to `runNow`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + }, + { + "name": "tags", + "description": "A map of tags associated with the job. These are forwarded to the cluster as cluster tags for jobs clusters, and are subject to the same limitations as cluster tags. A maximum of 25 tags can be added to the job.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "tasks", + "description": "A list of task specifications to be executed by this job.\nIt supports up to 1000 elements in write endpoints (:method:jobs/create, :method:jobs/reset, :method:jobs/update, :method:jobs/submit).\nRead endpoints return only 100 tasks. If more than 100 tasks are available, you can paginate through them using :method:jobs/get. Use the `next_page_token` field at the object root to determine if more results are available.", + "is_request_body_field": true, + "entity": { + "pascal_name": "TaskList", + "array_value": { + "pascal_name": "Task", + "is_object": true + } + } + }, + { + "name": "timeout_seconds", + "description": "An optional timeout applied to each run of this job. A value of `0` means no timeout.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "trigger", + "description": "A configuration to trigger a run when certain conditions are met. The default behavior is that the job runs only when triggered by clicking “Run Now” in the Jobs UI or sending an API request to `runNow`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "TriggerSettings", + "is_object": true + } + }, + { + "name": "triggers", + "description": "List of triggers attached to this job. A run starts when any active trigger evaluates to true. Cannot be set in\nthe same request as the legacy `schedule`, `trigger`, or `continuous` fields. Gated behind the \"Multiple Triggers\" feature preview.", + "is_request_body_field": true, + "entity": { + "pascal_name": "TriggerConfigurationList", + "array_value": { + "pascal_name": "TriggerConfiguration", + "is_object": true + } + } + }, + { + "name": "usage_policy_id", + "description": "The id of the user specified usage policy to use for this job.\nIf not specified, a default usage policy may be applied when creating or modifying the job.\nSee `effective_usage_policy_id` for the usage policy used by this workload.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "webhook_notifications", + "description": "A collection of system notification IDs to notify when runs of this job begin or complete.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "WebhookNotifications", + "is_object": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a job.", + "summary": "Delete a job.", + "path": "/api/2.2/jobs/delete", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteJob", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "job_id", + "description": "The canonical identifier of the job to delete. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "job_id", + "description": "The canonical identifier of the job to delete. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "job_id", + "description": "The canonical identifier of the job to delete. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "job_id", + "description": "The canonical identifier of the job to delete. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "DeleteRun", + "description": "Deletes a non-active run. Returns an error if the run is active.", + "summary": "Delete a job run.", + "path": "/api/2.2/jobs/runs/delete", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteRun", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "run_id", + "description": "ID of the run to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "run_id", + "description": "ID of the run to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "run_id", + "description": "ID of the run to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "run_id", + "description": "ID of the run to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "ExportRun", + "description": "Export and retrieve the job run task.", + "summary": "Export and retrieve a job run.", + "path": "/api/2.2/jobs/runs/export", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ExportRunRequest", + "is_object": true, + "required_fields": [ + { + "name": "run_id", + "description": "The canonical identifier for the run. This field is required.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "run_id", + "description": "The canonical identifier for the run. This field is required.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "ExportRunOutput", + "is_object": true + }, + "all_fields": [ + { + "name": "run_id", + "description": "The canonical identifier for the run. This field is required.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "views_to_export", + "description": "Which views to export (CODE, DASHBOARDS, or ALL). Defaults to CODE.", + "is_query": true, + "entity": { + "pascal_name": "ViewsToExport", + "enum": [ + { + "content": "ALL" + }, + { + "content": "CODE" + }, + { + "content": "DASHBOARDS" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "run_id", + "description": "The canonical identifier for the run. This field is required.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "Get", + "description": "Retrieves the details for a single job.\n\nLarge arrays in the results will be paginated when they exceed 100 elements.\nA request for a single job will return all properties for that job, and the first 100 elements of array properties (`tasks`, `job_clusters`, `environments` and `parameters`).\nUse the `next_page_token` field to check for more results and pass its value as the `page_token` in subsequent requests.\nIf any array properties have more than 100 elements, additional results will be returned on subsequent requests. Arrays without additional results will be empty on later pages.", + "summary": "Get a single job.", + "path": "/api/2.2/jobs/get", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetJobRequest", + "is_object": true, + "required_fields": [ + { + "name": "job_id", + "description": "The canonical identifier of the job to retrieve information about. This field is required.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "job_id", + "description": "The canonical identifier of the job to retrieve information about. This field is required.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "Job", + "is_object": true + }, + "all_fields": [ + { + "name": "include_trigger_state", + "description": "Flag that indicates that trigger state should be included in the response.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "job_id", + "description": "The canonical identifier of the job to retrieve information about. This field is required.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "page_token", + "description": "Use `next_page_token` returned from the previous GetJob response to request the next page of the job's array properties.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "job_id", + "description": "The canonical identifier of the job to retrieve information about. This field is required.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get job permission levels.", + "path": "/api/2.0/permissions/jobs/{job_id}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetJobPermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetJobPermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of a job. Jobs can inherit permissions from their root object.", + "summary": "Get job permissions.", + "path": "/api/2.0/permissions/jobs/{job_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetJobPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "JobPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetRun", + "description": "Retrieves the metadata of a run.\n\nLarge arrays in the results will be paginated when they exceed 100 elements.\nA request for a single run will return all properties for that run, and the first 100 elements of array properties (`tasks`, `job_clusters`, `job_parameters` and `repair_history`).\nUse the next_page_token field to check for more results and pass its value as the page_token in subsequent requests.\nIf any array properties have more than 100 elements, additional results will be returned on subsequent requests. Arrays without additional results will be empty on later pages.", + "summary": "Get a single job run.", + "path": "/api/2.2/jobs/runs/get", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetRunRequest", + "is_object": true, + "required_fields": [ + { + "name": "run_id", + "description": "The canonical identifier of the run for which to retrieve the metadata.\nThis field is required.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "run_id", + "description": "The canonical identifier of the run for which to retrieve the metadata.\nThis field is required.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "Run", + "is_object": true + }, + "all_fields": [ + { + "name": "include_history", + "description": "Whether to include the repair history in the response.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "include_resolved_values", + "description": "Whether to include resolved parameter values in the response.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "page_token", + "description": "Use `next_page_token` returned from the previous GetRun response to request the next page of the run's array properties.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_id", + "description": "The canonical identifier of the run for which to retrieve the metadata.\nThis field is required.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "run_id", + "description": "The canonical identifier of the run for which to retrieve the metadata.\nThis field is required.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "GetRunOutput", + "description": "Retrieve the output and metadata of a single task run. When a notebook task returns\na value through the `dbutils.notebook.exit()` call, you can use this endpoint to retrieve\nthat value. Databricks restricts this API to returning the first 5 MB of the output.\nTo return a larger result, you can store job results in a cloud storage service.\n\nThis endpoint validates that the __run_id__ parameter is valid and returns an HTTP status\ncode 400 if the __run_id__ parameter is invalid. Runs are automatically removed after\n60 days. If you to want to reference them beyond 60 days, you must save old run results\nbefore they expire.", + "summary": "Get the output for a single run.", + "path": "/api/2.2/jobs/runs/get-output", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetRunOutputRequest", + "is_object": true, + "required_fields": [ + { + "name": "run_id", + "description": "The canonical identifier for the run.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "run_id", + "description": "The canonical identifier for the run.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "RunOutput", + "is_object": true + }, + "all_fields": [ + { + "name": "run_id", + "description": "The canonical identifier for the run.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "run_id", + "description": "The canonical identifier for the run.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "List", + "description": "Retrieves a list of jobs.", + "summary": "List jobs.", + "path": "/api/2.2/jobs/list", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListJobsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListJobsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "expand_tasks", + "description": "Whether to include task and cluster details in the response. Note that only the first 100 elements will be shown.\nUse :method:jobs/get to paginate through all tasks and clusters.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "limit", + "description": "The number of jobs to return. This value must be greater than 0 and less or equal to 100. The default value is 20.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "name", + "description": "A filter on the list based on the exact (case insensitive) job name.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "offset", + "description": "The offset of the first job to return, relative to the most recently created job.\nDeprecated since June 2023. Use `page_token` to iterate through the pages instead.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Use `next_page_token` or `prev_page_token` returned from the previous request to list the next or previous page of jobs respectively.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Use `next_page_token` or `prev_page_token` returned from the previous request to list the next or previous page of jobs respectively.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListRuns", + "description": "List runs in descending order by start time.", + "summary": "List job runs.", + "path": "/api/2.2/jobs/runs/list", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListRunsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListRunsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "active_only", + "description": "If active_only is `true`, only active runs are included in the results; otherwise,\nlists both active and completed runs. An active run is a run in the `QUEUED`, `PENDING`,\n`RUNNING`, or `TERMINATING`. This field cannot be `true` when completed_only is `true`.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "completed_only", + "description": "If completed_only is `true`, only completed runs are included in the results;\notherwise, lists both active and completed runs. This field cannot be `true` when\nactive_only is `true`.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "expand_tasks", + "description": "Whether to include task and cluster details in the response. Note that only the first 100 elements will be shown.\nUse :method:jobs/getrun to paginate through all tasks and clusters.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "job_id", + "description": "The job for which to list runs. If omitted, the Jobs service lists runs from all jobs.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "limit", + "description": "The number of runs to return. This value must be greater than 0 and less than 25.\nThe default value is 20. If a request specifies a limit of 0, the service instead\nuses the maximum limit.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "offset", + "description": "The offset of the first run to return, relative to the most recent run.\nDeprecated since June 2023. Use `page_token` to iterate through the pages instead.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Use `next_page_token` or `prev_page_token` returned from the previous request to list the next or previous page of runs respectively.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_type", + "description": "The type of runs to return. For a description of run types, see :method:jobs/getRun.", + "is_query": true, + "entity": { + "pascal_name": "RunType", + "enum": [ + { + "content": "JOB_RUN" + }, + { + "content": "SUBMIT_RUN" + }, + { + "content": "WORKFLOW_RUN" + } + ] + } + }, + { + "name": "start_time_from", + "description": "Show runs that started _at or after_ this value. The value must be a UTC timestamp\nin milliseconds. Can be combined with _start_time_to_ to filter by a time range.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "start_time_to", + "description": "Show runs that started _at or before_ this value. The value must be a UTC timestamp\nin milliseconds. Can be combined with _start_time_from_ to filter by a time range.", + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Use `next_page_token` or `prev_page_token` returned from the previous request to list the next or previous page of runs respectively.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "RepairRun", + "description": "Re-run one or more tasks. Tasks are re-run as part of the original job run.\nThey use the current job and task settings, and can be viewed in the history for the\noriginal job run.", + "summary": "Repair a job run.", + "path": "/api/2.2/jobs/runs/repair", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RepairRun", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "run_id", + "description": "The job run ID of the run to repair. The run must not be in progress.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "run_id", + "description": "The job run ID of the run to repair. The run must not be in progress.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "RepairRunResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "dbt_commands", + "description": "An array of commands to execute for jobs with the dbt task, for example `\"dbt_commands\": [\"dbt deps\", \"dbt seed\", \"dbt deps\", \"dbt seed\", \"dbt run\"]`\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "duration_target", + "description": "The window the run aims to finish within, in hours, for a Cost-optimized serverless run.\nRequired only when `performance_target` is `COST_OPTIMIZED`. Must be one of the\nsupported values: `NO_FLEXIBILITY`, `4h`, `12h`, `24h`, `72h`. `NO_FLEXIBILITY` means the run\nuses the default cost-optimized performance level without additional cost-saving optimizations.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "jar_params", + "description": "A list of parameters for jobs with Spark JAR tasks, for example `\"jar_params\": [\"john doe\", \"35\"]`.\nThe parameters are used to invoke the main function of the main class specified in the Spark JAR task.\nIf not specified upon `run-now`, it defaults to an empty list.\njar_params cannot be specified in conjunction with notebook_params.\nThe JSON representation of this field (for example `{\"jar_params\":[\"john doe\",\"35\"]}`) cannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "job_parameters", + "description": "Job-level parameters used in the run. for example `\"param\": \"overriding_val\"`", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "latest_repair_id", + "description": "The ID of the latest repair. This parameter is not required when repairing a run for the first time, but must be provided on subsequent requests to repair the same run.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "notebook_params", + "description": "A map from keys to values for jobs with notebook task, for example `\"notebook_params\": {\"name\": \"john doe\", \"age\": \"35\"}`.\nThe map is passed to the notebook and is accessible through the [dbutils.widgets.get](https://docs.databricks.com/dev-tools/databricks-utils.html) function.\n\nIf not specified upon `run-now`, the triggered run uses the job’s base parameters.\n\nnotebook_params cannot be specified in conjunction with jar_params.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nThe JSON representation of this field (for example `{\"notebook_params\":{\"name\":\"john doe\",\"age\":\"35\"}}`) cannot exceed 10,000 bytes.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "performance_target", + "description": "The performance mode on a serverless job. The performance target determines the level of compute performance or cost-efficiency for the run. This field overrides the performance target defined on the job level.\n\n* `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance.\n* `STANDARD`: Enables cost-efficient execution of serverless workloads.\n* `COST_OPTIMIZED`: Enables lower job costs by optimizing compute for your selected target duration time. Must provide a duration target.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PerformanceTarget", + "enum": [ + { + "content": "PERFORMANCE_OPTIMIZED" + }, + { + "content": "STANDARD" + } + ] + } + }, + { + "name": "pipeline_params", + "description": "Controls whether the pipeline should perform a full refresh", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PipelineParams", + "is_object": true + } + }, + { + "name": "python_named_params", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "python_params", + "description": "A list of parameters for jobs with Python tasks, for example `\"python_params\": [\"john doe\", \"35\"]`.\nThe parameters are passed to Python file as command-line parameters. If specified upon `run-now`, it would overwrite\nthe parameters specified in job setting. The JSON representation of this field (for example `{\"python_params\":[\"john doe\",\"35\"]}`)\ncannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nImportant\n\nThese parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error.\nExamples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "rerun_all_failed_tasks", + "description": "If true, repair all failed tasks. Only one of `rerun_tasks` or `rerun_all_failed_tasks` can be used.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "rerun_dependent_tasks", + "description": "If true, repair all tasks that depend on the tasks in `rerun_tasks`, even if they were previously successful. Can be also used in combination with `rerun_all_failed_tasks`.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "rerun_tasks", + "description": "The task keys of the task runs to repair.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "run_id", + "description": "The job run ID of the run to repair. The run must not be in progress.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "spark_submit_params", + "description": "A list of parameters for jobs with spark submit task, for example `\"spark_submit_params\": [\"--class\", \"org.apache.spark.examples.SparkPi\"]`.\nThe parameters are passed to spark-submit script as command-line parameters. If specified upon `run-now`, it would overwrite the\nparameters specified in job setting. The JSON representation of this field (for example `{\"python_params\":[\"john doe\",\"35\"]}`)\ncannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nImportant\n\nThese parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error.\nExamples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "sql_params", + "description": "A map from keys to values for jobs with SQL task, for example `\"sql_params\": {\"name\": \"john doe\", \"age\": \"35\"}`. The SQL alert task does not support custom parameters.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "run_id", + "description": "The job run ID of the run to repair. The run must not be in progress.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "wait": { + "success": [ + { + "content": "TERMINATED" + }, + { + "content": "SKIPPED" + } + ], + "timeout": 20, + "complex_message_path": true, + "poll": { + "response": { + "pascal_name": "Run" + } + }, + "status_path": [ + { + "pascal_name": "State" + }, + { + "pascal_name": "LifeCycleState" + } + ], + "message_path": [ + { + "pascal_name": "State" + }, + { + "pascal_name": "StateMessage" + } + ], + "message_path_head": { + "pascal_name": "State" + } + } + }, + { + "name": "Reset", + "description": "Overwrite all settings for the given job. Use the [_Update_ endpoint](:method:jobs/update) to update job settings partially.", + "summary": "Update all job settings (reset).", + "path": "/api/2.2/jobs/reset", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ResetJob", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "job_id", + "description": "The canonical identifier of the job to reset. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "new_settings", + "description": "The new settings of the job. These settings completely replace the old settings.\n\nChanges to the field `JobBaseSettings.timeout_seconds` are applied to active runs. Changes to other fields are applied to future runs only.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "JobSettings", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "job_id", + "description": "The canonical identifier of the job to reset. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "new_settings", + "description": "The new settings of the job. These settings completely replace the old settings.\n\nChanges to the field `JobBaseSettings.timeout_seconds` are applied to active runs. Changes to other fields are applied to future runs only.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "JobSettings", + "is_object": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "job_id", + "description": "The canonical identifier of the job to reset. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "new_settings", + "description": "The new settings of the job. These settings completely replace the old settings.\n\nChanges to the field `JobBaseSettings.timeout_seconds` are applied to active runs. Changes to other fields are applied to future runs only.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "JobSettings", + "is_object": true + } + } + ] + }, + { + "name": "RunNow", + "description": "Run a job and return the `run_id` of the triggered run.", + "summary": "Trigger a new job run.", + "path": "/api/2.2/jobs/run-now", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RunNow", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "job_id", + "description": "The ID of the job to be executed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "job_id", + "description": "The ID of the job to be executed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "RunNowResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "dbt_commands", + "description": "An array of commands to execute for jobs with the dbt task, for example `\"dbt_commands\": [\"dbt deps\", \"dbt seed\", \"dbt deps\", \"dbt seed\", \"dbt run\"]`\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "duration_target", + "description": "The window the run aims to finish within, in hours, for a Cost-optimized serverless run.\nRequired only when `performance_target` is `COST_OPTIMIZED`. Must be one of the\nsupported values: `NO_FLEXIBILITY`, `4h`, `12h`, `24h`, `72h`. `NO_FLEXIBILITY` means the run\nuses the default cost-optimized performance level without additional cost-saving optimizations.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "idempotency_token", + "description": "An optional token to guarantee the idempotency of job run requests. If a run with the provided token already exists,\nthe request does not create a new run but returns the ID of the existing run instead. If a run with the provided token is deleted,\nan error is returned.\n\nIf you specify the idempotency token, upon failure you can retry until the request succeeds. Databricks guarantees that exactly one run\nis launched with that idempotency token.\n\nThis token must have at most 64 characters.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "jar_params", + "description": "A list of parameters for jobs with Spark JAR tasks, for example `\"jar_params\": [\"john doe\", \"35\"]`.\nThe parameters are used to invoke the main function of the main class specified in the Spark JAR task.\nIf not specified upon `run-now`, it defaults to an empty list.\njar_params cannot be specified in conjunction with notebook_params.\nThe JSON representation of this field (for example `{\"jar_params\":[\"john doe\",\"35\"]}`) cannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "job_id", + "description": "The ID of the job to be executed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "job_parameters", + "description": "Job-level parameters used in the run. for example `\"param\": \"overriding_val\"`", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "notebook_params", + "description": "A map from keys to values for jobs with notebook task, for example `\"notebook_params\": {\"name\": \"john doe\", \"age\": \"35\"}`.\nThe map is passed to the notebook and is accessible through the [dbutils.widgets.get](https://docs.databricks.com/dev-tools/databricks-utils.html) function.\n\nIf not specified upon `run-now`, the triggered run uses the job’s base parameters.\n\nnotebook_params cannot be specified in conjunction with jar_params.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nThe JSON representation of this field (for example `{\"notebook_params\":{\"name\":\"john doe\",\"age\":\"35\"}}`) cannot exceed 10,000 bytes.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "only", + "description": "A list of task keys to run inside of the job. If this field is not provided, all tasks in the job will be run.\n\nPrefix a task key with `+` to also run its upstream tasks, or suffix it with `+` to also run its downstream tasks.\nFor example, `+my_task` runs `my_task` and everything upstream of it, `my_task+` runs `my_task` and everything\ndownstream of it, and `+my_task+` runs both. A task key with no `+` runs only that task.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "performance_target", + "description": "The performance mode on a serverless job. The performance target determines the level of compute performance or cost-efficiency for the run. This field overrides the performance target defined on the job level.\n\n* `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance.\n* `STANDARD`: Enables cost-efficient execution of serverless workloads.\n* `COST_OPTIMIZED`: Enables lower job costs by optimizing compute for your selected target duration time. Must provide a duration target.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PerformanceTarget", + "enum": [ + { + "content": "PERFORMANCE_OPTIMIZED" + }, + { + "content": "STANDARD" + } + ] + } + }, + { + "name": "pipeline_params", + "description": "Controls whether the pipeline should perform a full refresh", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PipelineParams", + "is_object": true + } + }, + { + "name": "python_named_params", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "python_params", + "description": "A list of parameters for jobs with Python tasks, for example `\"python_params\": [\"john doe\", \"35\"]`.\nThe parameters are passed to Python file as command-line parameters. If specified upon `run-now`, it would overwrite\nthe parameters specified in job setting. The JSON representation of this field (for example `{\"python_params\":[\"john doe\",\"35\"]}`)\ncannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nImportant\n\nThese parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error.\nExamples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "queue", + "description": "The queue settings of the run.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "QueueSettings", + "is_object": true + } + }, + { + "name": "spark_submit_params", + "description": "A list of parameters for jobs with spark submit task, for example `\"spark_submit_params\": [\"--class\", \"org.apache.spark.examples.SparkPi\"]`.\nThe parameters are passed to spark-submit script as command-line parameters. If specified upon `run-now`, it would overwrite the\nparameters specified in job setting. The JSON representation of this field (for example `{\"python_params\":[\"john doe\",\"35\"]}`)\ncannot exceed 10,000 bytes.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.\n\nImportant\n\nThese parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error.\nExamples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "sql_params", + "description": "A map from keys to values for jobs with SQL task, for example `\"sql_params\": {\"name\": \"john doe\", \"age\": \"35\"}`. The SQL alert task does not support custom parameters.\n\n⚠ **Deprecation note** Use [job parameters](https://docs.databricks.com/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "job_id", + "description": "The ID of the job to be executed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "wait": { + "success": [ + { + "content": "TERMINATED" + }, + { + "content": "SKIPPED" + } + ], + "timeout": 20, + "complex_message_path": true, + "poll": { + "response": { + "pascal_name": "Run" + } + }, + "status_path": [ + { + "pascal_name": "State" + }, + { + "pascal_name": "LifeCycleState" + } + ], + "message_path": [ + { + "pascal_name": "State" + }, + { + "pascal_name": "StateMessage" + } + ], + "message_path_head": { + "pascal_name": "State" + } + } + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set job permissions.", + "path": "/api/2.0/permissions/jobs/{job_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "JobPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "JobPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "JobAccessControlRequestList", + "array_value": { + "pascal_name": "JobAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Submit", + "description": "Submit a one-time run. This endpoint allows you to submit a workload directly\nwithout creating a job. Runs submitted using this endpoint don’t display in\nthe UI. Use the `jobs/runs/get` API to check the run state after the job is\nsubmitted.\n\n**Important:** Jobs submitted using this endpoint are not saved as a job.\nThey do not show up in the Jobs UI, and do not retry when they fail. Because\nthey are not saved, Databricks cannot auto-optimize serverless compute in case\nof failure. If your job fails, you may want to use classic compute to specify\nthe compute needs for the job. Alternatively, use the `POST /jobs/create` and\n`POST /jobs/run-now` endpoints to create and run a saved job.", + "summary": "Create and trigger a one-time run.", + "path": "/api/2.2/jobs/runs/submit", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SubmitRun", + "is_object": true + }, + "response": { + "pascal_name": "SubmitRunResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "description": "List of permissions to set on the job.", + "is_request_body_field": true, + "entity": { + "pascal_name": "JobAccessControlRequestList", + "array_value": { + "pascal_name": "JobAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "budget_policy_id", + "description": "The user specified id of the budget policy to use for this one-time run.\nIf not specified, the run will be not be attributed to any budget policy.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "duration_target", + "description": "The window the run aims to finish within, in hours, for a Cost-optimized serverless run.\nRequired only when `performance_target` is `COST_OPTIMIZED`. Must be one of the\nsupported values: `NO_FLEXIBILITY`, `4h`, `12h`, `24h`, `72h`. `NO_FLEXIBILITY` means the run\nuses the default cost-optimized performance level without additional cost-saving optimizations.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "email_notifications", + "description": "An optional set of email addresses notified when the run begins or completes.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "JobEmailNotifications", + "is_object": true + } + }, + { + "name": "environment_variables", + "description": "Named environment-variable entries that tasks of this one-time run can\nreference by key from `RunTaskSettings.environment_variables_key`. Each\nentry's `spec` holds inline `variables` and optional `.env` `files`.\nHandled identically to `JobSettings.environment_variables`. Maximum 10 entries.\nEntries are independent of one another — there is no cross-entry merging.", + "is_request_body_field": true, + "entity": { + "pascal_name": "JobEnvironmentVariablesList", + "array_value": { + "pascal_name": "JobEnvironmentVariables", + "is_object": true + } + } + }, + { + "name": "environments", + "description": "A list of task execution environment specifications that can be referenced by tasks of this run.", + "is_request_body_field": true, + "entity": { + "pascal_name": "JobEnvironmentList", + "array_value": { + "pascal_name": "JobEnvironment", + "is_object": true + } + } + }, + { + "name": "git_source", + "description": "An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks.\n\nIf `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task.\n\nNote: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GitSource", + "is_object": true + } + }, + { + "name": "health", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "JobsHealthRules", + "is_object": true + } + }, + { + "name": "idempotency_token", + "description": "An optional token that can be used to guarantee the idempotency of job run requests. If a run with the provided token already exists,\nthe request does not create a new run but returns the ID of the existing run instead. If a run with the provided token is deleted,\nan error is returned.\n\nIf you specify the idempotency token, upon failure you can retry until the request succeeds. Databricks guarantees that exactly\none run is launched with that idempotency token.\n\nThis token must have at most 64 characters.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "notification_settings", + "description": "Optional notification settings that are used when sending notifications to each of the `email_notifications` and `webhook_notifications` for this run.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "JobNotificationSettings", + "is_object": true + } + }, + { + "name": "performance_target", + "description": "The performance mode on a serverless one-time run. This field determines the level of compute performance or cost-efficiency for the run.\nThe performance target does not apply to tasks that run on Serverless GPU compute.\n\n* `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance.\n* `STANDARD`: Enables cost-efficient execution of serverless workloads.\n* `COST_OPTIMIZED`: Enables lower job costs by optimizing compute for your selected target duration time. Must provide a duration target.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PerformanceTarget", + "enum": [ + { + "content": "PERFORMANCE_OPTIMIZED" + }, + { + "content": "STANDARD" + } + ] + } + }, + { + "name": "queue", + "description": "The queue settings of the one-time run.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "QueueSettings", + "is_object": true + } + }, + { + "name": "run_as", + "description": "Specifies the user or service principal that the job runs as. If not specified, the job runs as the user who submits the request.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "JobRunAs", + "is_object": true + } + }, + { + "name": "run_name", + "description": "An optional name for the run. The default value is `Untitled`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tasks", + "is_request_body_field": true, + "entity": { + "pascal_name": "SubmitTaskList", + "array_value": { + "pascal_name": "SubmitTask", + "is_object": true + } + } + }, + { + "name": "timeout_seconds", + "description": "An optional timeout applied to each run of this job. A value of `0` means no timeout.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "usage_policy_id", + "description": "The user specified id of the usage policy to use for this one-time run.\nIf not specified, a default usage policy may be applied when creating or modifying the job.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "webhook_notifications", + "description": "A collection of system notification IDs to notify when the run begins or completes.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "WebhookNotifications", + "is_object": true + } + } + ], + "wait": { + "success": [ + { + "content": "TERMINATED" + }, + { + "content": "SKIPPED" + } + ], + "timeout": 20, + "complex_message_path": true, + "poll": { + "response": { + "pascal_name": "Run" + } + }, + "status_path": [ + { + "pascal_name": "State" + }, + { + "pascal_name": "LifeCycleState" + } + ], + "message_path": [ + { + "pascal_name": "State" + }, + { + "pascal_name": "StateMessage" + } + ], + "message_path_head": { + "pascal_name": "State" + } + } + }, + { + "name": "Update", + "description": "Add, update, or remove specific settings of an existing job. Use the [_Reset_ endpoint](:method:jobs/reset) to overwrite all job settings.", + "summary": "Update job settings partially.", + "path": "/api/2.2/jobs/update", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateJob", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "job_id", + "description": "The canonical identifier of the job to update. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "job_id", + "description": "The canonical identifier of the job to update. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "fields_to_remove", + "description": "Remove top-level fields in the job settings. Removing nested fields is not supported, except for tasks and job clusters (`tasks/task_1`). This field is optional.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "job_id", + "description": "The canonical identifier of the job to update. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "new_settings", + "description": "The new settings for the job.\n\nTop-level fields specified in `new_settings` are completely replaced, except for arrays which are merged. That is, new and existing entries are completely replaced based on the respective key fields, i.e. `task_key` or `job_cluster_key`, while previous entries are kept.\n\nPartially updating nested fields is not supported.\n\nChanges to the field `JobSettings.timeout_seconds` are applied to active runs. Changes to other fields are applied to future runs only.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "JobSettings", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "job_id", + "description": "The canonical identifier of the job to update. This field is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on a job. Jobs can inherit permissions from their root object.", + "summary": "Update job permissions.", + "path": "/api/2.0/permissions/jobs/{job_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "JobPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "JobPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "JobAccessControlRequestList", + "array_value": { + "pascal_name": "JobAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "job_id", + "description": "The job for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "knowledgeassistants.KnowledgeAssistants", + "name": "KnowledgeAssistants", + "description": "Manage legacy Knowledge Assistants and related resources.", + "package": { + "name": "knowledgeassistants" + }, + "docs_group": "agentbricks", + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "list": { + "request": { + "pascal_name": "ListExamplesRequest" + } + }, + "methods": [ + { + "name": "CreateExample", + "description": "Creates an example for a Knowledge Assistant.", + "summary": "Create an example for a Knowledge Assistant.", + "path": "/api/2.1/{parent=knowledge-assistants/*}/examples", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateExampleRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "Parent resource where this example will be created.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "example", + "description": "The example to create under the parent Knowledge Assistant.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Parent resource where this example will be created.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "example", + "description": "The example to create under the parent Knowledge Assistant.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "example", + "description": "The example to create under the parent Knowledge Assistant.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Example", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "example", + "description": "The example to create under the parent Knowledge Assistant.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "parent", + "description": "Parent resource where this example will be created.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Timestamp when this example was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "example_id", + "description": "The universally unique identifier (UUID) of the example.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question. Optional — examples may be created\nwith just a question; the front-end form does not require guidelines.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "name", + "description": "Full resource name:\nknowledge-assistants/{knowledge_assistant_id}/examples/{example_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Timestamp when this example was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Parent resource where this example will be created.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateKnowledgeAssistant", + "description": "Creates a Knowledge Assistant.", + "summary": "Create a Knowledge Assistant.", + "path": "/api/2.1/knowledge-assistants", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateKnowledgeAssistantRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "knowledge_assistant", + "description": "The Knowledge Assistant to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeAssistant", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "knowledge_assistant", + "description": "The Knowledge Assistant to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeAssistant", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "knowledge_assistant", + "description": "The Knowledge Assistant to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeAssistant", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "KnowledgeAssistant", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "knowledge_assistant", + "description": "The Knowledge Assistant to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeAssistant", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "create_time", + "description": "Creation timestamp.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "creator", + "description": "The creator of the Knowledge Assistant.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_name", + "description": "The name of the knowledge assistant agent endpoint.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "error_info", + "description": "Error details when the Knowledge Assistant is in FAILED state.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "experiment_id", + "description": "The MLflow experiment ID.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Deprecated: use knowledge_assistant_id instead.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instructions", + "description": "Additional global instructions on how the agent should generate answers.\nOptional on create and update.\nWhen updating a Knowledge Assistant, include this field in update_mask to\nmodify it.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The resource name of the Knowledge Assistant.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "state", + "description": "State of the Knowledge Assistant. Not returned in List responses.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeAssistantState", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "CREATING" + }, + { + "content": "FAILED" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateKnowledgeSource", + "description": "Creates a Knowledge Source under a Knowledge Assistant.", + "summary": "Create a Knowledge Source.", + "path": "/api/2.1/{parent=knowledge-assistants/*}/knowledge-sources", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateKnowledgeSourceRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "Parent resource where this source will be created.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "knowledge_source", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeSource", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Parent resource where this source will be created.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "knowledge_source", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeSource", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "knowledge_source", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeSource", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "KnowledgeSource", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "knowledge_source", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeSource", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "parent", + "description": "Parent resource where this source will be created.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Timestamp when this knowledge source was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "file_table", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "FileTableSpec", + "is_object": true + } + }, + { + "name": "files", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "FilesSpec", + "is_object": true + } + }, + { + "name": "id", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IndexSpec", + "is_object": true + } + }, + { + "name": "knowledge_cutoff_time", + "description": "Timestamp representing the cutoff before which content in this knowledge source is being ingested.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "name", + "description": "Full resource name:\nknowledge-assistants/{knowledge_assistant_id}/knowledge-sources/{knowledge_source_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "state", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeSourceState", + "enum": [ + { + "content": "FAILED_UPDATE" + }, + { + "content": "UPDATED" + }, + { + "content": "UPDATING" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Parent resource where this source will be created.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteExample", + "description": "Deletes an example from a Knowledge Assistant.", + "summary": "Delete an example from a Knowledge Assistant.", + "path": "/api/2.1/{name=knowledge-assistants/*/examples/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteExampleRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the example to delete.\nFormat: knowledge-assistants/{knowledge_assistant_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the example to delete.\nFormat: knowledge-assistants/{knowledge_assistant_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the example to delete.\nFormat: knowledge-assistants/{knowledge_assistant_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the example to delete.\nFormat: knowledge-assistants/{knowledge_assistant_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteKnowledgeAssistant", + "description": "Deletes a Knowledge Assistant.", + "summary": "Delete a Knowledge Assistant.", + "path": "/api/2.1/{name=knowledge-assistants/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteKnowledgeAssistantRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the knowledge assistant to be deleted.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the knowledge assistant to be deleted.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the knowledge assistant to be deleted.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the knowledge assistant to be deleted.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteKnowledgeSource", + "description": "Deletes a Knowledge Source.", + "summary": "Delete a Knowledge Source.", + "path": "/api/2.1/{name=knowledge-assistants/*/knowledge-sources/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteKnowledgeSourceRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the Knowledge Source to delete.\nFormat: knowledge-assistants/{knowledge_assistant_id}/knowledge-sources/{knowledge_source_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the Knowledge Source to delete.\nFormat: knowledge-assistants/{knowledge_assistant_id}/knowledge-sources/{knowledge_source_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the Knowledge Source to delete.\nFormat: knowledge-assistants/{knowledge_assistant_id}/knowledge-sources/{knowledge_source_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the Knowledge Source to delete.\nFormat: knowledge-assistants/{knowledge_assistant_id}/knowledge-sources/{knowledge_source_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetExample", + "description": "Gets an example from a Knowledge Assistant.", + "summary": "Get an example from a Knowledge Assistant.", + "path": "/api/2.1/{name=knowledge-assistants/*/examples/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetExampleRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the example.\nFormat: knowledge-assistants/{knowledge_assistant_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the example.\nFormat: knowledge-assistants/{knowledge_assistant_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Example", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the example.\nFormat: knowledge-assistants/{knowledge_assistant_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the example.\nFormat: knowledge-assistants/{knowledge_assistant_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetKnowledgeAssistant", + "description": "Gets a Knowledge Assistant.", + "summary": "Get a Knowledge Assistant.", + "path": "/api/2.1/{name=knowledge-assistants/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetKnowledgeAssistantRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the knowledge assistant.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the knowledge assistant.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "KnowledgeAssistant", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the knowledge assistant.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the knowledge assistant.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetKnowledgeSource", + "description": "Gets a Knowledge Source.", + "summary": "Get a Knowledge Source.", + "path": "/api/2.1/{name=knowledge-assistants/*/knowledge-sources/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetKnowledgeSourceRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the Knowledge Source.\nFormat: knowledge-assistants/{knowledge_assistant_id}/knowledge-sources/{knowledge_source_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the Knowledge Source.\nFormat: knowledge-assistants/{knowledge_assistant_id}/knowledge-sources/{knowledge_source_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "KnowledgeSource", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the Knowledge Source.\nFormat: knowledge-assistants/{knowledge_assistant_id}/knowledge-sources/{knowledge_source_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the Knowledge Source.\nFormat: knowledge-assistants/{knowledge_assistant_id}/knowledge-sources/{knowledge_source_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get knowledge assistant permission levels.", + "path": "/api/2.0/permissions/knowledge-assistants/{knowledge_assistant_id}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetKnowledgeAssistantPermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetKnowledgeAssistantPermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of a knowledge assistant. Knowledge assistants can inherit permissions from their root object.", + "summary": "Get knowledge assistant permissions.", + "path": "/api/2.0/permissions/knowledge-assistants/{knowledge_assistant_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetKnowledgeAssistantPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "KnowledgeAssistantPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListExamples", + "description": "Lists examples under a Knowledge Assistant.", + "summary": "List examples for a Knowledge Assistant.", + "path": "/api/2.1/{parent=knowledge-assistants/*}/examples", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListExamplesRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListExamplesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of examples to return.\nIf unspecified, at most 100 examples will be returned.\nThe maximum value is 100; values above 100 will be coerced to 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListExamples` call.\nProvide this to retrieve the subsequent page.\nIf unspecified, the first page will be returned.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListExamples` call.\nProvide this to retrieve the subsequent page.\nIf unspecified, the first page will be returned.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListKnowledgeAssistants", + "description": "List Knowledge Assistants", + "summary": "List Knowledge Assistants.", + "path": "/api/2.1/knowledge-assistants", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListKnowledgeAssistantsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListKnowledgeAssistantsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of knowledge assistants to return.\nIf unspecified, at most 100 knowledge assistants will be returned.\nThe maximum value is 100; values above 100 will be coerced to 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListKnowledgeAssistants` call.\nProvide this to retrieve the subsequent page.\nIf unspecified, the first page will be returned.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListKnowledgeAssistants` call.\nProvide this to retrieve the subsequent page.\nIf unspecified, the first page will be returned.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListKnowledgeSources", + "description": "Lists Knowledge Sources under a Knowledge Assistant.", + "summary": "List Knowledge Sources.", + "path": "/api/2.1/{parent=knowledge-assistants/*}/knowledge-sources", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListKnowledgeSourcesRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListKnowledgeSourcesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set knowledge assistant permissions.", + "path": "/api/2.0/permissions/knowledge-assistants/{knowledge_assistant_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "KnowledgeAssistantPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "KnowledgeAssistantPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeAssistantAccessControlRequestList", + "array_value": { + "pascal_name": "KnowledgeAssistantAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SyncKnowledgeSources", + "description": "Sync all non-index Knowledge Sources for a Knowledge Assistant (index sources do not require sync)", + "summary": "Syncs all Knowledge Sources for a Knowledge Assistant.", + "path": "/api/2.1/{name=knowledge-assistants/*}/knowledge-sources:sync", + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "SyncKnowledgeSourcesRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the Knowledge Assistant.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the Knowledge Assistant.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the Knowledge Assistant.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the Knowledge Assistant.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateExample", + "description": "Updates an example in a Knowledge Assistant.", + "summary": "Update an example in a Knowledge Assistant.", + "path": "/api/2.1/{name=knowledge-assistants/*/examples/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateExampleRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the example to update.\nFormat: knowledge-assistants/{knowledge_assistant_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "example", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the example.\nAllowed values: `question`, `guidelines`.\nExamples:\n- `question`\n- `question,guidelines`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the example to update.\nFormat: knowledge-assistants/{knowledge_assistant_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the example.\nAllowed values: `question`, `guidelines`.\nExamples:\n- `question`\n- `question,guidelines`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "example", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "example", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Example", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "example", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "name", + "description": "The resource name of the example to update.\nFormat: knowledge-assistants/{knowledge_assistant_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the example.\nAllowed values: `question`, `guidelines`.\nExamples:\n- `question`\n- `question,guidelines`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "create_time", + "description": "Timestamp when this example was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "example_id", + "description": "The universally unique identifier (UUID) of the example.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question. Optional — examples may be created\nwith just a question; the front-end form does not require guidelines.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "name", + "description": "Full resource name:\nknowledge-assistants/{knowledge_assistant_id}/examples/{example_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Timestamp when this example was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the example to update.\nFormat: knowledge-assistants/{knowledge_assistant_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the example.\nAllowed values: `question`, `guidelines`.\nExamples:\n- `question`\n- `question,guidelines`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateKnowledgeAssistant", + "description": "Updates a Knowledge Assistant.", + "summary": "Update a Knowledge Assistant.", + "path": "/api/2.1/{name=knowledge-assistants/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateKnowledgeAssistantRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the Knowledge Assistant.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "knowledge_assistant", + "description": "The Knowledge Assistant update payload.\nOnly fields listed in update_mask are updated.\nREQUIRED annotations on Knowledge Assistant fields describe create-time\nrequirements and do not mean all those fields are required for update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeAssistant", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the Knowledge Assistant.\nAllowed values: `display_name`, `description`, `instructions`.\nExamples:\n- `display_name`\n- `description,instructions`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the Knowledge Assistant.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the Knowledge Assistant.\nAllowed values: `display_name`, `description`, `instructions`.\nExamples:\n- `display_name`\n- `description,instructions`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "knowledge_assistant", + "description": "The Knowledge Assistant update payload.\nOnly fields listed in update_mask are updated.\nREQUIRED annotations on Knowledge Assistant fields describe create-time\nrequirements and do not mean all those fields are required for update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeAssistant", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "knowledge_assistant", + "description": "The Knowledge Assistant update payload.\nOnly fields listed in update_mask are updated.\nREQUIRED annotations on Knowledge Assistant fields describe create-time\nrequirements and do not mean all those fields are required for update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeAssistant", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "KnowledgeAssistant", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "knowledge_assistant", + "description": "The Knowledge Assistant update payload.\nOnly fields listed in update_mask are updated.\nREQUIRED annotations on Knowledge Assistant fields describe create-time\nrequirements and do not mean all those fields are required for update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeAssistant", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "name", + "description": "The resource name of the Knowledge Assistant.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the Knowledge Assistant.\nAllowed values: `display_name`, `description`, `instructions`.\nExamples:\n- `display_name`\n- `description,instructions`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "create_time", + "description": "Creation timestamp.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "creator", + "description": "The creator of the Knowledge Assistant.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_name", + "description": "The name of the knowledge assistant agent endpoint.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "error_info", + "description": "Error details when the Knowledge Assistant is in FAILED state.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "experiment_id", + "description": "The MLflow experiment ID.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Deprecated: use knowledge_assistant_id instead.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instructions", + "description": "Additional global instructions on how the agent should generate answers.\nOptional on create and update.\nWhen updating a Knowledge Assistant, include this field in update_mask to\nmodify it.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The resource name of the Knowledge Assistant.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "state", + "description": "State of the Knowledge Assistant. Not returned in List responses.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeAssistantState", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "CREATING" + }, + { + "content": "FAILED" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the Knowledge Assistant.\nFormat: knowledge-assistants/{knowledge_assistant_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the Knowledge Assistant.\nAllowed values: `display_name`, `description`, `instructions`.\nExamples:\n- `display_name`\n- `description,instructions`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "display_name", + "description": "The display name of the Knowledge Assistant, unique at workspace level.\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).\nRequired when creating a Knowledge Assistant.\nWhen updating a Knowledge Assistant, optional unless included in\nupdate_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateKnowledgeSource", + "description": "Updates a Knowledge Source.", + "summary": "Update a Knowledge Source.", + "path": "/api/2.1/{name=knowledge-assistants/*/knowledge-sources/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateKnowledgeSourceRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the Knowledge Source to update.\nFormat: knowledge-assistants/{knowledge_assistant_id}/knowledge-sources/{knowledge_source_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "knowledge_source", + "description": "The Knowledge Source update payload.\nOnly fields listed in update_mask are updated.\nREQUIRED annotations on Knowledge Source fields describe create-time\nrequirements and do not mean all those fields are required for update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeSource", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the Knowledge Source.\nAllowed values: `display_name`, `description`.\nExamples:\n- `display_name`\n- `display_name,description`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the Knowledge Source to update.\nFormat: knowledge-assistants/{knowledge_assistant_id}/knowledge-sources/{knowledge_source_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the Knowledge Source.\nAllowed values: `display_name`, `description`.\nExamples:\n- `display_name`\n- `display_name,description`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "knowledge_source", + "description": "The Knowledge Source update payload.\nOnly fields listed in update_mask are updated.\nREQUIRED annotations on Knowledge Source fields describe create-time\nrequirements and do not mean all those fields are required for update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeSource", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "knowledge_source", + "description": "The Knowledge Source update payload.\nOnly fields listed in update_mask are updated.\nREQUIRED annotations on Knowledge Source fields describe create-time\nrequirements and do not mean all those fields are required for update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeSource", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "KnowledgeSource", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "knowledge_source", + "description": "The Knowledge Source update payload.\nOnly fields listed in update_mask are updated.\nREQUIRED annotations on Knowledge Source fields describe create-time\nrequirements and do not mean all those fields are required for update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeSource", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "name", + "description": "The resource name of the Knowledge Source to update.\nFormat: knowledge-assistants/{knowledge_assistant_id}/knowledge-sources/{knowledge_source_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the Knowledge Source.\nAllowed values: `display_name`, `description`.\nExamples:\n- `display_name`\n- `display_name,description`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "create_time", + "description": "Timestamp when this knowledge source was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "file_table", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "FileTableSpec", + "is_object": true + } + }, + { + "name": "files", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "FilesSpec", + "is_object": true + } + }, + { + "name": "id", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IndexSpec", + "is_object": true + } + }, + { + "name": "knowledge_cutoff_time", + "description": "Timestamp representing the cutoff before which content in this knowledge source is being ingested.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "name", + "description": "Full resource name:\nknowledge-assistants/{knowledge_assistant_id}/knowledge-sources/{knowledge_source_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "state", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeSourceState", + "enum": [ + { + "content": "FAILED_UPDATE" + }, + { + "content": "UPDATED" + }, + { + "content": "UPDATING" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the Knowledge Source to update.\nFormat: knowledge-assistants/{knowledge_assistant_id}/knowledge-sources/{knowledge_source_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the Knowledge Source.\nAllowed values: `display_name`, `description`.\nExamples:\n- `display_name`\n- `display_name,description`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "display_name", + "description": "Human-readable display name of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the knowledge source.\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, optional unless included in update_mask.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_type", + "description": "The type of the source: \"index\", \"files\", or \"file_table\".\nRequired when creating a Knowledge Source.\nWhen updating a Knowledge Source, this field is ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on a knowledge assistant. Knowledge assistants can inherit permissions from their root object.", + "summary": "Update knowledge assistant permissions.", + "path": "/api/2.0/permissions/knowledge-assistants/{knowledge_assistant_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "KnowledgeAssistantPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "KnowledgeAssistantPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "KnowledgeAssistantAccessControlRequestList", + "array_value": { + "pascal_name": "KnowledgeAssistantAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "knowledge_assistant_id", + "description": "The knowledge assistant for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "dashboards.Lakeview", + "name": "Lakeview", + "description": "These APIs provide specific management operations for Lakeview dashboards. Generic resource management can be done with Workspace API (import, export, get-status, list, delete).", + "package": { + "name": "dashboards" + }, + "docs_group": "dashboards", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListDashboardsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Create a draft dashboard.\n\nRequires the [Databricks SQL access](https://docs.databricks.com/security/auth/entitlements)\nentitlement. Grant Databricks SQL access in addition to Workspace access.", + "summary": "Create dashboard.", + "path": "/api/2.0/lakeview/dashboards", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateDashboardRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "dashboard", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Dashboard", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "dashboard", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Dashboard", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "dashboard", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Dashboard", + "is_object": true + } + }, + "response": { + "pascal_name": "Dashboard", + "is_object": true + }, + "all_fields": [ + { + "name": "dashboard", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Dashboard", + "is_object": true + } + }, + { + "name": "dataset_catalog", + "description": "Sets the default catalog for all datasets in this dashboard.\nDoes not impact table references that use fully qualified catalog names (ex: samples.nyctaxi.trips).\nLeave blank to keep each dataset’s existing configuration.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "dataset_schema", + "description": "Sets the default schema for all datasets in this dashboard.\nDoes not impact table references that use fully qualified schema names (ex: nyctaxi.trips).\nLeave blank to keep each dataset’s existing configuration.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "The timestamp of when the dashboard was created.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "The display name of the dashboard.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "The etag for the dashboard. Can be optionally provided on updates to ensure that the dashboard\nhas not been modified since the last read.\nThis field is excluded in List Dashboards responses.", + "is_computed": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "lifecycle_state", + "description": "The state of the dashboard resource. Used for tracking trashed status.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LifecycleState", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "TRASHED" + } + ] + } + }, + { + "name": "parent_path", + "description": "The workspace path of the folder containing the dashboard. Includes leading slash and no\ntrailing slash.\nThis field is excluded in List Dashboards responses.", + "is_computed": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The workspace path of the dashboard asset, including the file name.\nExported dashboards always have the file extension `.lvdash.json`.\nThis field is excluded in List Dashboards responses.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "serialized_dashboard", + "description": "The contents of the dashboard in serialized string form.\nThis field is excluded in List Dashboards responses.\nUse the [get dashboard API](https://docs.databricks.com/api/workspace/lakeview/get)\nto retrieve an example response, which includes the `serialized_dashboard` field.\nThis field provides the structure of the JSON string that represents the dashboard's\nlayout and components.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "The timestamp of when the dashboard was last updated by the user.\nThis field is excluded in List Dashboards responses.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "The warehouse ID used to run the dashboard.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateSchedule", + "description": "Create dashboard schedule.\n\nRequires the [Databricks SQL access](https://docs.databricks.com/security/auth/entitlements)\nentitlement. Grant Databricks SQL access in addition to Workspace access.", + "summary": "Create dashboard schedule.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}/schedules", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateScheduleRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule", + "description": "The schedule to create. A dashboard is limited to 10 schedules.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Schedule", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "schedule", + "description": "The schedule to create. A dashboard is limited to 10 schedules.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Schedule", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "schedule", + "description": "The schedule to create. A dashboard is limited to 10 schedules.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Schedule", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + } + }, + "response": { + "pascal_name": "Schedule", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule", + "description": "The schedule to create. A dashboard is limited to 10 schedules.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Schedule", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + } + }, + { + "name": "create_time", + "description": "A timestamp indicating when the schedule was created.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + }, + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "The display name for schedule.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "The etag for the schedule. Must be left empty on create, must be provided on updates to ensure\nthat the schedule has not been modified since the last read, and can be optionally provided on delete.", + "is_computed": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "pause_status", + "description": "The status indicates whether this schedule is paused or not.", + "is_request_body_field": true, + "entity": { + "pascal_name": "SchedulePauseStatus", + "enum": [ + { + "content": "PAUSED" + }, + { + "content": "UNPAUSED" + } + ] + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "A timestamp indicating when the schedule was last updated.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "The warehouse id to run the dashboard with for the schedule.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + }, + { + "name": "CreateSubscription", + "description": "Create schedule subscription.\n\nThe caller must be a workspace user with one of the following\n[entitlements](https://docs.databricks.com/security/auth/entitlements):\nWorkspace access, Databricks SQL access, or Consumer access.\n\nAccount-level users who are not members of the workspace cannot call this\nendpoint, even if the dashboard has been shared with them.", + "summary": "Create schedule subscription.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}/schedules/{schedule_id}/subscriptions", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateSubscriptionRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the subscription belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule to which the subscription belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription", + "description": "The subscription to create. A schedule is limited to 100 subscriptions.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Subscription", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the subscription belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule to which the subscription belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "subscription", + "description": "The subscription to create. A schedule is limited to 100 subscriptions.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Subscription", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "subscription", + "description": "The subscription to create. A schedule is limited to 100 subscriptions.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Subscription", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "subscriber", + "description": "Subscriber details for users and destinations to be added as subscribers to the schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Subscriber", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "subscriber", + "description": "Subscriber details for users and destinations to be added as subscribers to the schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Subscriber", + "is_object": true + } + } + ] + } + }, + "response": { + "pascal_name": "Subscription", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "subscriber", + "description": "Subscriber details for users and destinations to be added as subscribers to the schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Subscriber", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "subscriber", + "description": "Subscriber details for users and destinations to be added as subscribers to the schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Subscriber", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the subscription belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule to which the subscription belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription", + "description": "The subscription to create. A schedule is limited to 100 subscriptions.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Subscription", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "subscriber", + "description": "Subscriber details for users and destinations to be added as subscribers to the schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Subscriber", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "subscriber", + "description": "Subscriber details for users and destinations to be added as subscribers to the schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Subscriber", + "is_object": true + } + } + ] + } + }, + { + "name": "create_time", + "description": "A timestamp indicating when the subscription was created.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "created_by_user_id", + "description": "UserId of the user who adds subscribers (users or notification destinations) to the dashboard's schedule.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the subscription belongs.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "The etag for the subscription. Must be left empty on create, can be optionally provided on delete\nto ensure that the subscription has not been deleted since the last read.", + "is_computed": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule to which the subscription belongs.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "skip_notify", + "description": "Controls whether notifications are sent to the subscriber for scheduled dashboard refreshes.\nIf not defined, defaults to false in the backend to match the current behavior (refresh and notify)", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "subscriber", + "description": "Subscriber details for users and destinations to be added as subscribers to the schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Subscriber", + "is_object": true + } + }, + { + "name": "subscription_id", + "description": "UUID identifying the subscription.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "A timestamp indicating when the subscription was last updated.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the subscription belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule to which the subscription belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscriber", + "description": "Subscriber details for users and destinations to be added as subscribers to the schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Subscriber", + "is_object": true + } + } + ] + }, + { + "name": "DeleteSchedule", + "description": "Delete dashboard schedule.\n\nRequires the [Databricks SQL access](https://docs.databricks.com/security/auth/entitlements)\nentitlement. Grant Databricks SQL access in addition to Workspace access.", + "summary": "Delete dashboard schedule.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}/schedules/{schedule_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteScheduleRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "The etag for the schedule. Optionally, it can be provided to verify that the schedule has not\nbeen modified from its last retrieval.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteSubscription", + "description": "Delete schedule subscription.\n\nThe caller must be a workspace user with one of the following\n[entitlements](https://docs.databricks.com/security/auth/entitlements):\nWorkspace access, Databricks SQL access, or Consumer access.\n\nAccount-level users who are not members of the workspace cannot call this\nendpoint, even if the dashboard has been shared with them.", + "summary": "Delete schedule subscription.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}/schedules/{schedule_id}/subscriptions/{subscription_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteSubscriptionRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_id", + "description": "UUID identifying the subscription.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_id", + "description": "UUID identifying the subscription.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "The etag for the subscription. Can be optionally provided to ensure that the subscription has not been\nmodified since the last read.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_id", + "description": "UUID identifying the subscription.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_id", + "description": "UUID identifying the subscription.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Get a draft dashboard.\n\nRequires the [Databricks SQL access](https://docs.databricks.com/security/auth/entitlements)\nentitlement. Grant Databricks SQL access in addition to Workspace access.", + "summary": "Get dashboard.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetDashboardRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Dashboard", + "is_object": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPublished", + "description": "Get the current published dashboard.\n\nThe caller must be a workspace user with one of the following entitlements:\nWorkspace access, Databricks SQL access, or Consumer access.\n\nAccount-level users who are not members of the workspace cannot call this\nendpoint, even if the dashboard has been shared with them.", + "summary": "Get published dashboard.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}/published", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetPublishedDashboardRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the published dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the published dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PublishedDashboard", + "is_object": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the published dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the published dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSchedule", + "description": "Get dashboard schedule.\n\nThe caller must be a workspace user with one of the following\n[entitlements](https://docs.databricks.com/security/auth/entitlements):\nWorkspace access, Databricks SQL access, or Consumer access.\n\nAccount-level users who are not members of the workspace cannot call this\nendpoint, even if the dashboard has been shared with them.", + "summary": "Get dashboard schedule.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}/schedules/{schedule_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetScheduleRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Schedule", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSubscription", + "description": "Get schedule subscription.\n\nThe caller must be a workspace user with one of the following\n[entitlements](https://docs.databricks.com/security/auth/entitlements):\nWorkspace access, Databricks SQL access, or Consumer access.\n\nAccount-level users who are not members of the workspace cannot call this\nendpoint, even if the dashboard has been shared with them.", + "summary": "Get schedule subscription.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}/schedules/{schedule_id}/subscriptions/{subscription_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetSubscriptionRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_id", + "description": "UUID identifying the subscription.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_id", + "description": "UUID identifying the subscription.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Subscription", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "subscriber", + "description": "Subscriber details for users and destinations to be added as subscribers to the schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Subscriber", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "subscriber", + "description": "Subscriber details for users and destinations to be added as subscribers to the schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Subscriber", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_id", + "description": "UUID identifying the subscription.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule which the subscription belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "subscription_id", + "description": "UUID identifying the subscription.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List dashboards.\n\nRequires the [Databricks SQL access](https://docs.databricks.com/security/auth/entitlements)\nentitlement. Grant Databricks SQL access in addition to Workspace access.", + "summary": "List dashboards.", + "path": "/api/2.0/lakeview/dashboards", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListDashboardsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListDashboardsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The number of dashboards to return per page.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListDashboards` call.\nThis token can be used to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "show_trashed", + "description": "The flag to include dashboards located in the trash.\nIf unspecified, only active dashboards will be returned.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "view", + "description": "`DASHBOARD_VIEW_BASIC` only includes summary metadata from the dashboard.", + "is_query": true, + "entity": { + "pascal_name": "DashboardView", + "enum": [ + { + "content": "DASHBOARD_VIEW_BASIC" + } + ] + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListDashboards` call.\nThis token can be used to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListSchedules", + "description": "List dashboard schedules.\n\nThe caller must be a workspace user with one of the following\n[entitlements](https://docs.databricks.com/security/auth/entitlements):\nWorkspace access, Databricks SQL access, or Consumer access.\n\nAccount-level users who are not members of the workspace cannot call this\nendpoint, even if the dashboard has been shared with them.", + "summary": "List dashboard schedules.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}/schedules", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListSchedulesRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedules belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedules belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListSchedulesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedules belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "The number of schedules to return per page.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListSchedules` call.\nUse this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedules belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListSchedules` call.\nUse this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListSubscriptions", + "description": "List schedule subscriptions.\n\nThe caller must be a workspace user with one of the following\n[entitlements](https://docs.databricks.com/security/auth/entitlements):\nWorkspace access, Databricks SQL access, or Consumer access.\n\nAccount-level users who are not members of the workspace cannot call this\nendpoint, even if the dashboard has been shared with them.", + "summary": "List schedule subscriptions.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}/schedules/{schedule_id}/subscriptions", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListSubscriptionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard which the subscriptions belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule which the subscriptions belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard which the subscriptions belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule which the subscriptions belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListSubscriptionsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard which the subscriptions belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "The number of subscriptions to return per page.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListSubscriptions` call.\nUse this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule which the subscriptions belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard which the subscriptions belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule which the subscriptions belongs.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListSubscriptions` call.\nUse this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Migrate", + "description": "Deprecated: Legacy dashboard migration is no longer supported. Use Lakeview (AI/BI)\ndashboards instead.", + "summary": "Migrate dashboard.", + "path": "/api/2.0/lakeview/dashboards/migrate", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "MigrateDashboardRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "source_dashboard_id", + "description": "UUID of the dashboard to be migrated.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "source_dashboard_id", + "description": "UUID of the dashboard to be migrated.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Dashboard", + "is_object": true + }, + "all_fields": [ + { + "name": "display_name", + "description": "Display name for the new Lakeview dashboard.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent_path", + "description": "The workspace path of the folder to contain the migrated Lakeview dashboard.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source_dashboard_id", + "description": "UUID of the dashboard to be migrated.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_parameter_syntax", + "description": "Flag to indicate if mustache parameter syntax ({{ param }}) should be auto-updated\nto named syntax (:param) when converting datasets in the dashboard.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "source_dashboard_id", + "description": "UUID of the dashboard to be migrated.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Publish", + "description": "Publish the current draft dashboard.\n\nRequires the [Databricks SQL access](https://docs.databricks.com/security/auth/entitlements)\nentitlement. Grant Databricks SQL access in addition to Workspace access.", + "summary": "Publish dashboard.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}/published", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "PublishRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to be published.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to be published.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PublishedDashboard", + "is_object": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to be published.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "embed_credentials", + "description": "Flag to indicate if the publisher's credentials should be embedded in the\npublished dashboard. These embedded credentials will be used to execute the\npublished dashboard's queries.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "warehouse_id", + "description": "The ID of the warehouse that can be used to override the warehouse which\nwas set in the draft.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to be published.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Revert", + "description": "Revert a dashboard's definition in draft mode to the last published version.\n\nRequires the [Databricks SQL access](https://docs.databricks.com/security/auth/entitlements)\nentitlement. Grant Databricks SQL access in addition to Workspace access.", + "summary": "Revert dashboard.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}/revert", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RevertDashboardRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RevertDashboardResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "The etag for the dashboard. Optionally, it can be provided to verify that the dashboard\nhas not been modified from its last retrieval.", + "is_computed": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Trash", + "description": "Trash a dashboard.\n\nRequires the [Databricks SQL access](https://docs.databricks.com/security/auth/entitlements)\nentitlement. Grant Databricks SQL access in addition to Workspace access.", + "summary": "Trash dashboard.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "TrashDashboardRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "TrashDashboardResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Unpublish", + "description": "Unpublish the dashboard.\n\nRequires the [Databricks SQL access](https://docs.databricks.com/security/auth/entitlements)\nentitlement. Grant Databricks SQL access in addition to Workspace access.", + "summary": "Unpublish dashboard.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}/published", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UnpublishDashboardRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the published dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the published dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UnpublishDashboardResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the published dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the published dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Update a draft dashboard.\n\nRequires the [Databricks SQL access](https://docs.databricks.com/security/auth/entitlements)\nentitlement. Grant Databricks SQL access in addition to Workspace access.", + "summary": "Update dashboard.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateDashboardRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "dashboard", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Dashboard", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "dashboard", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Dashboard", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "dashboard", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Dashboard", + "is_object": true + } + }, + "response": { + "pascal_name": "Dashboard", + "is_object": true + }, + "all_fields": [ + { + "name": "dashboard", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Dashboard", + "is_object": true + } + }, + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "dataset_catalog", + "description": "Sets the default catalog for all datasets in this dashboard.\nDoes not impact table references that use fully qualified catalog names (ex: samples.nyctaxi.trips).\nLeave blank to keep each dataset’s existing configuration.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "dataset_schema", + "description": "Sets the default schema for all datasets in this dashboard.\nDoes not impact table references that use fully qualified schema names (ex: nyctaxi.trips).\nLeave blank to keep each dataset’s existing configuration.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "The timestamp of when the dashboard was created.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "The display name of the dashboard.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "The etag for the dashboard. Can be optionally provided on updates to ensure that the dashboard\nhas not been modified since the last read.\nThis field is excluded in List Dashboards responses.", + "is_computed": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "lifecycle_state", + "description": "The state of the dashboard resource. Used for tracking trashed status.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LifecycleState", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "TRASHED" + } + ] + } + }, + { + "name": "parent_path", + "description": "The workspace path of the folder containing the dashboard. Includes leading slash and no\ntrailing slash.\nThis field is excluded in List Dashboards responses.", + "is_computed": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The workspace path of the dashboard asset, including the file name.\nExported dashboards always have the file extension `.lvdash.json`.\nThis field is excluded in List Dashboards responses.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "serialized_dashboard", + "description": "The contents of the dashboard in serialized string form.\nThis field is excluded in List Dashboards responses.\nUse the [get dashboard API](https://docs.databricks.com/api/workspace/lakeview/get)\nto retrieve an example response, which includes the `serialized_dashboard` field.\nThis field provides the structure of the JSON string that represents the dashboard's\nlayout and components.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "The timestamp of when the dashboard was last updated by the user.\nThis field is excluded in List Dashboards responses.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "The warehouse ID used to run the dashboard.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateSchedule", + "description": "Update dashboard schedule.\n\nRequires the [Databricks SQL access](https://docs.databricks.com/security/auth/entitlements)\nentitlement. Grant Databricks SQL access in addition to Workspace access.", + "summary": "Update dashboard schedule.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}/schedules/{schedule_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateScheduleRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule", + "description": "The schedule to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Schedule", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "schedule", + "description": "The schedule to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Schedule", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "schedule", + "description": "The schedule to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Schedule", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + } + }, + "response": { + "pascal_name": "Schedule", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule", + "description": "The schedule to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Schedule", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "A timestamp indicating when the schedule was created.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + }, + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "The display name for schedule.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "etag", + "description": "The etag for the schedule. Must be left empty on create, must be provided on updates to ensure\nthat the schedule has not been modified since the last read, and can be optionally provided on delete.", + "is_computed": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "pause_status", + "description": "The status indicates whether this schedule is paused or not.", + "is_request_body_field": true, + "entity": { + "pascal_name": "SchedulePauseStatus", + "enum": [ + { + "content": "PAUSED" + }, + { + "content": "UNPAUSED" + } + ] + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "A timestamp indicating when the schedule was last updated.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "The warehouse id to run the dashboard with for the schedule.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the dashboard to which the schedule belongs.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule_id", + "description": "UUID identifying the schedule.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "cron_schedule", + "description": "The cron expression describing the frequency of the periodic refresh for this schedule.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CronSchedule", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "dashboards.LakeviewEmbedded", + "name": "LakeviewEmbedded", + "description": "Token-based Lakeview APIs for embedding dashboards in external applications.", + "package": { + "name": "dashboards" + }, + "docs_group": "dashboards", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "GetPublishedDashboardTokenInfo", + "description": "Get a required authorization details and scopes of a published dashboard to mint an OAuth token.\n\nThe caller must be a workspace user with one of the following entitlements:\nWorkspace access, Databricks SQL access, or Consumer access.\n\nAccount-level users who are not members of the workspace cannot call this\nendpoint, even if the dashboard has been shared with them.", + "summary": "Read information of a published dashboard to mint an OAuth token.", + "path": "/api/2.0/lakeview/dashboards/{dashboard_id}/published/tokeninfo", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetPublishedDashboardTokenInfoRequest", + "is_object": true, + "required_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the published dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the published dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetPublishedDashboardTokenInfoResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "dashboard_id", + "description": "UUID identifying the published dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "external_value", + "description": "Provided external value to be included in the custom claim.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "external_viewer_id", + "description": "Provided external viewer id to be included in the custom claim.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "dashboard_id", + "description": "UUID identifying the published dashboard.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "compute.Libraries", + "name": "Libraries", + "description": "The Libraries API allows you to install and uninstall libraries and get the status of libraries on a cluster.\n\nTo make third-party or custom code available to notebooks and jobs running on your clusters, you can install a library.\nLibraries can be written in Python, Java, Scala, and R. You can upload Python, Java, Scala and R libraries and\npoint to external packages in PyPI, Maven, and CRAN repositories.\n\nCluster libraries can be used by all notebooks running on a cluster. You can install a cluster library directly\nfrom a public repository such as PyPI or Maven, using a previously installed workspace library, or using an init script.\n\nWhen you uninstall a library from a cluster, the library is removed only when you restart the cluster.\nUntil you restart the cluster, the status of the uninstalled library appears as Uninstall pending restart.", + "package": { + "name": "compute" + }, + "docs_group": "compute", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ClusterStatus" + } + }, + "methods": [ + { + "name": "AllClusterStatuses", + "description": "Get the status of all libraries on all clusters. A status is returned for all libraries installed on this cluster\nvia the API or the libraries UI.", + "summary": "Get all statuses.", + "path": "/api/2.0/libraries/all-cluster-statuses", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAllClusterLibraryStatuses", + "is_object": true + }, + "response": { + "pascal_name": "ListAllClusterLibraryStatusesResponse", + "is_object": true + }, + "pagination": {} + }, + { + "name": "ClusterStatus", + "description": "Get the status of libraries on a cluster. A status is returned for all libraries installed on this cluster via the API\nor the libraries UI.\nThe order of returned libraries is as follows:\n1. Libraries set to be installed on this cluster, in the order that the libraries were added\nto the cluster, are returned first.\n2. Libraries that were previously requested to be installed on this cluster or,\nbut are now marked for removal, in no particular order, are returned last.", + "summary": "Get status.", + "path": "/api/2.0/libraries/cluster-status", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ClusterStatus", + "is_object": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "Unique identifier of the cluster whose status should be retrieved.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "cluster_id", + "description": "Unique identifier of the cluster whose status should be retrieved.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ClusterLibraryStatuses", + "is_object": true + }, + "all_fields": [ + { + "name": "cluster_id", + "description": "Unique identifier of the cluster whose status should be retrieved.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "Unique identifier of the cluster whose status should be retrieved.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": {} + }, + { + "name": "Install", + "description": "Add libraries to install on a cluster. The installation is asynchronous; it happens in\nthe background after the completion of this request.", + "summary": "Add a library.", + "path": "/api/2.0/libraries/install", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "InstallLibraries", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "Unique identifier for the cluster on which to install these libraries.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "libraries", + "description": "The libraries to install.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LibraryList", + "array_value": { + "pascal_name": "Library", + "is_object": true + } + } + } + ], + "required_request_body_fields": [ + { + "name": "cluster_id", + "description": "Unique identifier for the cluster on which to install these libraries.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "libraries", + "description": "The libraries to install.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LibraryList", + "array_value": { + "pascal_name": "Library", + "is_object": true + } + } + } + ] + }, + "response": { + "pascal_name": "InstallLibrariesResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "cluster_id", + "description": "Unique identifier for the cluster on which to install these libraries.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "libraries", + "description": "The libraries to install.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LibraryList", + "array_value": { + "pascal_name": "Library", + "is_object": true + } + } + } + ] + }, + { + "name": "Uninstall", + "description": "Set libraries to uninstall from a cluster. The libraries won't be uninstalled until\nthe cluster is restarted. A request to uninstall a library that is not currently installed is ignored.", + "summary": "Uninstall libraries.", + "path": "/api/2.0/libraries/uninstall", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UninstallLibraries", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "Unique identifier for the cluster on which to uninstall these libraries.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "libraries", + "description": "The libraries to uninstall.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LibraryList", + "array_value": { + "pascal_name": "Library", + "is_object": true + } + } + } + ], + "required_request_body_fields": [ + { + "name": "cluster_id", + "description": "Unique identifier for the cluster on which to uninstall these libraries.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "libraries", + "description": "The libraries to uninstall.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LibraryList", + "array_value": { + "pascal_name": "Library", + "is_object": true + } + } + } + ] + }, + "response": { + "pascal_name": "UninstallLibrariesResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "cluster_id", + "description": "Unique identifier for the cluster on which to uninstall these libraries.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "libraries", + "description": "The libraries to uninstall.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LibraryList", + "array_value": { + "pascal_name": "Library", + "is_object": true + } + } + } + ] + } + ] + }, + { + "id": "settings.LlmProxyPartnerPoweredAccount", + "name": "LlmProxyPartnerPoweredAccount", + "description": "Determines if partner powered models are enabled or not for a specific account", + "package": { + "name": "settings" + }, + "is_accounts": true, + "has_parent": true, + "is_hidden_cli": true, + "docs_group": "settings", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "parent_service_id": "settings.AccountSettings", + "methods": [ + { + "name": "Get", + "description": "Gets the enable partner powered AI features account setting.", + "summary": "Get the enable partner powered AI features account setting.", + "path": "/api/2.0/accounts/{account_id}/settings/types/llm_proxy_partner_powered/names/default", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetLlmProxyPartnerPoweredAccountRequest", + "is_object": true + }, + "response": { + "pascal_name": "LlmProxyPartnerPoweredAccount", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the enable partner powered AI features account setting.", + "summary": "Update the enable partner powered AI features account setting.", + "path": "/api/2.0/accounts/{account_id}/settings/types/llm_proxy_partner_powered/names/default", + "can_use_json": true, + "must_use_json": true, + "is_hidden_cli": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateLlmProxyPartnerPoweredAccountRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LlmProxyPartnerPoweredAccount", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LlmProxyPartnerPoweredAccount", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "LlmProxyPartnerPoweredAccount", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LlmProxyPartnerPoweredAccount", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "settings.LlmProxyPartnerPoweredEnforce", + "name": "LlmProxyPartnerPoweredEnforce", + "description": "Determines if the account-level partner-powered setting value is enforced upon the workspace-level partner-powered setting", + "package": { + "name": "settings" + }, + "is_accounts": true, + "has_parent": true, + "is_hidden_cli": true, + "docs_group": "settings", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "parent_service_id": "settings.AccountSettings", + "methods": [ + { + "name": "Get", + "description": "Gets the enforcement status of partner powered AI features account setting.", + "summary": "Get the enforcement status of partner powered AI features account setting.", + "path": "/api/2.0/accounts/{account_id}/settings/types/llm_proxy_partner_powered_enforce/names/default", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetLlmProxyPartnerPoweredEnforceRequest", + "is_object": true + }, + "response": { + "pascal_name": "LlmProxyPartnerPoweredEnforce", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the enable enforcement status of partner powered AI features account setting.", + "summary": "Update the enforcement status of partner powered AI features account setting.", + "path": "/api/2.0/accounts/{account_id}/settings/types/llm_proxy_partner_powered_enforce/names/default", + "can_use_json": true, + "must_use_json": true, + "is_hidden_cli": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateLlmProxyPartnerPoweredEnforceRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LlmProxyPartnerPoweredEnforce", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LlmProxyPartnerPoweredEnforce", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "LlmProxyPartnerPoweredEnforce", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LlmProxyPartnerPoweredEnforce", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "settings.LlmProxyPartnerPoweredWorkspace", + "name": "LlmProxyPartnerPoweredWorkspace", + "description": "Determines if partner powered models are enabled or not for a specific workspace", + "package": { + "name": "settings" + }, + "has_parent": true, + "is_hidden_cli": true, + "docs_group": "settings", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "Delete", + "description": "Reverts the enable partner powered AI features workspace setting to its default value.", + "summary": "Delete the enable partner powered AI features workspace setting.", + "path": "/api/2.0/settings/types/llm_proxy_partner_powered/names/default", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteLlmProxyPartnerPoweredWorkspaceRequest", + "is_object": true + }, + "response": { + "pascal_name": "DeleteLlmProxyPartnerPoweredWorkspaceResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the enable partner powered AI features workspace setting.", + "summary": "Get the enable partner powered AI features workspace setting.", + "path": "/api/2.0/settings/types/llm_proxy_partner_powered/names/default", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetLlmProxyPartnerPoweredWorkspaceRequest", + "is_object": true + }, + "response": { + "pascal_name": "LlmProxyPartnerPoweredWorkspace", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the enable partner powered AI features workspace setting.", + "summary": "Update the enable partner powered AI features workspace setting.", + "path": "/api/2.0/settings/types/llm_proxy_partner_powered/names/default", + "can_use_json": true, + "must_use_json": true, + "is_hidden_cli": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateLlmProxyPartnerPoweredWorkspaceRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LlmProxyPartnerPoweredWorkspace", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LlmProxyPartnerPoweredWorkspace", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "LlmProxyPartnerPoweredWorkspace", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LlmProxyPartnerPoweredWorkspace", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "billing.LogDelivery", + "name": "LogDelivery", + "description": "These APIs manage log delivery configurations for this account. The two supported log types for this API are _billable usage logs_ (AWS only) and _audit logs_ (AWS and GCP). This feature is in Public Preview. This feature works with all account ID types.\n\nLog delivery works with all account types. However, if your account is on the E2 version of the platform or on a select custom plan that allows multiple workspaces per account, you can optionally configure different storage destinations for each workspace. Log delivery status is also provided to know the latest status of log delivery attempts.\n\nThe high-level flow of billable usage delivery (AWS only):\n\n1. **Create storage**: In AWS, [create a new AWS S3 bucket](https://docs.databricks.com/administration-guide/account-api/aws-storage.html) with a specific bucket policy. Using Databricks APIs, call the Account API to create a [storage configuration object](:method:Storage/Create) that uses the bucket name.\n\n2. **Create credentials**: In AWS, create the appropriate AWS IAM role. For full details, including the required IAM role policies and trust relationship, see [Billable usage log delivery](https://docs.databricks.com/administration-guide/account-settings/billable-usage-delivery.html). Using Databricks APIs, call the Account API to create a [credential configuration object](:method:Credentials/Create) that uses the IAM role's ARN.\n\n3. **Create log delivery configuration**: Using Databricks APIs, call the Account API to [create a log delivery configuration](:method:LogDelivery/Create) that uses the credential and storage configuration objects from previous steps. You can specify if the logs should include all events of that log type in your account (_Account level_ delivery) or only events for a specific set of workspaces (_workspace level_ delivery). Account level log delivery applies to all current and future workspaces plus account level logs, while workspace level log delivery solely delivers logs related to the specified workspaces. You can create multiple types of delivery configurations per account.\n\nFor billable usage delivery (AWS only):\n* For more information about billable usage logs, see [Billable usage log delivery](https://docs.databricks.com/administration-guide/account-settings/billable-usage-delivery.html). For the CSV schema, see the [Usage page](https://docs.databricks.com/administration-guide/account-settings/usage.html).\n* The delivery location is `\u003cbucket-name\u003e/\u003cprefix\u003e/billable-usage/csv/`, where `\u003cprefix\u003e` is the name of the optional delivery path prefix you set up during log delivery configuration. Files are named `workspaceId=\u003cworkspace-id\u003e-usageMonth=\u003cmonth\u003e.csv`.\n* All billable usage logs apply to specific workspaces (_workspace level_ logs). You can aggregate usage for your entire account by creating an _account level_ delivery configuration that delivers logs for all current and future workspaces in your account.\n* The files are delivered daily by overwriting the month's CSV file for each workspace.\n\nFor audit log delivery (AWS and GCP):\n* For more information about about audit log delivery, see Audit log delivery [AWS](https://docs.databricks.com/administration-guide/account-settings/audit-logs.html) or [GCP](https://docs.databricks.com/gcp/en/admin/account-settings/audit-logs), which includes information about the used JSON schema.\n* The delivery location is `\u003cbucket-name\u003e/\u003cdelivery-path-prefix\u003e/workspaceId=\u003cworkspaceId\u003e/date=\u003cyyyy-mm-dd\u003e/auditlogs_\u003cinternal-id\u003e.json`. Files may get overwritten with the same content multiple times to achieve exactly-once delivery.\n* If the audit log delivery configuration included specific workspace IDs, only _workspace-level_ audit logs for those workspaces are delivered. If the log delivery configuration applies to the entire account (_account level_ delivery configuration), the audit log delivery includes workspace-level audit logs for all workspaces in the account as well as account-level audit logs. See Audit log delivery [AWS](https://docs.databricks.com/administration-guide/account-settings/audit-logs.html) or [GCP](https://docs.databricks.com/gcp/en/admin/account-settings/audit-logs) for details.\n* Auditable events are typically available in logs within 15 minutes.", + "package": { + "name": "billing" + }, + "is_accounts": true, + "docs_group": "billing", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "LogDeliveryConfigurationConfigNameToConfigIdMap" + }, + "request": { + "pascal_name": "ListLogDeliveryRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new Databricks log delivery configuration to enable delivery of the specified type of logs to your storage location.\nThis requires that you already created a [credential object](:method:Credentials/Create) (which encapsulates a cross-account service IAM role)\nand a [storage configuration object](:method:Storage/Create) (which encapsulates an S3 bucket).\n\nFor full details, including the required IAM role policies and bucket policies,\nsee [Deliver and access billable usage logs](https://docs.databricks.com/administration-guide/account-settings/billable-usage-delivery.html)\nor [Configure audit logging](https://docs.databricks.com/administration-guide/account-settings/audit-logs.html).\n\n**Note**: There is a limit on the number of log delivery configurations available per account (each limit applies separately to each log type including billable usage and audit logs).\nYou can create a maximum of two enabled account-level delivery configurations (configurations without a workspace filter) per type.\nAdditionally, you can create two enabled workspace-level delivery configurations per workspace for each log type, which means that the same workspace ID can occur in the workspace filter for no more than two delivery configurations per log type.\n\nYou cannot delete a log delivery configuration, but you can disable it (see [Enable or disable log delivery configuration](:method:LogDelivery/PatchStatus)).", + "summary": "Create a new log delivery configuration.", + "path": "/api/2.0/accounts/{account_id}/log-delivery", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "WrappedCreateLogDeliveryConfiguration", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "log_delivery_configuration", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateLogDeliveryConfigurationParams", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "log_delivery_configuration", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateLogDeliveryConfigurationParams", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "WrappedLogDeliveryConfiguration", + "is_object": true + }, + "all_fields": [ + { + "name": "log_delivery_configuration", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateLogDeliveryConfigurationParams", + "is_object": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a Databricks log delivery configuration object for an account, both specified by ID.", + "summary": "Get log delivery configuration.", + "path": "/api/2.0/accounts/{account_id}/log-delivery/{log_delivery_configuration_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetLogDeliveryRequest", + "is_object": true, + "required_fields": [ + { + "name": "log_delivery_configuration_id", + "description": "The log delivery configuration id of customer", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "log_delivery_configuration_id", + "description": "The log delivery configuration id of customer", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetLogDeliveryConfigurationResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "log_delivery_configuration_id", + "description": "The log delivery configuration id of customer", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "log_delivery_configuration_id", + "description": "The log delivery configuration id of customer", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets all Databricks log delivery configurations associated with an account specified by ID.", + "summary": "Get all log delivery configurations.", + "path": "/api/2.0/accounts/{account_id}/log-delivery", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListLogDeliveryRequest", + "is_object": true + }, + "response": { + "pascal_name": "WrappedLogDeliveryConfigurations", + "is_object": true + }, + "all_fields": [ + { + "name": "credentials_id", + "description": "The Credentials id to filter the search results with", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_token", + "description": "A page token received from a previous get all budget configurations call. This token can be used to retrieve the subsequent page.\nRequests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "The log delivery status to filter the search results with", + "is_query": true, + "entity": { + "pascal_name": "LogDeliveryConfigStatus", + "enum": [ + { + "content": "DISABLED" + }, + { + "content": "ENABLED" + } + ] + } + }, + { + "name": "storage_configuration_id", + "description": "The Storage Configuration id to filter the search results with", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token received from a previous get all budget configurations call. This token can be used to retrieve the subsequent page.\nRequests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "PatchStatus", + "description": "Enables or disables a log delivery configuration.\nDeletion of delivery configurations is not supported, so disable log delivery configurations that are no longer needed.\nNote that you can't re-enable a delivery configuration if this would violate the delivery configuration limits described under [Create log delivery](:method:LogDelivery/Create).", + "summary": "Enable or disable log delivery configuration.", + "path": "/api/2.0/accounts/{account_id}/log-delivery/{log_delivery_configuration_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateLogDeliveryConfigurationStatusRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "log_delivery_configuration_id", + "description": "The log delivery configuration id of customer", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Status of log delivery configuration. Set to `ENABLED` (enabled) or `DISABLED` (disabled). Defaults to `ENABLED`. You can [enable or disable the configuration](#operation/patch-log-delivery-config-status) later. Deletion of a configuration is not supported, so disable a log delivery configuration that is no longer needed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LogDeliveryConfigStatus", + "enum": [ + { + "content": "DISABLED" + }, + { + "content": "ENABLED" + } + ] + } + } + ], + "required_in_url_fields": [ + { + "name": "log_delivery_configuration_id", + "description": "The log delivery configuration id of customer", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "status", + "description": "Status of log delivery configuration. Set to `ENABLED` (enabled) or `DISABLED` (disabled). Defaults to `ENABLED`. You can [enable or disable the configuration](#operation/patch-log-delivery-config-status) later. Deletion of a configuration is not supported, so disable a log delivery configuration that is no longer needed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LogDeliveryConfigStatus", + "enum": [ + { + "content": "DISABLED" + }, + { + "content": "ENABLED" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "PatchStatusResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "log_delivery_configuration_id", + "description": "The log delivery configuration id of customer", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Status of log delivery configuration. Set to `ENABLED` (enabled) or `DISABLED` (disabled). Defaults to `ENABLED`. You can [enable or disable the configuration](#operation/patch-log-delivery-config-status) later. Deletion of a configuration is not supported, so disable a log delivery configuration that is no longer needed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LogDeliveryConfigStatus", + "enum": [ + { + "content": "DISABLED" + }, + { + "content": "ENABLED" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "log_delivery_configuration_id", + "description": "The log delivery configuration id of customer", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Status of log delivery configuration. Set to `ENABLED` (enabled) or `DISABLED` (disabled). Defaults to `ENABLED`. You can [enable or disable the configuration](#operation/patch-log-delivery-config-status) later. Deletion of a configuration is not supported, so disable a log delivery configuration that is no longer needed.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "LogDeliveryConfigStatus", + "enum": [ + { + "content": "DISABLED" + }, + { + "content": "ENABLED" + } + ] + } + } + ] + } + ] + }, + { + "id": "ml.MaterializedFeatures", + "name": "MaterializedFeatures", + "description": "Materialized Features are columns in tables and views that can be directly used as features to train and serve ML models.", + "package": { + "name": "ml" + }, + "is_hidden_cli": true, + "docs_group": "ml", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "list": { + "request": { + "pascal_name": "ListFeatureTagsRequest" + } + }, + "methods": [ + { + "name": "CreateFeatureTag", + "description": "Creates a FeatureTag.", + "summary": "Create a feature tag.", + "path": "/api/2.0/feature-store/feature-tables/{table_name}/features/{feature_name}/tags", + "can_use_json": true, + "is_crud_create": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateFeatureTagRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_tag", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FeatureTag", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "feature_tag", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FeatureTag", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "feature_tag", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FeatureTag", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "FeatureTag", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_tag", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FeatureTag", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteFeatureTag", + "description": "Deletes a FeatureTag.", + "summary": "Delete a feature tag.", + "path": "/api/2.0/feature-store/feature-tables/{table_name}/features/{feature_name}/tags/{key}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteFeatureTagRequest", + "is_object": true, + "required_fields": [ + { + "name": "table_name", + "description": "The name of the feature table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "description": "The name of the feature within the feature table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "The key of the tag to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "table_name", + "description": "The name of the feature table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "description": "The name of the feature within the feature table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "The key of the tag to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "feature_name", + "description": "The name of the feature within the feature table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "The key of the tag to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_name", + "description": "The name of the feature table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "table_name", + "description": "The name of the feature table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "description": "The name of the feature within the feature table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "The key of the tag to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetFeatureLineage", + "description": "Get Feature Lineage.", + "summary": "Get Feature Lineage.", + "path": "/api/2.0/feature-store/feature-tables/{table_name}/features/{feature_name}/lineage", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetFeatureLineageRequest", + "is_object": true, + "required_fields": [ + { + "name": "table_name", + "description": "The full name of the feature table in Unity Catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "description": "The name of the feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "table_name", + "description": "The full name of the feature table in Unity Catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "description": "The name of the feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "FeatureLineage", + "is_object": true + }, + "all_fields": [ + { + "name": "feature_name", + "description": "The name of the feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_name", + "description": "The full name of the feature table in Unity Catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "table_name", + "description": "The full name of the feature table in Unity Catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "description": "The name of the feature.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetFeatureTag", + "description": "Gets a FeatureTag.", + "summary": "Get a feature tag.", + "path": "/api/2.0/feature-store/feature-tables/{table_name}/features/{feature_name}/tags/{key}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetFeatureTagRequest", + "is_object": true, + "required_fields": [ + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "FeatureTag", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListFeatureTags", + "description": "Lists FeatureTags.", + "summary": "List all feature tags.", + "path": "/api/2.0/feature-store/feature-tables/{table_name}/features/{feature_name}/tags", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListFeatureTagsRequest", + "is_object": true, + "required_fields": [ + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListFeatureTagsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "The maximum number of results to return.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous query.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateFeatureTag", + "description": "Updates a FeatureTag.", + "summary": "Update a feature tag.", + "path": "/api/2.0/feature-store/feature-tables/{table_name}/features/{feature_name}/tags/{key}", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateFeatureTagRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_tag", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FeatureTag", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "feature_tag", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FeatureTag", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "feature_tag", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FeatureTag", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "FeatureTag", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_tag", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FeatureTag", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "table_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "feature_name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.AccountMetastoreAssignments", + "name": "AccountMetastoreAssignments", + "description": "These APIs manage metastore assignments to a workspace.", + "package": { + "name": "catalog" + }, + "is_accounts": true, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListAccountMetastoreAssignmentsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates an assignment to a metastore for a workspace", + "summary": "Assigns a workspace to a metastore.", + "path": "/api/2.0/accounts/{account_id}/workspaces/{workspace_id}/metastores/{metastore_id}", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "AccountsCreateMetastoreAssignment", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccountsCreateMetastoreAssignmentResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "metastore_assignment", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CreateMetastoreAssignment", + "is_object": true + } + }, + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a metastore assignment to a workspace, leaving the workspace with no metastore.", + "summary": "Delete a metastore assignment.", + "path": "/api/2.0/accounts/{account_id}/workspaces/{workspace_id}/metastores/{metastore_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteAccountMetastoreAssignmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccountsDeleteMetastoreAssignmentResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the metastore assignment, if any, for the workspace specified by ID.\nIf the workspace is assigned a metastore, the mapping will be returned.\nIf no metastore is assigned to the workspace, the assignment will not be\nfound and a 404 returned.", + "summary": "Gets the metastore assignment for a workspace.", + "path": "/api/2.0/accounts/{account_id}/workspaces/{workspace_id}/metastore", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAccountMetastoreAssignmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "AccountsMetastoreAssignment", + "is_object": true + }, + "all_fields": [ + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "List", + "description": "Gets a list of all Databricks workspace IDs that have been assigned to given metastore.", + "summary": "Get all workspaces assigned to a metastore.", + "path": "/api/2.0/accounts/{account_id}/metastores/{metastore_id}/workspaces", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAccountMetastoreAssignmentsRequest", + "is_object": true, + "required_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListAccountMetastoreAssignmentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": {} + }, + { + "name": "Update", + "description": "Updates an assignment to a metastore for a workspace. Currently, only the default catalog may be updated.", + "summary": "Updates a metastore assignment to a workspace.", + "path": "/api/2.0/accounts/{account_id}/workspaces/{workspace_id}/metastores/{metastore_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "AccountsUpdateMetastoreAssignment", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccountsUpdateMetastoreAssignmentResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "metastore_assignment", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "UpdateMetastoreAssignment", + "is_object": true + } + }, + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "Workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.Metastores", + "name": "Metastores", + "description": "A metastore is the top-level container of objects in Unity Catalog. It stores data assets\n(tables and views) and the permissions that govern access to them. Databricks account admins\ncan create metastores and assign them to Databricks workspaces to control which workloads\nuse each metastore. For a workspace to use Unity Catalog, it must have a Unity Catalog\nmetastore attached.\n\nEach metastore is configured with a root storage location in a cloud storage account.\nThis storage location is used for metadata and managed tables data.\n\nNOTE: This metastore is distinct from the metastore included in Databricks workspaces\ncreated before Unity Catalog was released. If your workspace includes a legacy Hive\nmetastore, the data in that metastore is available in a catalog named hive_metastore.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListMetastoresRequest" + } + }, + "methods": [ + { + "name": "Assign", + "description": "Creates a new metastore assignment.\nIf an assignment for the same __workspace_id__ exists, it will be overwritten by the new __metastore_id__ and\n__default_catalog_name__. The caller must be an account admin.", + "summary": "Create an assignment.", + "path": "/api/2.1/unity-catalog/workspaces/{workspace_id}/metastore", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateMetastoreAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "A workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "The unique ID of the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "default_catalog_name", + "description": "The name of the default catalog in the metastore.\nThis field is deprecated. Please use \"Default Namespace API\" to\nconfigure the default catalog for a Databricks workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "A workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "metastore_id", + "description": "The unique ID of the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "default_catalog_name", + "description": "The name of the default catalog in the metastore.\nThis field is deprecated. Please use \"Default Namespace API\" to\nconfigure the default catalog for a Databricks workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AssignResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "default_catalog_name", + "description": "The name of the default catalog in the metastore.\nThis field is deprecated. Please use \"Default Namespace API\" to\nconfigure the default catalog for a Databricks workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "The unique ID of the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_id", + "description": "A workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "A workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "The unique ID of the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "default_catalog_name", + "description": "The name of the default catalog in the metastore.\nThis field is deprecated. Please use \"Default Namespace API\" to\nconfigure the default catalog for a Databricks workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Create", + "description": "Creates a new metastore based on a provided name and optional storage root path.\nBy default (if the __owner__ field is not set), the owner of the new metastore is the user calling\nthe __createMetastore__ API. If the __owner__ field is set to the empty string (**\"\"**), the ownership is\nassigned to the System User instead.", + "summary": "Create a metastore.", + "path": "/api/2.1/unity-catalog/metastores", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateMetastore", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The user-specified name of the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The user-specified name of the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "MetastoreInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "external_access_enabled", + "description": "Whether to allow non-DBR clients to directly access entities under the metastore.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "The user-specified name of the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "Cloud region which the metastore serves (e.g., `us-west-2`, `westus`).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_root", + "description": "The storage root URL for metastore", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The user-specified name of the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Current", + "description": "Gets the metastore assignment for the workspace being accessed.", + "summary": "Get metastore assignment for workspace.", + "path": "/api/2.1/unity-catalog/current-metastore-assignment", + "is_legacy_empty_request": true, + "is_crud_read": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CurrentRequest", + "is_object": true + }, + "response": { + "pascal_name": "MetastoreAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "The unique ID of the Databricks workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "The unique ID of the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "workspace_id", + "description": "The unique ID of the Databricks workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "The unique ID of the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "Delete", + "description": "Deletes a metastore. The caller must be a metastore admin.", + "summary": "Delete a metastore.", + "path": "/api/2.1/unity-catalog/metastores/{id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteMetastoreRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID of the metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID of the metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "force", + "description": "Force deletion even if the metastore is not empty. Default is false.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "id", + "description": "Unique ID of the metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID of the metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a metastore that matches the supplied ID. The caller must be a metastore admin to retrieve this info.", + "summary": "Get a metastore.", + "path": "/api/2.1/unity-catalog/metastores/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetMetastoreRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID of the metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID of the metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "MetastoreInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID of the metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID of the metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets an array of the available metastores (as __MetastoreInfo__ objects). The caller must be an admin to retrieve this info.\nThere is no guarantee of a specific ordering of the elements in the array.\n\nNOTE: we recommend using max_results=0 to use the paginated version of this API. Unpaginated calls will be deprecated soon.\n\nPAGINATION BEHAVIOR: When using pagination (max_results \u003e= 0), a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List metastores.", + "path": "/api/2.1/unity-catalog/metastores", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListMetastoresRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListMetastoresResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "max_results", + "description": "Maximum number of metastores to return.\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all the metastores are returned (not recommended).\n- Note: The number of returned metastores might be less than the specified max_results size, even zero.\nThe only definitive indication that no further metastores can be fetched is when the next_page_token is unset from the response.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + }, + "max_results": { + "name": "max_results", + "description": "Maximum number of metastores to return.\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all the metastores are returned (not recommended).\n- Note: The number of returned metastores might be less than the specified max_results size, even zero.\nThe only definitive indication that no further metastores can be fetched is when the next_page_token is unset from the response.", + "is_query": true, + "entity": { + "is_int": true + } + } + } + }, + { + "name": "Summary", + "description": "Gets information about a metastore.\nThis summary includes the storage credential, the cloud vendor, the cloud region, and the global metastore ID.", + "summary": "Get a metastore summary.", + "path": "/api/2.1/unity-catalog/metastore_summary", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SummaryRequest", + "is_object": true + }, + "response": { + "pascal_name": "GetMetastoreSummaryResponse", + "is_object": true + } + }, + { + "name": "Unassign", + "description": "Deletes a metastore assignment. The caller must be an account administrator.", + "summary": "Delete an assignment.", + "path": "/api/2.1/unity-catalog/workspaces/{workspace_id}/metastore", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UnassignRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "A workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "Query for the ID of the metastore to delete.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "A workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "Query for the ID of the metastore to delete.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UnassignResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "metastore_id", + "description": "Query for the ID of the metastore to delete.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_id", + "description": "A workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "A workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "metastore_id", + "description": "Query for the ID of the metastore to delete.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates information for a specific metastore. The caller must be a metastore admin.\nIf the __owner__ field is set to the empty string (**\"\"**), the ownership is updated\nto the System User.", + "summary": "Update a metastore.", + "path": "/api/2.1/unity-catalog/metastores/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateMetastore", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID of the metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID of the metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "MetastoreInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "delta_sharing_organization_name", + "description": "The organization name of a Delta Sharing entity, to be used in Databricks-to-Databricks Delta Sharing as the official name.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "delta_sharing_recipient_token_lifetime_in_seconds", + "description": "The lifetime of delta sharing recipient token in seconds.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "delta_sharing_scope", + "description": "The scope of Delta Sharing enabled for the metastore.", + "is_request_body_field": true, + "entity": { + "pascal_name": "DeltaSharingScopeEnum", + "enum": [ + { + "content": "INTERNAL" + }, + { + "content": "INTERNAL_AND_EXTERNAL" + } + ] + } + }, + { + "name": "external_access_enabled", + "description": "Whether to allow non-DBR clients to directly access entities under the metastore.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "id", + "description": "Unique ID of the metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "new_name", + "description": "New name for the metastore.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "The owner of the metastore.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "privilege_model_version", + "description": "Privilege model version of the metastore, of the form `major.minor` (e.g., `1.0`).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_root_credential_id", + "description": "UUID of storage credential to access the metastore storage_root.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID of the metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateAssignment", + "description": "Updates a metastore assignment. This operation can be used to update __metastore_id__ or __default_catalog_name__\nfor a specified Workspace, if the Workspace is already assigned a metastore.\nThe caller must be an account admin to update __metastore_id__; otherwise, the caller can be a Workspace admin.", + "summary": "Update an assignment.", + "path": "/api/2.1/unity-catalog/workspaces/{workspace_id}/metastore", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateMetastoreAssignment", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "A workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "A workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateAssignmentResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "default_catalog_name", + "description": "The name of the default catalog in the metastore.\nThis field is deprecated. Please use \"Default Namespace API\" to\nconfigure the default catalog for a Databricks workspace.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "The unique ID of the metastore.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_id", + "description": "A workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "A workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + } + ] + }, + { + "id": "catalog.AccountMetastores", + "name": "AccountMetastores", + "description": "These APIs manage Unity Catalog metastores for an account. A metastore contains catalogs that can be associated with workspaces", + "package": { + "name": "catalog" + }, + "is_accounts": true, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "is_legacy_empty_request": true, + "request": { + "pascal_name": "ListAccountMetastoresRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a Unity Catalog metastore.", + "summary": "Create Metastore.", + "path": "/api/2.0/accounts/{account_id}/metastores", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "AccountsCreateMetastore", + "is_object": true + }, + "response": { + "pascal_name": "AccountsCreateMetastoreResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "metastore_info", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CreateAccountsMetastore", + "is_object": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a Unity Catalog metastore for an account, both specified by ID.", + "summary": "Delete a metastore.", + "path": "/api/2.0/accounts/{account_id}/metastores/{metastore_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteAccountMetastoreRequest", + "is_object": true, + "required_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccountsDeleteMetastoreResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "force", + "description": "Force deletion even if the metastore is not empty. Default is false.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a Unity Catalog metastore from an account, both specified by ID.", + "summary": "Get a metastore.", + "path": "/api/2.0/accounts/{account_id}/metastores/{metastore_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAccountMetastoreRequest", + "is_object": true, + "required_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccountsGetMetastoreResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets all Unity Catalog metastores associated with an account specified by ID.", + "summary": "Get all metastores associated with an account.", + "path": "/api/2.0/accounts/{account_id}/metastores", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAccountMetastoresRequest", + "is_object": true + }, + "response": { + "pascal_name": "AccountsListMetastoresResponse", + "is_object": true + }, + "pagination": {} + }, + { + "name": "Update", + "description": "Updates an existing Unity Catalog metastore.", + "summary": "Update a metastore.", + "path": "/api/2.0/accounts/{account_id}/metastores/{metastore_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "AccountsUpdateMetastore", + "is_object": true, + "required_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccountsUpdateMetastoreResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_info", + "description": "Properties of the metastore to change.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "UpdateAccountsMetastore", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "ml.ModelRegistry", + "name": "ModelRegistry", + "description": "Note: This API reference documents APIs for the Workspace Model Registry. Databricks recommends using\n[Models in Unity Catalog](/api/workspace/registeredmodels) instead. Models in Unity Catalog provides\ncentralized model governance, cross-workspace access, lineage, and deployment. Workspace Model Registry\nwill be deprecated in the future.\n\nThe Workspace Model Registry is a centralized model repository and a UI and set of APIs that enable\nyou to manage the full lifecycle of MLflow Models.", + "package": { + "name": "ml" + }, + "docs_group": "ml", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListModelsRequest" + } + }, + "methods": [ + { + "name": "ApproveTransitionRequest", + "description": "Approves a model version stage transition request.", + "summary": "Approve transition request.", + "path": "/api/2.0/mlflow/transition-requests/approve", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ApproveTransitionRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "archive_existing_versions", + "description": "Specifies whether to archive all current model versions in the target stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "archive_existing_versions", + "description": "Specifies whether to archive all current model versions in the target stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ] + }, + "response": { + "pascal_name": "ApproveTransitionRequestResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "archive_existing_versions", + "description": "Specifies whether to archive all current model versions in the target stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "comment", + "description": "User-provided comment on the action.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "archive_existing_versions", + "description": "Specifies whether to archive all current model versions in the target stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ] + }, + { + "name": "CreateComment", + "description": "Posts a comment on a model version. A comment can be submitted either by a user or programmatically to display\nrelevant information about the model. For example, test results or deployment errors.", + "summary": "Post a comment.", + "path": "/api/2.0/mlflow/comments/create", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateComment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "User-provided comment on the action.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "User-provided comment on the action.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateCommentResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "User-provided comment on the action.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "User-provided comment on the action.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateModel", + "description": "Creates a new registered model with the name specified in the request body.\nThrows `RESOURCE_ALREADY_EXISTS` if a registered model with the given name exists.", + "summary": "Create a model.", + "path": "/api/2.0/mlflow/registered-models/create", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateModelRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Register models under this name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Register models under this name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateModelResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "description", + "description": "Optional description for registered model.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Register models under this name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tags", + "description": "Additional metadata for registered model.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelTagList", + "array_value": { + "pascal_name": "ModelTag", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Register models under this name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateModelVersion", + "description": "Creates a model version.", + "summary": "Create a model version.", + "path": "/api/2.0/mlflow/model-versions/create", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateModelVersionRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Register model under this name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "URI indicating the location of the model artifacts.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Register model under this name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "URI indicating the location of the model artifacts.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateModelVersionResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "description", + "description": "Optional description for model version.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Register model under this name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_id", + "description": "MLflow run ID for correlation, if `source` was generated by an experiment run in\nMLflow tracking server", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_link", + "description": "MLflow run link - this is the exact link of the run that generated this model version,\npotentially hosted at another instance of MLflow.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "URI indicating the location of the model artifacts.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tags", + "description": "Additional metadata for model version.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelVersionTagList", + "array_value": { + "pascal_name": "ModelVersionTag", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Register model under this name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "URI indicating the location of the model artifacts.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateTransitionRequest", + "description": "Creates a model version stage transition request.", + "summary": "Make a transition request.", + "path": "/api/2.0/mlflow/transition-requests/create", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateTransitionRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateTransitionRequestResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "User-provided comment on the action.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateWebhook", + "description": "**NOTE:** This endpoint is in Public Preview.\nCreates a registry webhook.", + "summary": "Create a webhook.", + "path": "/api/2.0/mlflow/registry-webhooks/create", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateRegistryWebhook", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "events", + "description": "Events that can trigger a registry webhook:\n* `MODEL_VERSION_CREATED`: A new model version was created for the associated model.\n\n* `MODEL_VERSION_TRANSITIONED_STAGE`: A model version’s stage was changed.\n\n* `TRANSITION_REQUEST_CREATED`: A user requested a model version’s stage be transitioned.\n\n* `COMMENT_CREATED`: A user wrote a comment on a registered model.\n\n* `REGISTERED_MODEL_CREATED`: A new registered model was created. This event type can only be specified for a registry-wide webhook, which can be created by not specifying a model name in the create request.\n\n* `MODEL_VERSION_TAG_SET`: A user set a tag on the model version.\n\n* `MODEL_VERSION_TRANSITIONED_TO_STAGING`: A model version was transitioned to staging.\n\n* `MODEL_VERSION_TRANSITIONED_TO_PRODUCTION`: A model version was transitioned to production.\n\n* `MODEL_VERSION_TRANSITIONED_TO_ARCHIVED`: A model version was archived.\n\n* `TRANSITION_REQUEST_TO_STAGING_CREATED`: A user requested a model version be transitioned to staging.\n\n* `TRANSITION_REQUEST_TO_PRODUCTION_CREATED`: A user requested a model version be transitioned to production.\n\n* `TRANSITION_REQUEST_TO_ARCHIVED_CREATED`: A user requested a model version be archived.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RegistryWebhookEventList", + "array_value": { + "pascal_name": "RegistryWebhookEvent", + "enum": [ + { + "content": "COMMENT_CREATED" + }, + { + "content": "MODEL_VERSION_CREATED" + }, + { + "content": "MODEL_VERSION_TAG_SET" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_STAGE" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_ARCHIVED" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_PRODUCTION" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_STAGING" + }, + { + "content": "REGISTERED_MODEL_CREATED" + }, + { + "content": "TRANSITION_REQUEST_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_ARCHIVED_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_PRODUCTION_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_STAGING_CREATED" + } + ] + } + } + } + ], + "required_request_body_fields": [ + { + "name": "events", + "description": "Events that can trigger a registry webhook:\n* `MODEL_VERSION_CREATED`: A new model version was created for the associated model.\n\n* `MODEL_VERSION_TRANSITIONED_STAGE`: A model version’s stage was changed.\n\n* `TRANSITION_REQUEST_CREATED`: A user requested a model version’s stage be transitioned.\n\n* `COMMENT_CREATED`: A user wrote a comment on a registered model.\n\n* `REGISTERED_MODEL_CREATED`: A new registered model was created. This event type can only be specified for a registry-wide webhook, which can be created by not specifying a model name in the create request.\n\n* `MODEL_VERSION_TAG_SET`: A user set a tag on the model version.\n\n* `MODEL_VERSION_TRANSITIONED_TO_STAGING`: A model version was transitioned to staging.\n\n* `MODEL_VERSION_TRANSITIONED_TO_PRODUCTION`: A model version was transitioned to production.\n\n* `MODEL_VERSION_TRANSITIONED_TO_ARCHIVED`: A model version was archived.\n\n* `TRANSITION_REQUEST_TO_STAGING_CREATED`: A user requested a model version be transitioned to staging.\n\n* `TRANSITION_REQUEST_TO_PRODUCTION_CREATED`: A user requested a model version be transitioned to production.\n\n* `TRANSITION_REQUEST_TO_ARCHIVED_CREATED`: A user requested a model version be archived.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RegistryWebhookEventList", + "array_value": { + "pascal_name": "RegistryWebhookEvent", + "enum": [ + { + "content": "COMMENT_CREATED" + }, + { + "content": "MODEL_VERSION_CREATED" + }, + { + "content": "MODEL_VERSION_TAG_SET" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_STAGE" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_ARCHIVED" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_PRODUCTION" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_STAGING" + }, + { + "content": "REGISTERED_MODEL_CREATED" + }, + { + "content": "TRANSITION_REQUEST_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_ARCHIVED_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_PRODUCTION_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_STAGING_CREATED" + } + ] + } + } + } + ] + }, + "response": { + "pascal_name": "CreateWebhookResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "description", + "description": "User-specified description for the webhook.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "events", + "description": "Events that can trigger a registry webhook:\n* `MODEL_VERSION_CREATED`: A new model version was created for the associated model.\n\n* `MODEL_VERSION_TRANSITIONED_STAGE`: A model version’s stage was changed.\n\n* `TRANSITION_REQUEST_CREATED`: A user requested a model version’s stage be transitioned.\n\n* `COMMENT_CREATED`: A user wrote a comment on a registered model.\n\n* `REGISTERED_MODEL_CREATED`: A new registered model was created. This event type can only be specified for a registry-wide webhook, which can be created by not specifying a model name in the create request.\n\n* `MODEL_VERSION_TAG_SET`: A user set a tag on the model version.\n\n* `MODEL_VERSION_TRANSITIONED_TO_STAGING`: A model version was transitioned to staging.\n\n* `MODEL_VERSION_TRANSITIONED_TO_PRODUCTION`: A model version was transitioned to production.\n\n* `MODEL_VERSION_TRANSITIONED_TO_ARCHIVED`: A model version was archived.\n\n* `TRANSITION_REQUEST_TO_STAGING_CREATED`: A user requested a model version be transitioned to staging.\n\n* `TRANSITION_REQUEST_TO_PRODUCTION_CREATED`: A user requested a model version be transitioned to production.\n\n* `TRANSITION_REQUEST_TO_ARCHIVED_CREATED`: A user requested a model version be archived.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RegistryWebhookEventList", + "array_value": { + "pascal_name": "RegistryWebhookEvent", + "enum": [ + { + "content": "COMMENT_CREATED" + }, + { + "content": "MODEL_VERSION_CREATED" + }, + { + "content": "MODEL_VERSION_TAG_SET" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_STAGE" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_ARCHIVED" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_PRODUCTION" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_STAGING" + }, + { + "content": "REGISTERED_MODEL_CREATED" + }, + { + "content": "TRANSITION_REQUEST_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_ARCHIVED_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_PRODUCTION_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_STAGING_CREATED" + } + ] + } + } + }, + { + "name": "http_url_spec", + "description": "External HTTPS URL called on event trigger (by using a POST request).", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "HttpUrlSpec", + "is_object": true + } + }, + { + "name": "job_spec", + "description": "ID of the job that the webhook runs.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "JobSpec", + "is_object": true + } + }, + { + "name": "model_name", + "description": "If model name is not specified, a registry-wide webhook is created that listens for the specified events across all versions of all registered models.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Enable or disable triggering the webhook, or put the webhook into test mode. The default is `ACTIVE`:\n* `ACTIVE`: Webhook is triggered when an associated event happens.\n\n* `DISABLED`: Webhook is not triggered.\n\n* `TEST_MODE`: Webhook can be triggered through the test endpoint, but is not triggered on a real event.", + "is_request_body_field": true, + "entity": { + "pascal_name": "RegistryWebhookStatus", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "DISABLED" + }, + { + "content": "TEST_MODE" + } + ] + } + } + ] + }, + { + "name": "DeleteComment", + "description": "Deletes a comment on a model version.", + "summary": "Delete a comment.", + "path": "/api/2.0/mlflow/comments/delete", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteCommentRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique identifier of an activity", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique identifier of an activity", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteCommentResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique identifier of an activity", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique identifier of an activity", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteModel", + "description": "Deletes a registered model.", + "summary": "Delete a model.", + "path": "/api/2.0/mlflow/registered-models/delete", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteModelRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteModelResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteModelTag", + "description": "Deletes the tag for a registered model.", + "summary": "Delete a model tag.", + "path": "/api/2.0/mlflow/registered-models/delete-tag", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteModelTagRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the registered model that the tag was logged under.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. The name must be an exact match; wild-card deletion is not supported. Maximum size is 250 bytes.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the registered model that the tag was logged under.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. The name must be an exact match; wild-card deletion is not supported. Maximum size is 250 bytes.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteModelTagResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "key", + "description": "Name of the tag. The name must be an exact match; wild-card deletion is not supported. Maximum size is 250 bytes.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the registered model that the tag was logged under.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the registered model that the tag was logged under.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. The name must be an exact match; wild-card deletion is not supported. Maximum size is 250 bytes.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteModelVersion", + "description": "Deletes a model version.", + "summary": "Delete a model version.", + "path": "/api/2.0/mlflow/model-versions/delete", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteModelVersionRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteModelVersionResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteModelVersionTag", + "description": "Deletes a model version tag.", + "summary": "Delete a model version tag.", + "path": "/api/2.0/mlflow/model-versions/delete-tag", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteModelVersionTagRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the registered model that the tag was logged under.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number that the tag was logged under.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. The name must be an exact match; wild-card deletion is not supported. Maximum size is 250 bytes.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the registered model that the tag was logged under.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number that the tag was logged under.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. The name must be an exact match; wild-card deletion is not supported. Maximum size is 250 bytes.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteModelVersionTagResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "key", + "description": "Name of the tag. The name must be an exact match; wild-card deletion is not supported. Maximum size is 250 bytes.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the registered model that the tag was logged under.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number that the tag was logged under.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the registered model that the tag was logged under.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number that the tag was logged under.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. The name must be an exact match; wild-card deletion is not supported. Maximum size is 250 bytes.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteTransitionRequest", + "description": "Cancels a model version stage transition request.", + "summary": "Delete a transition request.", + "path": "/api/2.0/mlflow/transition-requests/delete", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteTransitionRequestRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition request. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "creator", + "description": "Username of the user who created this request. Of the transition requests matching the specified details, only the one transition created by this user will be deleted.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition request. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "creator", + "description": "Username of the user who created this request. Of the transition requests matching the specified details, only the one transition created by this user will be deleted.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteTransitionRequestResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "User-provided comment on the action.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "creator", + "description": "Username of the user who created this request. Of the transition requests matching the specified details, only the one transition created by this user will be deleted.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition request. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition request. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "creator", + "description": "Username of the user who created this request. Of the transition requests matching the specified details, only the one transition created by this user will be deleted.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteWebhook", + "description": "**NOTE:** This endpoint is in Public Preview.\nDeletes a registry webhook.", + "summary": "Delete a webhook.", + "path": "/api/2.0/mlflow/registry-webhooks/delete", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteWebhookRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Webhook ID required to delete a registry webhook.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Webhook ID required to delete a registry webhook.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteWebhookResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Webhook ID required to delete a registry webhook.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Webhook ID required to delete a registry webhook.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetLatestVersions", + "description": "Gets the latest version of a registered model.", + "summary": "Get the latest version.", + "path": "/api/2.0/mlflow/registered-models/get-latest-versions", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetLatestVersionsRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetLatestVersionsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stages", + "description": "List of stages.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "pagination": {} + }, + { + "name": "GetModel", + "description": "Get the details of a model.\nThis is a Databricks workspace version of the [MLflow endpoint](https://www.mlflow.org/docs/latest/rest-api.html#get-registeredmodel)\nthat also returns the model's Databricks workspace ID and the permission level of the requesting user on the model.", + "summary": "Get model.", + "path": "/api/2.0/mlflow/databricks/registered-models/get", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetModelRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetModelResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetModelVersion", + "description": "Get a model version.", + "summary": "Get a model version.", + "path": "/api/2.0/mlflow/model-versions/get", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetModelVersionRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetModelVersionResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetModelVersionDownloadUri", + "description": "Gets a URI to download the model version.", + "summary": "Get a model version URI.", + "path": "/api/2.0/mlflow/model-versions/get-download-uri", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetModelVersionDownloadUriRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetModelVersionDownloadUriResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get registered model permission levels.", + "path": "/api/2.0/permissions/registered-models/{registered_model_id}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetRegisteredModelPermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetRegisteredModelPermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of a registered model. Registered models can inherit permissions from their root object.", + "summary": "Get registered model permissions.", + "path": "/api/2.0/permissions/registered-models/{registered_model_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetRegisteredModelPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RegisteredModelPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListModels", + "description": "Lists all available registered models, up to the limit specified in __max_results__.", + "summary": "List models.", + "path": "/api/2.0/mlflow/registered-models/list", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListModelsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListModelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "max_results", + "description": "Maximum number of registered models desired. Max threshold is 1000.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListTransitionRequests", + "description": "Gets a list of all open stage transition requests for the model version.", + "summary": "List transition requests.", + "path": "/api/2.0/mlflow/transition-requests/list", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListTransitionRequestsRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the registered model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the registered model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListTransitionRequestsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the registered model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the registered model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": {} + }, + { + "name": "ListWebhooks", + "description": "**NOTE:** This endpoint is in Public Preview.\nLists all registry webhooks.", + "summary": "List registry webhooks.", + "path": "/api/2.0/mlflow/registry-webhooks/list", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListWebhooksRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListRegistryWebhooks", + "is_object": true + }, + "all_fields": [ + { + "name": "events", + "description": "Events that trigger the webhook.\n* `MODEL_VERSION_CREATED`: A new model version was created for the associated model.\n\n* `MODEL_VERSION_TRANSITIONED_STAGE`: A model version’s stage was changed.\n\n* `TRANSITION_REQUEST_CREATED`: A user requested a model version’s stage be transitioned.\n\n* `COMMENT_CREATED`: A user wrote a comment on a registered model.\n\n* `REGISTERED_MODEL_CREATED`: A new registered model was created. This event type can only be specified for a registry-wide webhook, which can be created by not specifying a model name in the create request.\n\n* `MODEL_VERSION_TAG_SET`: A user set a tag on the model version.\n\n* `MODEL_VERSION_TRANSITIONED_TO_STAGING`: A model version was transitioned to staging.\n\n* `MODEL_VERSION_TRANSITIONED_TO_PRODUCTION`: A model version was transitioned to production.\n\n* `MODEL_VERSION_TRANSITIONED_TO_ARCHIVED`: A model version was archived.\n\n* `TRANSITION_REQUEST_TO_STAGING_CREATED`: A user requested a model version be transitioned to staging.\n\n* `TRANSITION_REQUEST_TO_PRODUCTION_CREATED`: A user requested a model version be transitioned to production.\n\n* `TRANSITION_REQUEST_TO_ARCHIVED_CREATED`: A user requested a model version be archived.\n\nIf `events` is specified, any webhook with one or more of the specified trigger events is included in the output.\nIf `events` is not specified, webhooks of all event types are included in the output.", + "is_query": true, + "entity": { + "pascal_name": "RegistryWebhookEventList", + "array_value": { + "pascal_name": "RegistryWebhookEvent", + "enum": [ + { + "content": "COMMENT_CREATED" + }, + { + "content": "MODEL_VERSION_CREATED" + }, + { + "content": "MODEL_VERSION_TAG_SET" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_STAGE" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_ARCHIVED" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_PRODUCTION" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_STAGING" + }, + { + "content": "REGISTERED_MODEL_CREATED" + }, + { + "content": "TRANSITION_REQUEST_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_ARCHIVED_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_PRODUCTION_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_STAGING_CREATED" + } + ] + } + } + }, + { + "name": "max_results", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "model_name", + "description": "Registered model name\nIf not specified, all webhooks associated with the specified events are listed, regardless of their associated model.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_token", + "description": "Token indicating the page of artifact results to fetch", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Token indicating the page of artifact results to fetch", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "RejectTransitionRequest", + "description": "Rejects a model version stage transition request.", + "summary": "Reject a transition request.", + "path": "/api/2.0/mlflow/transition-requests/reject", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RejectTransitionRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RejectTransitionRequestResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "User-provided comment on the action.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "RenameModel", + "description": "Renames a registered model.", + "summary": "Rename a model.", + "path": "/api/2.0/mlflow/registered-models/rename", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RenameModelRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RenameModelResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "new_name", + "description": "If provided, updates the name for this `registered_model`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SearchModelVersions", + "description": "Searches for specific model versions based on the supplied __filter__.", + "summary": "Search model versions.", + "path": "/api/2.0/mlflow/model-versions/search", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SearchModelVersionsRequest", + "is_object": true + }, + "response": { + "pascal_name": "SearchModelVersionsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter", + "description": "String filter condition, like \"name='my-model-name'\". Must be a single boolean condition,\nwith string values wrapped in single quotes.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_results", + "description": "Maximum number of models desired. Max threshold is 10K.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "order_by", + "description": "List of columns to be ordered by including model name, version, stage with an\noptional \"DESC\" or \"ASC\" annotation, where \"ASC\" is the default.\nTiebreaks are done by latest stage transition timestamp, followed by name ASC, followed by\nversion DESC.", + "is_query": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "page_token", + "description": "Pagination token to go to next page based on previous search query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to next page based on previous search query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "SearchModels", + "description": "Search for registered models based on the specified __filter__.", + "summary": "Search models.", + "path": "/api/2.0/mlflow/registered-models/search", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SearchModelsRequest", + "is_object": true + }, + "response": { + "pascal_name": "SearchModelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter", + "description": "String filter condition, like \"name LIKE 'my-model-name'\".\nInterpreted in the backend automatically as \"name LIKE '%my-model-name%'\".\nSingle boolean condition, with string values wrapped in single quotes.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_results", + "description": "Maximum number of models desired. Default is 100. Max threshold is 1000.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "order_by", + "description": "List of columns for ordering search results, which can include model name and last updated\ntimestamp with an optional \"DESC\" or \"ASC\" annotation, where \"ASC\" is the default.\nTiebreaks are done by model name ASC.", + "is_query": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous search query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page based on a previous search query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "SetModelTag", + "description": "Sets a tag on a registered model.", + "summary": "Set a tag.", + "path": "/api/2.0/mlflow/registered-models/set-tag", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SetModelTagRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Unique name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. Maximum size depends on storage backend.\nIf a tag with this name already exists, its preexisting value will be replaced by the specified `value`.\nAll storage backends are guaranteed to support key values up to 250 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Maximum size depends on storage backend.\nAll storage backends are guaranteed to support key values up to 5000 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Unique name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. Maximum size depends on storage backend.\nIf a tag with this name already exists, its preexisting value will be replaced by the specified `value`.\nAll storage backends are guaranteed to support key values up to 250 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Maximum size depends on storage backend.\nAll storage backends are guaranteed to support key values up to 5000 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SetModelTagResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "key", + "description": "Name of the tag. Maximum size depends on storage backend.\nIf a tag with this name already exists, its preexisting value will be replaced by the specified `value`.\nAll storage backends are guaranteed to support key values up to 250 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Unique name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Maximum size depends on storage backend.\nAll storage backends are guaranteed to support key values up to 5000 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Unique name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. Maximum size depends on storage backend.\nIf a tag with this name already exists, its preexisting value will be replaced by the specified `value`.\nAll storage backends are guaranteed to support key values up to 250 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Maximum size depends on storage backend.\nAll storage backends are guaranteed to support key values up to 5000 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SetModelVersionTag", + "description": "Sets a model version tag.", + "summary": "Set a version tag.", + "path": "/api/2.0/mlflow/model-versions/set-tag", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SetModelVersionTagRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Unique name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. Maximum size depends on storage backend.\nIf a tag with this name already exists, its preexisting value will be replaced by the specified `value`.\nAll storage backends are guaranteed to support key values up to 250 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Maximum size depends on storage backend.\nAll storage backends are guaranteed to support key values up to 5000 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Unique name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. Maximum size depends on storage backend.\nIf a tag with this name already exists, its preexisting value will be replaced by the specified `value`.\nAll storage backends are guaranteed to support key values up to 250 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Maximum size depends on storage backend.\nAll storage backends are guaranteed to support key values up to 5000 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SetModelVersionTagResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "key", + "description": "Name of the tag. Maximum size depends on storage backend.\nIf a tag with this name already exists, its preexisting value will be replaced by the specified `value`.\nAll storage backends are guaranteed to support key values up to 250 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Unique name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Maximum size depends on storage backend.\nAll storage backends are guaranteed to support key values up to 5000 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Unique name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the tag. Maximum size depends on storage backend.\nIf a tag with this name already exists, its preexisting value will be replaced by the specified `value`.\nAll storage backends are guaranteed to support key values up to 250 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "String value of the tag being logged. Maximum size depends on storage backend.\nAll storage backends are guaranteed to support key values up to 5000 bytes in size.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set registered model permissions.", + "path": "/api/2.0/permissions/registered-models/{registered_model_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RegisteredModelPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RegisteredModelPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "RegisteredModelAccessControlRequestList", + "array_value": { + "pascal_name": "RegisteredModelAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "TestRegistryWebhook", + "description": "**NOTE:** This endpoint is in Public Preview.\nTests a registry webhook.", + "summary": "Test a webhook.", + "path": "/api/2.0/mlflow/registry-webhooks/test", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "TestRegistryWebhookRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "description": "Webhook ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "id", + "description": "Webhook ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "TestRegistryWebhookResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "event", + "description": "If `event` is specified, the test trigger uses the specified event. If `event` is not specified, the test trigger uses a randomly chosen event associated with the webhook.", + "is_request_body_field": true, + "entity": { + "pascal_name": "RegistryWebhookEvent", + "enum": [ + { + "content": "COMMENT_CREATED" + }, + { + "content": "MODEL_VERSION_CREATED" + }, + { + "content": "MODEL_VERSION_TAG_SET" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_STAGE" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_ARCHIVED" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_PRODUCTION" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_STAGING" + }, + { + "content": "REGISTERED_MODEL_CREATED" + }, + { + "content": "TRANSITION_REQUEST_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_ARCHIVED_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_PRODUCTION_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_STAGING_CREATED" + } + ] + } + }, + { + "name": "id", + "description": "Webhook ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Webhook ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "TransitionStage", + "description": "Transition a model version's stage.\nThis is a Databricks workspace version of the [MLflow endpoint](https://www.mlflow.org/docs/latest/rest-api.html#transition-modelversion-stage)\nthat also accepts a comment associated with the transition to be recorded.", + "summary": "Transition a stage.", + "path": "/api/2.0/mlflow/databricks/model-versions/transition-stage", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "TransitionModelVersionStageDatabricks", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "archive_existing_versions", + "description": "Specifies whether to archive all current model versions in the target stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "archive_existing_versions", + "description": "Specifies whether to archive all current model versions in the target stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ] + }, + "response": { + "pascal_name": "TransitionStageResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "archive_existing_versions", + "description": "Specifies whether to archive all current model versions in the target stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "comment", + "description": "User-provided comment on the action.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Version of the model.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "stage", + "description": "Target stage of the transition. Valid values are:\n\n* `None`: The initial stage of a model version.\n\n* `Staging`: Staging or pre-production stage.\n\n* `Production`: Production stage.\n\n* `Archived`: Archived stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "archive_existing_versions", + "description": "Specifies whether to archive all current model versions in the target stage.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ] + }, + { + "name": "UpdateComment", + "description": "Post an edit to a comment on a model version.", + "summary": "Update a comment.", + "path": "/api/2.0/mlflow/comments/update", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateComment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "description": "Unique identifier of an activity", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "User-provided comment on the action.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "id", + "description": "Unique identifier of an activity", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "User-provided comment on the action.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateCommentResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "User-provided comment on the action.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Unique identifier of an activity", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique identifier of an activity", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "User-provided comment on the action.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateModel", + "description": "Updates a registered model.", + "summary": "Update model.", + "path": "/api/2.0/mlflow/registered-models/update", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateModelRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateModelResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "description", + "description": "If provided, updates the description for this `registered_model`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Registered model unique name identifier.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateModelVersion", + "description": "Updates the model version.", + "summary": "Update model version.", + "path": "/api/2.0/mlflow/model-versions/update", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateModelVersionRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateModelVersionResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "description", + "description": "If provided, updates the description for this `registered_model`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the registered model", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "Model version number", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on a registered model. Registered models can inherit permissions from their root object.", + "summary": "Update registered model permissions.", + "path": "/api/2.0/permissions/registered-models/{registered_model_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RegisteredModelPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RegisteredModelPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "RegisteredModelAccessControlRequestList", + "array_value": { + "pascal_name": "RegisteredModelAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "registered_model_id", + "description": "The registered model for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateWebhook", + "description": "**NOTE:** This endpoint is in Public Preview.\nUpdates a registry webhook.", + "summary": "Update a webhook.", + "path": "/api/2.0/mlflow/registry-webhooks/update", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateRegistryWebhook", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "description": "Webhook ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "id", + "description": "Webhook ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateWebhookResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "description", + "description": "User-specified description for the webhook.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "events", + "description": "Events that can trigger a registry webhook:\n* `MODEL_VERSION_CREATED`: A new model version was created for the associated model.\n\n* `MODEL_VERSION_TRANSITIONED_STAGE`: A model version’s stage was changed.\n\n* `TRANSITION_REQUEST_CREATED`: A user requested a model version’s stage be transitioned.\n\n* `COMMENT_CREATED`: A user wrote a comment on a registered model.\n\n* `REGISTERED_MODEL_CREATED`: A new registered model was created. This event type can only be specified for a registry-wide webhook, which can be created by not specifying a model name in the create request.\n\n* `MODEL_VERSION_TAG_SET`: A user set a tag on the model version.\n\n* `MODEL_VERSION_TRANSITIONED_TO_STAGING`: A model version was transitioned to staging.\n\n* `MODEL_VERSION_TRANSITIONED_TO_PRODUCTION`: A model version was transitioned to production.\n\n* `MODEL_VERSION_TRANSITIONED_TO_ARCHIVED`: A model version was archived.\n\n* `TRANSITION_REQUEST_TO_STAGING_CREATED`: A user requested a model version be transitioned to staging.\n\n* `TRANSITION_REQUEST_TO_PRODUCTION_CREATED`: A user requested a model version be transitioned to production.\n\n* `TRANSITION_REQUEST_TO_ARCHIVED_CREATED`: A user requested a model version be archived.", + "is_request_body_field": true, + "entity": { + "pascal_name": "RegistryWebhookEventList", + "array_value": { + "pascal_name": "RegistryWebhookEvent", + "enum": [ + { + "content": "COMMENT_CREATED" + }, + { + "content": "MODEL_VERSION_CREATED" + }, + { + "content": "MODEL_VERSION_TAG_SET" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_STAGE" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_ARCHIVED" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_PRODUCTION" + }, + { + "content": "MODEL_VERSION_TRANSITIONED_TO_STAGING" + }, + { + "content": "REGISTERED_MODEL_CREATED" + }, + { + "content": "TRANSITION_REQUEST_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_ARCHIVED_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_PRODUCTION_CREATED" + }, + { + "content": "TRANSITION_REQUEST_TO_STAGING_CREATED" + } + ] + } + } + }, + { + "name": "http_url_spec", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "HttpUrlSpec", + "is_object": true + } + }, + { + "name": "id", + "description": "Webhook ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "job_spec", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "JobSpec", + "is_object": true + } + }, + { + "name": "status", + "is_request_body_field": true, + "entity": { + "pascal_name": "RegistryWebhookStatus", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "DISABLED" + }, + { + "content": "TEST_MODE" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Webhook ID", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.ModelVersions", + "name": "ModelVersions", + "description": "Databricks provides a hosted version of MLflow Model Registry in Unity Catalog.\nModels in Unity Catalog provide centralized access control, auditing, lineage, and discovery of\nML models across Databricks workspaces.\n\nThis API reference documents the REST endpoints for managing model versions in Unity Catalog. For\nmore details, see the [registered models API docs](/api/workspace/registeredmodels).", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListModelVersionsRequest" + } + }, + "methods": [ + { + "name": "Delete", + "description": "Deletes a model version from the specified registered model. Any aliases assigned to the\nmodel version will also be deleted.\n\nThe caller must be a metastore admin or an owner of the parent registered model.\nFor the latter case, the caller must also be the owner or have the **USE_CATALOG**\nprivilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema.", + "summary": "Delete a Model Version.", + "path": "/api/2.1/unity-catalog/models/{full_name}/versions/{version}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteModelVersionRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the model version", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "The integer version number of the model version", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the model version", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "The integer version number of the model version", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the model version", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "The integer version number of the model version", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the model version", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "The integer version number of the model version", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + } + ] + }, + { + "name": "Get", + "description": "Get a model version.\n\nThe caller must be a metastore admin or an owner of (or have the **EXECUTE**\nprivilege on) the parent registered model. For the latter case, the caller must also be the owner\nor have the **USE_CATALOG** privilege on the parent catalog and the **USE_SCHEMA** privilege\non the parent schema.", + "summary": "Get a Model Version.", + "path": "/api/2.1/unity-catalog/models/{full_name}/versions/{version}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetModelVersionRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the model version", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "The integer version number of the model version", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the model version", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "The integer version number of the model version", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + } + ] + }, + "response": { + "pascal_name": "ModelVersionInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the model version", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "include_aliases", + "description": "Whether to include aliases associated with the model version in the response", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "include_browse", + "description": "Whether to include model versions in the response for which the principal can only access selective metadata for", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "version", + "description": "The integer version number of the model version", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the model version", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "The integer version number of the model version", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + } + ] + }, + { + "name": "GetByAlias", + "description": "Get a model version by alias.\n\nThe caller must be a metastore admin or an owner of (or have the **EXECUTE**\nprivilege on) the registered model. For the latter case, the caller must also be the owner\nor have the **USE_CATALOG** privilege on the parent catalog and the **USE_SCHEMA** privilege\non the parent schema.", + "summary": "Get Model Version By Alias.", + "path": "/api/2.1/unity-catalog/models/{full_name}/aliases/{alias}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetByAliasRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "alias", + "description": "The name of the alias", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "alias", + "description": "The name of the alias", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ModelVersionInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "alias", + "description": "The name of the alias", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "include_aliases", + "description": "Whether to include aliases associated with the model version in the response", + "is_query": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "alias", + "description": "The name of the alias", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List the model versions of the specified registered model, identified by its\nfull three-level name (catalog.schema.model).\n\nThe returned models are filtered based on the privileges of the calling user.\nFor example, the metastore admin is able to list all the model versions.\nA regular user needs to be the owner or have the **EXECUTE** privilege\non the parent registered model to receive the model versions in the response.\nFor the latter case, the caller must also be the owner or have the **USE_CATALOG**\nprivilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema.\n\nThere is no guarantee of a specific ordering of the elements in the response. The\nelements in the response will not contain any aliases or tags.\n\nPAGINATION BEHAVIOR: The API is by default paginated, a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List Model Versions.", + "path": "/api/2.1/unity-catalog/models/{full_name}/versions", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListModelVersionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "The full three-level name of the registered model under which to list model versions", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "The full three-level name of the registered model under which to list model versions", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListModelVersionsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "The full three-level name of the registered model under which to list model versions", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "include_browse", + "description": "Whether to include model versions in the response for which the principal can only access selective metadata for", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "max_results", + "description": "Maximum number of model versions to return.\nIf not set, the page length is set to a server configured value (100, as of 1/3/2024).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value(1000, as of 1/3/2024);\n- when set to 0, the page length is set to a server configured value (100, as of 1/3/2024) (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "The full three-level name of the registered model under which to list model versions", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Updates the specified model version.\n\nThe caller must be a metastore admin or an owner of the parent registered model.\nFor the latter case, the caller must also be the owner or have the **USE_CATALOG**\nprivilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema.\n\nCurrently only the comment of the model version can be updated.", + "summary": "Update a Model Version.", + "path": "/api/2.1/unity-catalog/models/{full_name}/versions/{version}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateModelVersionRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the model version", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "The integer version number of the model version", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the model version", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "The integer version number of the model version", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + } + ] + }, + "response": { + "pascal_name": "ModelVersionInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "aliases", + "description": "List of aliases associated with the model version", + "is_request_body_field": true, + "entity": { + "pascal_name": "RegisteredModelAliasList", + "array_value": { + "pascal_name": "RegisteredModelAlias", + "is_object": true + } + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog containing the model version", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "The comment attached to the model version", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "created_at", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "created_by", + "description": "The identifier of the user who created the model version", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the model version", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "The unique identifier of the model version", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "The unique identifier of the metastore containing the model version", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "model_name", + "description": "The name of the parent registered model of the model version, relative to parent schema", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "model_version_dependencies", + "description": "Model version dependencies, for feature-store packaged models", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DependencyList", + "is_object": true + } + }, + { + "name": "run_id", + "description": "MLflow run ID used when creating the model version, if ``source`` was generated by an\nexperiment run stored in an MLflow tracking server", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_workspace_id", + "description": "ID of the Databricks workspace containing the MLflow run that generated this model\nversion, if applicable", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema containing the model version, relative to parent catalog", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "URI indicating the location of the source artifacts (files) for the model version", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "Current status of the model version. Newly created model versions start in\nPENDING_REGISTRATION status, then move to READY status once the model version files are uploaded and\nthe model version is finalized. Only model versions in READY status can be loaded for inference or\nserved.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ModelVersionInfoStatus", + "enum": [ + { + "content": "FAILED_REGISTRATION" + }, + { + "content": "MODEL_VERSION_STATUS_UNKNOWN" + }, + { + "content": "PENDING_REGISTRATION" + }, + { + "content": "READY" + } + ] + } + }, + { + "name": "storage_location", + "description": "The storage location on the cloud under which model version data files are stored", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "updated_at", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "updated_by", + "description": "The identifier of the user who updated the model version last time", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "The integer version number of the model version", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the model version", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "The integer version number of the model version", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + } + ] + } + ] + }, + { + "id": "settings.NetworkConnectivity", + "name": "NetworkConnectivity", + "description": "These APIs provide configurations for the network connectivity of your workspaces for serverless compute resources. This API provides stable subnets for your workspace so that you can configure your firewalls on your Azure Storage accounts to allow access from Databricks. You can also use the API to provision private endpoints for Databricks to privately connect serverless compute resources to your Azure resources using Azure Private Link. See [configure serverless secure connectivity](https://learn.microsoft.com/azure/databricks/security/network/serverless-network-security).", + "package": { + "name": "settings" + }, + "is_accounts": true, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "CreateNetworkConnectivityConfiguration", + "description": "Creates a network connectivity configuration (NCC), which provides stable Azure service\nsubnets when accessing your Azure Storage accounts. You can also use a network connectivity configuration to create\nDatabricks managed private endpoints so that Databricks serverless compute resources privately access your\nresources.\n\n**IMPORTANT**: After you create the network connectivity configuration, you must assign one or more workspaces to the new network connectivity configuration.\nYou can share one network connectivity configuration with multiple workspaces from the same Azure region within\nthe same Databricks account.\nSee [configure serverless secure connectivity](https://learn.microsoft.com/azure/databricks/security/network/serverless-network-security).", + "summary": "Create a network connectivity configuration.", + "path": "/api/2.0/accounts/{account_id}/network-connectivity-configs", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateNetworkConnectivityConfigRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "network_connectivity_config", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateNetworkConnectivityConfiguration", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "network_connectivity_config", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateNetworkConnectivityConfiguration", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "network_connectivity_config", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateNetworkConnectivityConfiguration", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the network connectivity configuration. The name can contain alphanumeric characters, hyphens,\nand underscores. The length must be between 3 and 30 characters. The name must match the regular\nexpression ^[0-9a-zA-Z-_]{3,30}$", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The region for the network connectivity configuration.\nOnly workspaces in the same region can be attached to the network connectivity configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the network connectivity configuration. The name can contain alphanumeric characters, hyphens,\nand underscores. The length must be between 3 and 30 characters. The name must match the regular\nexpression ^[0-9a-zA-Z-_]{3,30}$", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The region for the network connectivity configuration.\nOnly workspaces in the same region can be attached to the network connectivity configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "NetworkConnectivityConfiguration", + "is_object": true + }, + "all_fields": [ + { + "name": "network_connectivity_config", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateNetworkConnectivityConfiguration", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the network connectivity configuration. The name can contain alphanumeric characters, hyphens,\nand underscores. The length must be between 3 and 30 characters. The name must match the regular\nexpression ^[0-9a-zA-Z-_]{3,30}$", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The region for the network connectivity configuration.\nOnly workspaces in the same region can be attached to the network connectivity configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the network connectivity configuration. The name can contain alphanumeric characters, hyphens,\nand underscores. The length must be between 3 and 30 characters. The name must match the regular\nexpression ^[0-9a-zA-Z-_]{3,30}$", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The region for the network connectivity configuration.\nOnly workspaces in the same region can be attached to the network connectivity configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "name", + "description": "The name of the network connectivity configuration. The name can contain alphanumeric characters, hyphens,\nand underscores. The length must be between 3 and 30 characters. The name must match the regular\nexpression ^[0-9a-zA-Z-_]{3,30}$", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The region for the network connectivity configuration.\nOnly workspaces in the same region can be attached to the network connectivity configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the network connectivity configuration. The name can contain alphanumeric characters, hyphens,\nand underscores. The length must be between 3 and 30 characters. The name must match the regular\nexpression ^[0-9a-zA-Z-_]{3,30}$", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "region", + "description": "The region for the network connectivity configuration.\nOnly workspaces in the same region can be attached to the network connectivity configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreatePrivateEndpointRule", + "description": "Create a private endpoint rule for the specified network connectivity config object.\nOnce the object is created, Databricks asynchronously provisions a new Azure private endpoint to your\nspecified Azure resource.\n\n**IMPORTANT**: You must use Azure portal or other Azure tools to approve the private endpoint to complete the\nconnection. To get the information of the private endpoint created, make a `GET` request on the new private\nendpoint rule. See [serverless private link](https://learn.microsoft.com/azure/databricks/security/network/serverless-network-security/serverless-private-link).", + "summary": "Create a private endpoint rule.", + "path": "/api/2.0/accounts/{account_id}/network-connectivity-configs/{network_connectivity_config_id}/private-endpoint-rules", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreatePrivateEndpointRuleRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectivity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_endpoint_rule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreatePrivateEndpointRule", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectivity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "private_endpoint_rule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreatePrivateEndpointRule", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "private_endpoint_rule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreatePrivateEndpointRule", + "is_object": true + } + }, + "response": { + "pascal_name": "NccPrivateEndpointRule", + "is_object": true + }, + "all_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectivity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_endpoint_rule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CreatePrivateEndpointRule", + "is_object": true + } + }, + { + "name": "domain_names", + "description": "Only used by private endpoints to customer-managed private endpoint services.\n\nDomain names of target private link service.\nWhen updating this field, the full list of target domain_names must be specified.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "endpoint_service", + "description": "The full target AWS endpoint service name that connects to the destination resources of the private endpoint.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "error_message", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "gcp_endpoint", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GcpEndpoint", + "is_object": true + } + }, + { + "name": "group_id", + "description": "Not used by customer-managed private endpoint services.\n\nThe sub-resource type (group ID) of the target resource.\nNote that to connect to workspace root storage (root DBFS), you need two endpoints, one for blob and one for dfs.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "resource_id", + "description": "The Azure resource ID of the target resource.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "resource_names", + "description": "Only used by private endpoints towards AWS S3 service.\n\nThe globally unique S3 bucket names that will be accessed via the VPC endpoint.\nThe bucket names must be in the same region as the NCC/endpoint service.\nWhen updating this field, we perform full update on this field. Please ensure a full list of desired\nresource_names is provided.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectivity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteNetworkConnectivityConfiguration", + "description": "Deletes a network connectivity configuration.", + "summary": "Delete a network connectivity configuration.", + "path": "/api/2.0/accounts/{account_id}/network-connectivity-configs/{network_connectivity_config_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteNetworkConnectivityConfigurationRequest", + "is_object": true, + "required_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectivity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectivity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectivity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectivity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeletePrivateEndpointRule", + "description": "Initiates deleting a private endpoint rule. If the connection state is PENDING or EXPIRED,\nthe private endpoint is immediately deleted. Otherwise, the private endpoint is deactivated\nand will be deleted after one day of deactivation. When a private endpoint is deactivated,\nthe `deactivated` field is set to `true` and the private endpoint is not\navailable to your serverless compute resources.", + "summary": "Delete a private endpoint rule.", + "path": "/api/2.0/accounts/{account_id}/network-connectivity-configs/{network_connectivity_config_id}/private-endpoint-rules/{private_endpoint_rule_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeletePrivateEndpointRuleRequest", + "is_object": true, + "required_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectvity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_endpoint_rule_id", + "description": "Your private endpoint rule ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectvity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_endpoint_rule_id", + "description": "Your private endpoint rule ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "NccPrivateEndpointRule", + "is_object": true + }, + "all_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectvity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_endpoint_rule_id", + "description": "Your private endpoint rule ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectvity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_endpoint_rule_id", + "description": "Your private endpoint rule ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetNetworkConnectivityConfiguration", + "description": "Gets a network connectivity configuration.", + "summary": "Get a network connectivity configuration.", + "path": "/api/2.0/accounts/{account_id}/network-connectivity-configs/{network_connectivity_config_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetNetworkConnectivityConfigurationRequest", + "is_object": true, + "required_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectivity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectivity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "NetworkConnectivityConfiguration", + "is_object": true + }, + "all_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectivity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectivity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPrivateEndpointRule", + "description": "Gets the private endpoint rule.", + "summary": "Gets a private endpoint rule.", + "path": "/api/2.0/accounts/{account_id}/network-connectivity-configs/{network_connectivity_config_id}/private-endpoint-rules/{private_endpoint_rule_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetPrivateEndpointRuleRequest", + "is_object": true, + "required_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectvity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_endpoint_rule_id", + "description": "Your private endpoint rule ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectvity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_endpoint_rule_id", + "description": "Your private endpoint rule ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "NccPrivateEndpointRule", + "is_object": true + }, + "all_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectvity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_endpoint_rule_id", + "description": "Your private endpoint rule ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectvity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_endpoint_rule_id", + "description": "Your private endpoint rule ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListNetworkConnectivityConfigurations", + "description": "Gets an array of network connectivity configurations.", + "summary": "List network connectivity configurations.", + "path": "/api/2.0/accounts/{account_id}/network-connectivity-configs", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListNetworkConnectivityConfigurationsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListNetworkConnectivityConfigurationsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_token", + "description": "Pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListPrivateEndpointRules", + "description": "Gets an array of private endpoint rules.", + "summary": "List private endpoint rules.", + "path": "/api/2.0/accounts/{account_id}/network-connectivity-configs/{network_connectivity_config_id}/private-endpoint-rules", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListPrivateEndpointRulesRequest", + "is_object": true, + "required_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectvity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectvity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListPrivateEndpointRulesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectvity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "network_connectivity_config_id", + "description": "Your Network Connectvity Configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdatePrivateEndpointRule", + "description": "Updates a private endpoint rule. Currently only a private endpoint rule to customer-managed resources is allowed to be updated.", + "summary": "Update a private endpoint rule.", + "path": "/api/2.0/accounts/{account_id}/network-connectivity-configs/{network_connectivity_config_id}/private-endpoint-rules/{private_endpoint_rule_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateNccPrivateEndpointRuleRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "network_connectivity_config_id", + "description": "The ID of a network connectivity configuration, which is the parent resource of this private endpoint rule object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_endpoint_rule_id", + "description": "Your private endpoint rule ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_endpoint_rule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UpdatePrivateEndpointRule", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "network_connectivity_config_id", + "description": "The ID of a network connectivity configuration, which is the parent resource of this private endpoint rule object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_endpoint_rule_id", + "description": "Your private endpoint rule ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "private_endpoint_rule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UpdatePrivateEndpointRule", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "private_endpoint_rule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UpdatePrivateEndpointRule", + "is_object": true + } + }, + "response": { + "pascal_name": "NccPrivateEndpointRule", + "is_object": true + }, + "all_fields": [ + { + "name": "network_connectivity_config_id", + "description": "The ID of a network connectivity configuration, which is the parent resource of this private endpoint rule object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_endpoint_rule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UpdatePrivateEndpointRule", + "is_object": true + } + }, + { + "name": "private_endpoint_rule_id", + "description": "Your private endpoint rule ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "domain_names", + "description": "Only used by private endpoints to customer-managed private endpoint services.\n\nDomain names of target private link service.\nWhen updating this field, the full list of target domain_names must be specified.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "enabled", + "description": "Update this field to activate/deactivate this private endpoint to allow egress access from\nserverless compute resources. Only honored for first-party services on each cloud (e.g. AWS S3).", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "error_message", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "gcp_endpoint", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GcpEndpoint", + "is_object": true + } + }, + { + "name": "resource_names", + "description": "Only used by private endpoints towards AWS S3 service.\n\nThe globally unique S3 bucket names that will be accessed via the VPC endpoint.\nThe bucket names must be in the same region as the NCC/endpoint service.\nWhen updating this field, we perform full update on this field. Please ensure a full list of desired\nresource_names is provided.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "network_connectivity_config_id", + "description": "The ID of a network connectivity configuration, which is the parent resource of this private endpoint rule object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_endpoint_rule_id", + "description": "Your private endpoint rule ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "settings.NetworkPolicies", + "name": "NetworkPolicies", + "description": "These APIs manage network policies for this account. Network policies control which network destinations can be accessed from the Databricks environment. Each Databricks account includes a default policy named 'default-policy'. 'default-policy' is associated with any workspace lacking an explicit network policy assignment, and is automatically associated with each newly created workspace. 'default-policy' is reserved and cannot be deleted, but it can be updated to customize the default network access rules for your account.", + "package": { + "name": "settings" + }, + "is_accounts": true, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "CreateNetworkPolicyRpc", + "description": "Creates a new network policy to manage which network destinations can be accessed from the Databricks\nenvironment.", + "summary": "Create a network policy.", + "path": "/api/2.0/accounts/{account_id}/network-policies", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateNetworkPolicyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "network_policy", + "description": "Network policy configuration details.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AccountNetworkPolicy", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "network_policy", + "description": "Network policy configuration details.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AccountNetworkPolicy", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "network_policy", + "description": "Network policy configuration details.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AccountNetworkPolicy", + "is_object": true + } + }, + "response": { + "pascal_name": "AccountNetworkPolicy", + "is_object": true + }, + "all_fields": [ + { + "name": "network_policy", + "description": "Network policy configuration details.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AccountNetworkPolicy", + "is_object": true + } + }, + { + "name": "account_id", + "description": "The associated account ID for this Network Policy object.", + "is_computed": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "egress", + "description": "The network policies applying for egress traffic.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "NetworkPolicyEgress", + "is_object": true + } + }, + { + "name": "ingress", + "description": "The network policies applying for ingress traffic.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CustomerFacingIngressNetworkPolicy", + "is_object": true + } + }, + { + "name": "ingress_dry_run", + "description": "The ingress policy for dry run mode. Dry run will always run even if the request\nis allowed by the ingress policy. When this field is set, the policy will be evaluated\nand emit logs only without blocking requests.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CustomerFacingIngressNetworkPolicy", + "is_object": true + } + }, + { + "name": "network_policy_id", + "description": "The unique identifier for the network policy.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteNetworkPolicyRpc", + "description": "Deletes a network policy. Cannot be called on 'default-policy'.", + "summary": "Delete a network policy.", + "path": "/api/2.0/accounts/{account_id}/network-policies/{network_policy_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteNetworkPolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "network_policy_id", + "description": "The unique identifier of the network policy to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "network_policy_id", + "description": "The unique identifier of the network policy to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "network_policy_id", + "description": "The unique identifier of the network policy to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "network_policy_id", + "description": "The unique identifier of the network policy to delete.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetNetworkPolicyRpc", + "description": "Gets a network policy.", + "summary": "Get a network policy.", + "path": "/api/2.0/accounts/{account_id}/network-policies/{network_policy_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetNetworkPolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "network_policy_id", + "description": "The unique identifier of the network policy to retrieve.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "network_policy_id", + "description": "The unique identifier of the network policy to retrieve.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccountNetworkPolicy", + "is_object": true + }, + "all_fields": [ + { + "name": "network_policy_id", + "description": "The unique identifier of the network policy to retrieve.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "network_policy_id", + "description": "The unique identifier of the network policy to retrieve.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListNetworkPoliciesRpc", + "description": "Gets an array of network policies.", + "summary": "List network policies.", + "path": "/api/2.0/accounts/{account_id}/network-policies", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListNetworkPoliciesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListNetworkPoliciesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_token", + "description": "Pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateNetworkPolicyRpc", + "description": "Updates a network policy. This allows you to modify the configuration of a network policy.", + "summary": "Update a network policy.", + "path": "/api/2.0/accounts/{account_id}/network-policies/{network_policy_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateNetworkPolicyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "network_policy_id", + "description": "The unique identifier for the network policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "network_policy", + "description": "Updated network policy configuration details.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AccountNetworkPolicy", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "network_policy_id", + "description": "The unique identifier for the network policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "network_policy", + "description": "Updated network policy configuration details.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AccountNetworkPolicy", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "network_policy", + "description": "Updated network policy configuration details.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AccountNetworkPolicy", + "is_object": true + } + }, + "response": { + "pascal_name": "AccountNetworkPolicy", + "is_object": true + }, + "all_fields": [ + { + "name": "network_policy", + "description": "Updated network policy configuration details.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AccountNetworkPolicy", + "is_object": true + } + }, + { + "name": "network_policy_id", + "description": "The unique identifier for the network policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_id", + "description": "The associated account ID for this Network Policy object.", + "is_computed": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "egress", + "description": "The network policies applying for egress traffic.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "NetworkPolicyEgress", + "is_object": true + } + }, + { + "name": "ingress", + "description": "The network policies applying for ingress traffic.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CustomerFacingIngressNetworkPolicy", + "is_object": true + } + }, + { + "name": "ingress_dry_run", + "description": "The ingress policy for dry run mode. Dry run will always run even if the request\nis allowed by the ingress policy. When this field is set, the policy will be evaluated\nand emit logs only without blocking requests.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CustomerFacingIngressNetworkPolicy", + "is_object": true + } + }, + { + "name": "network_policy_id", + "description": "The unique identifier for the network policy.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "network_policy_id", + "description": "The unique identifier for the network policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "provisioning.Networks", + "name": "Networks", + "description": "These APIs manage network configurations for customer-managed VPCs (optional). Its ID is\nused when creating a new workspace if you use customer-managed VPCs.", + "package": { + "name": "provisioning" + }, + "is_accounts": true, + "docs_group": "provisioning", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Create", + "description": "Creates a Databricks network configuration that represents an VPC and its resources. The VPC will be used for new Databricks clusters. This requires a pre-existing VPC and subnets.", + "summary": "Create network configuration.", + "path": "/api/2.0/accounts/{account_id}/networks", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateNetworkRequest", + "is_object": true + }, + "response": { + "pascal_name": "Network", + "is_object": true + }, + "all_fields": [ + { + "name": "gcp_network_info", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GcpNetworkInfo", + "is_object": true + } + }, + { + "name": "network_name", + "description": "The human-readable name of the network configuration.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "security_group_ids", + "description": "IDs of one to five security groups associated with this network. Security group IDs **cannot** be used in multiple network configurations.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "subnet_ids", + "description": "IDs of at least two subnets associated with this network. Subnet IDs **cannot** be used in multiple network configurations.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "vpc_endpoints", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "NetworkVpcEndpoints", + "is_object": true + } + }, + { + "name": "vpc_id", + "description": "The ID of the VPC associated with this network configuration. VPC IDs can be used in multiple networks.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a Databricks network configuration, which represents a cloud VPC and its resources. You cannot delete a network that is associated with a workspace.\n\nThis operation is available only if your account is on the E2 version of the platform.", + "summary": "Delete a network configuration.", + "path": "/api/2.0/accounts/{account_id}/networks/{network_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteNetworkRequest", + "is_object": true, + "required_fields": [ + { + "name": "network_id", + "description": "Databricks Account API network configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "network_id", + "description": "Databricks Account API network configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Network", + "is_object": true + }, + "all_fields": [ + { + "name": "network_id", + "description": "Databricks Account API network configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "network_id", + "description": "Databricks Account API network configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a Databricks network configuration, which represents a cloud VPC and its resources.", + "summary": "Get a network configuration.", + "path": "/api/2.0/accounts/{account_id}/networks/{network_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetNetworkRequest", + "is_object": true, + "required_fields": [ + { + "name": "network_id", + "description": "Databricks Account API network configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "network_id", + "description": "Databricks Account API network configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Network", + "is_object": true + }, + "all_fields": [ + { + "name": "network_id", + "description": "Databricks Account API network configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "network_id", + "description": "Databricks Account API network configuration ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Lists Databricks network configurations for an account.", + "summary": "List network configurations.", + "path": "/api/2.0/accounts/{account_id}/networks", + "is_legacy_empty_request": true, + "is_crud_read": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListNetworksRequest", + "is_object": true + }, + "response": { + "pascal_name": "NetworkList", + "array_value": { + "pascal_name": "Network", + "is_object": true + } + } + } + ] + }, + { + "id": "settings.NotificationDestinations", + "name": "NotificationDestinations", + "description": "The notification destinations API lets you programmatically manage a workspace's notification destinations.\nNotification destinations are used to send notifications for query alerts and jobs to destinations outside of Databricks.\nOnly workspace admins can create, update, and delete notification destinations.", + "package": { + "name": "settings" + }, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListNotificationDestinationsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a notification destination. Requires workspace admin permissions.", + "summary": "Create a notification destination.", + "path": "/api/2.0/notification-destinations", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateNotificationDestinationRequest", + "is_object": true + }, + "response": { + "pascal_name": "NotificationDestination", + "is_object": true + }, + "all_fields": [ + { + "name": "config", + "description": "The configuration for the notification destination. Must wrap EXACTLY one of the nested configs.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Config", + "is_object": true + } + }, + { + "name": "display_name", + "description": "The display name for the notification destination.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a notification destination. Requires workspace admin permissions.", + "summary": "Delete a notification destination.", + "path": "/api/2.0/notification-destinations/{id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteNotificationDestinationRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Empty", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a notification destination.", + "summary": "Get a notification destination.", + "path": "/api/2.0/notification-destinations/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetNotificationDestinationRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "NotificationDestination", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Lists notification destinations.", + "summary": "List notification destinations.", + "path": "/api/2.0/notification-destinations", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListNotificationDestinationsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListNotificationDestinationsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Updates a notification destination. Requires workspace admin permissions. At least one field is required in the request body.", + "summary": "Update a notification destination.", + "path": "/api/2.0/notification-destinations/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateNotificationDestinationRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "UUID identifying notification destination.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "UUID identifying notification destination.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "NotificationDestination", + "is_object": true + }, + "all_fields": [ + { + "name": "config", + "description": "The configuration for the notification destination. Must wrap EXACTLY one of the nested configs.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Config", + "is_object": true + } + }, + { + "name": "display_name", + "description": "The display name for the notification destination.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "UUID identifying notification destination.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "UUID identifying notification destination.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "oauth2.OAuthPublishedApps", + "name": "OAuthPublishedApps", + "description": "These APIs enable administrators to view all the available published OAuth applications in Databricks.\nAdministrators can add the published OAuth applications to their account through the OAuth Published App Integration APIs.", + "package": { + "name": "oauth2" + }, + "is_accounts": true, + "docs_group": "oauth2", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListOAuthPublishedAppsRequest" + } + }, + "methods": [ + { + "name": "List", + "description": "Get all the available published OAuth apps in Databricks.", + "summary": "Get all the published OAuth apps.", + "path": "/api/2.0/accounts/{account_id}/oauth2/published-apps", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListOAuthPublishedAppsRequest", + "is_object": true + }, + "response": { + "pascal_name": "GetPublishedAppsOutput", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The max number of OAuth published apps to return in one page.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A token that can be used to get the next page of results.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A token that can be used to get the next page of results.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "catalog.OnlineTables", + "name": "OnlineTables", + "description": "Online tables provide lower latency and higher QPS access to data from Delta tables.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "methods": [ + { + "name": "Create", + "description": "Create a new Online Table.", + "summary": "Create an Online Table.", + "path": "/api/2.0/online-tables", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateOnlineTableRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "table", + "description": "Specification of the online table to be created.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "OnlineTable", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "table", + "description": "Specification of the online table to be created.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "OnlineTable", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "table", + "description": "Specification of the online table to be created.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "OnlineTable", + "is_object": true + } + }, + "response": { + "pascal_name": "OnlineTable", + "is_object": true + }, + "all_fields": [ + { + "name": "table", + "description": "Specification of the online table to be created.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "OnlineTable", + "is_object": true + } + }, + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "Specification of the online table.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "OnlineTableSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "Online Table data synchronization status", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "OnlineTableStatus", + "is_object": true + } + }, + { + "name": "table_serving_url", + "description": "Data serving REST API URL for this table", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "unity_catalog_provisioning_state", + "description": "The provisioning state of the online table entity in Unity Catalog. This is distinct from the\nstate of the data synchronization pipeline (i.e. the table may be in \"ACTIVE\" but the pipeline\nmay be in \"PROVISIONING\" as it runs asynchronously).", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ProvisioningInfoState", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "DEGRADED" + }, + { + "content": "DELETING" + }, + { + "content": "FAILED" + }, + { + "content": "PROVISIONING" + }, + { + "content": "UPDATING" + } + ] + } + } + ], + "wait": { + "success": [ + { + "content": "ACTIVE" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "OnlineTable" + } + }, + "status_path": [ + { + "pascal_name": "UnityCatalogProvisioningState" + } + ] + } + }, + { + "name": "Delete", + "description": "Delete an online table.\nWarning: This will delete all the data in the online table. If the source Delta table was\ndeleted or modified since this Online Table was created, this will lose the data forever!", + "summary": "Delete an Online Table.", + "path": "/api/2.0/online-tables/{name}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteOnlineTableRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Get information about an existing online table and its status.", + "summary": "Get an Online Table.", + "path": "/api/2.0/online-tables/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetOnlineTableRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "OnlineTable", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full three-part (catalog, schema, table) name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "iam.PermissionMigration", + "name": "PermissionMigration", + "description": "APIs for migrating acl permissions, used only by the ucx tool: https://github.com/databrickslabs/ucx", + "package": { + "name": "iam" + }, + "is_hidden_cli": true, + "docs_group": "iam", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "methods": [ + { + "name": "MigratePermissions", + "description": "Migrate Permissions.", + "summary": "Migrate Permissions.", + "path": "/api/2.0/permissionmigration", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "MigratePermissionsRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "WorkspaceId of the associated workspace where the permission migration will occur.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "from_workspace_group_name", + "description": "The name of the workspace group that permissions will be migrated from.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "to_account_group_name", + "description": "The name of the account group that permissions will be migrated to.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "workspace_id", + "description": "WorkspaceId of the associated workspace where the permission migration will occur.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "from_workspace_group_name", + "description": "The name of the workspace group that permissions will be migrated from.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "to_account_group_name", + "description": "The name of the account group that permissions will be migrated to.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "MigratePermissionsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "from_workspace_group_name", + "description": "The name of the workspace group that permissions will be migrated from.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "size", + "description": "The maximum number of permissions that will be migrated.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "to_account_group_name", + "description": "The name of the account group that permissions will be migrated to.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_id", + "description": "WorkspaceId of the associated workspace where the permission migration will occur.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "WorkspaceId of the associated workspace where the permission migration will occur.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "from_workspace_group_name", + "description": "The name of the workspace group that permissions will be migrated from.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "to_account_group_name", + "description": "The name of the account group that permissions will be migrated to.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "iam.Permissions", + "name": "Permissions", + "description": "Permissions API are used to create read, write, edit, update and manage access for various users on different objects and endpoints.\n* **[Apps permissions](:service:apps)** — Manage which users can manage or use apps.\n* **[Cluster permissions](:service:clusters)** — Manage which users can manage, restart, or attach to clusters.\n* **[Cluster policy permissions](:service:clusterpolicies)** — Manage which users can use cluster policies.\n* **[Spark Declarative Pipelines permissions](:service:pipelines)** — Manage which users can view, manage, run, cancel, or own a Spark Declarative Pipeline.\n* **[Job permissions](:service:jobs)** — Manage which users can view, manage, trigger, cancel, or own a job.\n* **[MLflow experiment permissions](:service:experiments)** — Manage which users can read, edit, or manage MLflow experiments.\n* **[MLflow registered model permissions](:service:modelregistry)** — Manage which users can read, edit, or manage MLflow registered models.\n* **[Instance Pool permissions](:service:instancepools)** — Manage which users can manage or attach to pools.\n* **[Repo permissions](repos)** — Manage which users can read, run, edit, or manage a repo.\n* **[Serving endpoint permissions](:service:servingendpoints)** — Manage which users can view, query, or manage a serving endpoint.\n* **[SQL warehouse permissions](:service:warehouses)** — Manage which users can use or manage SQL warehouses.\n* **[Token permissions](:service:tokenmanagement)** — Manage which users can create or use tokens.\n* **[Workspace object permissions](:service:workspace)** — Manage which users can read, run, edit, or manage alerts, dbsql-dashboards, directories, files, notebooks and queries.\nFor the mapping of the required permissions for specific actions or abilities and other important information, see [Access Control](https://docs.databricks.com/security/auth-authz/access-control/index.html).\nNote that to manage access control on service principals, use **[Account Access Control Proxy](:service:accountaccesscontrolproxy)**.", + "package": { + "name": "iam" + }, + "docs_group": "iam", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Get", + "description": "Gets the permissions of an object. Objects can inherit permissions from their parent objects or root object.", + "summary": "Get object permissions.", + "path": "/api/2.0/permissions/{request_object_type}/{request_object_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetPermissionRequest", + "is_object": true, + "required_fields": [ + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_id", + "description": "The id of the request object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_id", + "description": "The id of the request object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ObjectPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "request_object_id", + "description": "The id of the request object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_id", + "description": "The id of the request object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get object permission levels.", + "path": "/api/2.0/permissions/{request_object_type}/{request_object_id}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetPermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetPermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "request_object_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Set", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their parent objects or root object.", + "summary": "Set object permissions.", + "path": "/api/2.0/permissions/{request_object_type}/{request_object_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SetObjectPermissions", + "is_object": true, + "required_fields": [ + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_id", + "description": "The id of the request object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_id", + "description": "The id of the request object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ObjectPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "AccessControlRequestList", + "array_value": { + "pascal_name": "AccessControlRequest", + "is_object": true + } + } + }, + { + "name": "request_object_id", + "description": "The id of the request object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_id", + "description": "The id of the request object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the permissions on an object. Objects can inherit permissions from their parent objects or root object.", + "summary": "Update object permissions.", + "path": "/api/2.0/permissions/{request_object_type}/{request_object_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateObjectPermissions", + "is_object": true, + "required_fields": [ + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_id", + "description": "The id of the request object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_id", + "description": "The id of the request object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ObjectPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "AccessControlRequestList", + "array_value": { + "pascal_name": "AccessControlRequest", + "is_object": true + } + } + }, + { + "name": "request_object_id", + "description": "The id of the request object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "request_object_type", + "description": "The type of the request object. Can be one of the following: alerts, alertsv2, authorization, clusters, cluster-policies, dashboards, database-projects, dbsql-dashboards, directories, experiments, files, genie, instance-pools, jobs, knowledge-assistants, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, supervisor-agents, vector-search-endpoints, or warehouses.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_object_id", + "description": "The id of the request object.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "settings.PersonalCompute", + "name": "PersonalCompute", + "description": "The Personal Compute enablement setting lets you control which users can use the Personal Compute default policy to create compute resources.\nBy default all users in all workspaces have access (ON), but you can change the setting to instead let individual workspaces configure access control (DELEGATE).\n\nThere is only one instance of this setting per account.\nSince this setting has a default value, this setting is present on all accounts even though it's never set on a given account.\nDeletion reverts the value of the setting back to the default value.", + "package": { + "name": "settings" + }, + "is_accounts": true, + "has_parent": true, + "is_hidden_cli": true, + "docs_group": "settings", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "parent_service_id": "settings.AccountSettings", + "methods": [ + { + "name": "Delete", + "description": "Reverts back the Personal Compute setting value to default (ON)", + "summary": "Delete Personal Compute setting.", + "path": "/api/2.0/accounts/{account_id}/settings/types/dcp_acct_enable/names/default", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeletePersonalComputeSettingRequest", + "is_object": true + }, + "response": { + "pascal_name": "DeletePersonalComputeSettingResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the value of the Personal Compute setting.", + "summary": "Get Personal Compute setting.", + "path": "/api/2.0/accounts/{account_id}/settings/types/dcp_acct_enable/names/default", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetPersonalComputeSettingRequest", + "is_object": true + }, + "response": { + "pascal_name": "PersonalComputeSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "personal_compute", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PersonalComputeMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "personal_compute", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PersonalComputeMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the value of the Personal Compute setting.", + "summary": "Update Personal Compute setting.", + "path": "/api/2.0/accounts/{account_id}/settings/types/dcp_acct_enable/names/default", + "can_use_json": true, + "must_use_json": true, + "is_hidden_cli": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdatePersonalComputeSettingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PersonalComputeSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PersonalComputeSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PersonalComputeSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "personal_compute", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PersonalComputeMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "personal_compute", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PersonalComputeMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PersonalComputeSetting", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "pipelines.Pipelines", + "name": "Pipelines", + "description": "The Lakeflow Spark Declarative Pipelines API allows you to create, edit, delete, start, and view details about pipelines.\n\nSpark Declarative Pipelines is a framework for building reliable, maintainable, and testable data processing pipelines. You define the transformations to perform on your data, and Spark Declarative Pipelines manages task orchestration, cluster management, monitoring, data quality, and error handling.\n\nInstead of defining your data pipelines using a series of separate Apache Spark tasks, Spark Declarative Pipelines manages how your data is transformed based on a target schema you define for each processing step. You can also enforce data quality with Spark Declarative Pipelines expectations. Expectations allow you to define expected data quality and specify how to handle records that fail those expectations.", + "package": { + "name": "pipelines" + }, + "docs_group": "lakeflow", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "PipelineStateInfoNameToPipelineIdMap" + }, + "request": { + "pascal_name": "ListPipelinesRequest" + } + }, + "methods": [ + { + "name": "ApplyEnvironment", + "description": "Applies the current pipeline environment onto the pipeline compute. The environment applied can be used by subsequent\ndev-mode updates.", + "summary": "Apply the latest environment to the pipeline.", + "path": "/api/2.0/pipelines/{pipeline_id}/environment/apply", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ApplyEnvironmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ApplyEnvironmentRequestResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Clone", + "description": "Creates a new pipeline using Unity Catalog from a pipeline using Hive Metastore.\nThis method returns the ID of the newly created clone.\nAdditionally, this method starts an update for the newly created pipeline.", + "summary": "Clone a pipeline.", + "path": "/api/2.0/pipelines/{pipeline_id}/clone", + "can_use_json": true, + "must_use_json": true, + "is_json_only": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ClonePipelineRequest", + "is_object": true, + "required_fields": [ + { + "name": "pipeline_id", + "description": "Source pipeline to clone from", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "pipeline_id", + "description": "Source pipeline to clone from", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ClonePipelineResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "allow_duplicate_names", + "description": "If false, deployment will fail if name conflicts with that of another pipeline.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "budget_policy_id", + "description": "Budget policy of this pipeline.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog", + "description": "A catalog in Unity Catalog to publish data from this pipeline to. If `target` is specified, tables in this pipeline are published to a `target` schema inside `catalog` (for example, `catalog`.`target`.`table`). If `target` is not specified, no data is published to Unity Catalog.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "channel", + "description": "SDP Release Channel that specifies which version to use.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "clone_mode", + "description": "The type of clone to perform. Currently, only deep copies are supported", + "is_request_body_field": true, + "entity": { + "pascal_name": "CloneMode", + "enum": [ + { + "content": "MIGRATE_TO_UC" + } + ] + } + }, + { + "name": "clusters", + "description": "Cluster settings for this pipeline deployment. Applies to classic\n(non-serverless) pipelines. Omit this field when `serverless` is `true`.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PipelineClusterList", + "array_value": { + "pascal_name": "PipelineCluster", + "is_object": true + } + } + }, + { + "name": "configuration", + "description": "String-String configuration for this pipeline execution.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "continuous", + "description": "Whether the pipeline is continuous or triggered. This replaces `trigger`.\n\nDeprecated: wrap the pipeline in a continuous job instead, which also lets you take advantage\nof job-level settings such as performance mode. When the pipeline is started by a continuous\njob, the job's setting takes precedence and this field is ignored.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "deployment", + "description": "Deployment type of this pipeline.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PipelineDeployment", + "is_object": true + } + }, + { + "name": "development", + "description": "Whether the pipeline is in Development mode. Defaults to false.\n\nDeprecated: set development mode for each update instead.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "edition", + "description": "Pipeline product edition.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "environment", + "description": "Environment specification for this pipeline used to install dependencies.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PipelinesEnvironment", + "is_object": true + } + }, + { + "name": "event_log", + "description": "Event log configuration for this pipeline", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EventLogSpec", + "is_object": true + } + }, + { + "name": "expected_last_modified", + "description": "If present, the last-modified time of the pipeline settings before the clone.\nIf the settings were modified after that time, then the request will fail with\na conflict.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "filters", + "description": "Filters on which Pipeline packages to include in the deployed graph.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Filters", + "is_object": true + } + }, + { + "name": "gateway_definition", + "description": "The definition of a gateway pipeline to support change data capture.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IngestionGatewayPipelineDefinition", + "is_object": true + } + }, + { + "name": "id", + "description": "Unique identifier for this pipeline.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "ingestion_definition", + "description": "The configuration for a managed ingestion pipeline. These settings cannot be used with the 'libraries', 'schema', 'target', or 'catalog' settings.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IngestionPipelineDefinition", + "is_object": true + } + }, + { + "name": "libraries", + "description": "Libraries or code needed by this deployment.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PipelineLibraryList", + "array_value": { + "pascal_name": "PipelineLibrary", + "is_object": true + } + } + }, + { + "name": "name", + "description": "Friendly identifier for this pipeline.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "notifications", + "description": "List of notification settings for this pipeline.", + "is_request_body_field": true, + "entity": { + "pascal_name": "NotificationsList", + "array_value": { + "pascal_name": "Notifications", + "is_object": true + } + } + }, + { + "name": "parent_path", + "description": "Path of the pipeline parent folder in workspace file tree.\n\nIf absent, the pipeline doesn't have a workspace object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "photon", + "description": "Whether Photon is enabled for this pipeline.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "pipeline_id", + "description": "Source pipeline to clone from", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "restart_window", + "description": "Restart window of this pipeline.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RestartWindow", + "is_object": true + } + }, + { + "name": "root_path", + "description": "Root path for this pipeline.\nThis is used as the root directory when editing the pipeline in the Databricks user interface and it is\nadded to sys.path when executing Python sources during pipeline execution.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema", + "description": "The default schema (database) where tables are read from or published to.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "serverless", + "description": "Whether serverless compute is enabled for this pipeline. Serverless is the\nrecommended compute for new pipelines; set this to `true` to run the pipeline\non serverless. For notebook/file pipelines, omitting this field uses classic\ncompute configured through the `clusters` field. When `true`, omit `clusters`;\nPhoton is always enabled.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "serverless_compute_id", + "description": "Serverless compute ID specified by the user for serverless pipelines.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage", + "description": "DBFS root directory for storing checkpoints and tables.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tags", + "description": "A map of tags associated with the pipeline.\nThese are forwarded to the cluster as cluster tags, and are therefore subject to the same limitations.\nA maximum of 25 tags can be added to the pipeline.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "target", + "description": "Target schema (database) to add tables in this pipeline to. Exactly one of `schema` or `target` must be specified. To publish to Unity Catalog, also specify `catalog`. This legacy field is deprecated for pipeline creation in favor of the `schema` field.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "trigger", + "description": "Which pipeline trigger to use. Deprecated: Use `continuous` instead.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PipelineTrigger", + "is_object": true + } + }, + { + "name": "usage_policy_id", + "description": "Usage policy of this pipeline.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "pipeline_id", + "description": "Source pipeline to clone from", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Create", + "description": "Creates a new data processing pipeline based on the requested configuration. If successful, this method returns\nthe ID of the new pipeline.", + "summary": "Create a pipeline.", + "path": "/api/2.0/pipelines", + "can_use_json": true, + "must_use_json": true, + "is_json_only": true, + "is_crud_create": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreatePipeline", + "is_object": true + }, + "response": { + "pascal_name": "CreatePipelineResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "allow_duplicate_names", + "description": "If false, deployment will fail if name conflicts with that of another pipeline.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "budget_policy_id", + "description": "Budget policy of this pipeline.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog", + "description": "A catalog in Unity Catalog to publish data from this pipeline to. If `target` is specified, tables in this pipeline are published to a `target` schema inside `catalog` (for example, `catalog`.`target`.`table`). If `target` is not specified, no data is published to Unity Catalog.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "channel", + "description": "SDP Release Channel that specifies which version to use.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "clusters", + "description": "Cluster settings for this pipeline deployment. Applies to classic\n(non-serverless) pipelines. Omit this field when `serverless` is `true`.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PipelineClusterList", + "array_value": { + "pascal_name": "PipelineCluster", + "is_object": true + } + } + }, + { + "name": "configuration", + "description": "String-String configuration for this pipeline execution.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "continuous", + "description": "Whether the pipeline is continuous or triggered. This replaces `trigger`.\n\nDeprecated: wrap the pipeline in a continuous job instead, which also lets you take advantage\nof job-level settings such as performance mode. When the pipeline is started by a continuous\njob, the job's setting takes precedence and this field is ignored.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "deployment", + "description": "Deployment type of this pipeline.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PipelineDeployment", + "is_object": true + } + }, + { + "name": "development", + "description": "Whether the pipeline is in Development mode. Defaults to false.\n\nDeprecated: set development mode for each update instead.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "dry_run", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "edition", + "description": "Pipeline product edition.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "environment", + "description": "Environment specification for this pipeline used to install dependencies.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PipelinesEnvironment", + "is_object": true + } + }, + { + "name": "event_log", + "description": "Event log configuration for this pipeline", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EventLogSpec", + "is_object": true + } + }, + { + "name": "filters", + "description": "Filters on which Pipeline packages to include in the deployed graph.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Filters", + "is_object": true + } + }, + { + "name": "gateway_definition", + "description": "The definition of a gateway pipeline to support change data capture.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IngestionGatewayPipelineDefinition", + "is_object": true + } + }, + { + "name": "id", + "description": "Unique identifier for this pipeline.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "ingestion_definition", + "description": "The configuration for a managed ingestion pipeline. These settings cannot be used with the 'libraries', 'schema', 'target', or 'catalog' settings.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IngestionPipelineDefinition", + "is_object": true + } + }, + { + "name": "libraries", + "description": "Libraries or code needed by this deployment.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PipelineLibraryList", + "array_value": { + "pascal_name": "PipelineLibrary", + "is_object": true + } + } + }, + { + "name": "name", + "description": "Friendly identifier for this pipeline.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "notifications", + "description": "List of notification settings for this pipeline.", + "is_request_body_field": true, + "entity": { + "pascal_name": "NotificationsList", + "array_value": { + "pascal_name": "Notifications", + "is_object": true + } + } + }, + { + "name": "parameters", + "description": "Key/value map of default parameters to use for pipeline execution.\nMaximum total size: 10k characters (JSON format)", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "parent_path", + "description": "Path of the pipeline parent folder in workspace file tree.\n\nIf absent, the pipeline doesn't have a workspace object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "photon", + "description": "Whether Photon is enabled for this pipeline.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "restart_window", + "description": "Restart window of this pipeline.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RestartWindow", + "is_object": true + } + }, + { + "name": "root_path", + "description": "Root path for this pipeline.\nThis is used as the root directory when editing the pipeline in the Databricks user interface and it is\nadded to sys.path when executing Python sources during pipeline execution.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_as", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RunAs", + "is_object": true + } + }, + { + "name": "schema", + "description": "The default schema (database) where tables are read from or published to.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "serverless", + "description": "Whether serverless compute is enabled for this pipeline. Serverless is the\nrecommended compute for new pipelines; set this to `true` to run the pipeline\non serverless. For notebook/file pipelines, omitting this field uses classic\ncompute configured through the `clusters` field. When `true`, omit `clusters`;\nPhoton is always enabled.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "serverless_compute_id", + "description": "Serverless compute ID specified by the user for serverless pipelines.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage", + "description": "DBFS root directory for storing checkpoints and tables.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tags", + "description": "A map of tags associated with the pipeline.\nThese are forwarded to the cluster as cluster tags, and are therefore subject to the same limitations.\nA maximum of 25 tags can be added to the pipeline.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "target", + "description": "Target schema (database) to add tables in this pipeline to. Exactly one of `schema` or `target` must be specified. To publish to Unity Catalog, also specify `catalog`. This legacy field is deprecated for pipeline creation in favor of the `schema` field.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "trigger", + "description": "Which pipeline trigger to use. Deprecated: Use `continuous` instead.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PipelineTrigger", + "is_object": true + } + }, + { + "name": "usage_policy_id", + "description": "Usage policy of this pipeline.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a pipeline. If the pipeline publishes to Unity Catalog, pipeline deletion will cascade to\nall pipeline tables. Please reach out to Databricks support for assistance to undo this action.", + "summary": "Delete a pipeline.", + "path": "/api/2.0/pipelines/{pipeline_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeletePipelineRequest", + "is_object": true, + "required_fields": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeletePipelineResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "cascade", + "description": "If false, pipeline deletion will not cascade to its datasets (MVs, STs, Views).\nBy default, this parameter will be true and all tables will be deleted with the pipeline.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "force", + "description": "If true, deletion will proceed even if resource cleanup fails.\nBy default, deletion will fail if resources cleanup is required but fails.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Get a pipeline.", + "summary": "Get a pipeline.", + "path": "/api/2.0/pipelines/{pipeline_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetPipelineRequest", + "is_object": true, + "required_fields": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetPipelineResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get pipeline permission levels.", + "path": "/api/2.0/permissions/pipelines/{pipeline_id}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetPipelinePermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetPipelinePermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of a pipeline. Pipelines can inherit permissions from their root object.", + "summary": "Get pipeline permissions.", + "path": "/api/2.0/permissions/pipelines/{pipeline_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetPipelinePermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PipelinePermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetUpdate", + "description": "Gets an update from an active pipeline.", + "summary": "Get a pipeline update.", + "path": "/api/2.0/pipelines/{pipeline_id}/updates/{update_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetUpdateRequest", + "is_object": true, + "required_fields": [ + { + "name": "pipeline_id", + "description": "The ID of the pipeline.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_id", + "description": "The ID of the update.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "pipeline_id", + "description": "The ID of the pipeline.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_id", + "description": "The ID of the update.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetUpdateResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "pipeline_id", + "description": "The ID of the pipeline.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_id", + "description": "The ID of the update.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "pipeline_id", + "description": "The ID of the pipeline.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_id", + "description": "The ID of the update.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListPipelineEvents", + "description": "Retrieves events for a pipeline.", + "summary": "List pipeline events.", + "path": "/api/2.0/pipelines/{pipeline_id}/events", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListPipelineEventsRequest", + "is_object": true, + "required_fields": [ + { + "name": "pipeline_id", + "description": "The pipeline to return events for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "pipeline_id", + "description": "The pipeline to return events for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListPipelineEventsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter", + "description": "Criteria to select a subset of results, expressed using a SQL-like syntax.\nThe supported filters are:\n1. level='INFO' (or WARN or ERROR)\n2. level in ('INFO', 'WARN')\n3. id='[event-id]'\n4. timestamp \u003e 'TIMESTAMP' (or \u003e=,\u003c,\u003c=,=)\n\nComposite expressions are supported, for example: level in ('ERROR', 'WARN')\nAND timestamp\u003e '2021-07-22T06:37:33.083Z'", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_results", + "description": "Max number of entries to return in a single page. The system may return\nfewer than max_results events in a response, even if there are more events\navailable.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "order_by", + "description": "A string indicating a sort order by timestamp for the results, for example, [\"timestamp asc\"].\nThe sort order can be ascending or descending. By default, events are returned\nin descending order by timestamp.", + "is_query": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "page_token", + "description": "Page token returned by previous call. This field is mutually\nexclusive with all fields in this request except max_results. An error is\nreturned if any fields other than max_results are set when this field is set.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "pipeline_id", + "description": "The pipeline to return events for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "pipeline_id", + "description": "The pipeline to return events for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Page token returned by previous call. This field is mutually\nexclusive with all fields in this request except max_results. An error is\nreturned if any fields other than max_results are set when this field is set.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListPipelines", + "description": "Lists pipelines defined in the Spark Declarative Pipelines system.", + "summary": "List pipelines.", + "path": "/api/2.0/pipelines", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListPipelinesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListPipelinesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter", + "description": "Select a subset of results based on the specified criteria.\nThe supported filters are:\n\n* `notebook='\u003cpath\u003e'` to select pipelines that reference the provided notebook path.\n* `name LIKE '[pattern]'` to select pipelines with a name that matches pattern.\nWildcards are supported, for example: `name LIKE '%shopping%'`\n\nComposite filters are not supported. This field is optional.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_results", + "description": "The maximum number of entries to return in a single page. The system may\nreturn fewer than max_results pipelines in a response, even if there are\nmore pipelines available. This field is optional. The default value is 25.\nThe maximum value is 100. An error is returned if the value of max_results\nis greater than 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "order_by", + "description": "A list of strings specifying the order of results.\nSupported order_by fields are id and name. The default is id asc.\nThis field is optional.", + "is_query": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "page_token", + "description": "Page token returned by previous call", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Page token returned by previous call", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListUpdates", + "description": "List updates for an active pipeline.", + "summary": "List pipeline updates.", + "path": "/api/2.0/pipelines/{pipeline_id}/updates", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListUpdatesRequest", + "is_object": true, + "required_fields": [ + { + "name": "pipeline_id", + "description": "The pipeline to return updates for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "pipeline_id", + "description": "The pipeline to return updates for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListUpdatesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "max_results", + "description": "Max number of entries to return in a single page.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Page token returned by previous call", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "pipeline_id", + "description": "The pipeline to return updates for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "until_update_id", + "description": "If present, returns updates until and including this update_id.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "pipeline_id", + "description": "The pipeline to return updates for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set pipeline permissions.", + "path": "/api/2.0/permissions/pipelines/{pipeline_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "PipelinePermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PipelinePermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "PipelineAccessControlRequestList", + "array_value": { + "pascal_name": "PipelineAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "StartUpdate", + "description": "Starts a new update for the pipeline. If there is already an active update for the pipeline, the request will fail and the active update will remain running.", + "summary": "Start a pipeline.", + "path": "/api/2.0/pipelines/{pipeline_id}/updates", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "StartUpdate", + "is_object": true, + "required_fields": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "StartUpdateResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "cause", + "is_request_body_field": true, + "entity": { + "pascal_name": "StartUpdateCause", + "enum": [ + { + "content": "API_CALL" + }, + { + "content": "INFRASTRUCTURE_MAINTENANCE" + }, + { + "content": "JOB_TASK" + }, + { + "content": "RETRY_ON_FAILURE" + }, + { + "content": "SCHEMA_CHANGE" + }, + { + "content": "SERVICE_UPGRADE" + }, + { + "content": "USER_ACTION" + } + ] + } + }, + { + "name": "development", + "description": "Whether the update is started in the development mode.\nThis is recommended for interactive development and testing.\nReuses compute for faster iteration and disables automatic retries.\nNot recommended for production.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "full_refresh", + "description": "If true, this update will reset all tables before running.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "full_refresh_selection", + "description": "A list of tables to update with fullRefresh. If both refresh_selection and\nfull_refresh_selection are empty, this is a full graph update. Full Refresh on a table means\nthat the states of the table will be reset before the refresh.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "parameters", + "description": "Key/value map of parameters to pass to the pipeline execution", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_selection", + "description": "A list of tables to update without fullRefresh. If both refresh_selection and\nfull_refresh_selection are empty, this is a full graph update. Full Refresh on a table means\nthat the states of the table will be reset before the refresh.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "replace_where_overrides", + "description": "A list of predicate overrides for replace_where flows in this update.\nOnly replace_where flows may be specified. Flows not listed use their original predicate.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ReplaceWhereOverrideList", + "array_value": { + "pascal_name": "ReplaceWhereOverride", + "is_object": true + } + } + }, + { + "name": "reset_checkpoint_selection", + "description": "A list of flows for which this update should reset the streaming checkpoint. This selection will not clear\nthe data in the flow's target table. Flows in this list may also appear in refresh_selection and full_refresh_selection.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "rewind_spec", + "description": "The information about the requested rewind operation.\nIf specified this is a rewind mode update.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RewindSpec", + "is_object": true + } + }, + { + "name": "validate_only", + "description": "If true, this update only validates the correctness of pipeline source code but does not materialize or publish any datasets.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Stop", + "description": "Stops the pipeline by canceling the active update. If there is no active update for the pipeline, this request is a no-op.", + "summary": "Stop a pipeline.", + "path": "/api/2.0/pipelines/{pipeline_id}/stop", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "StopRequest", + "is_object": true, + "required_fields": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "StopPipelineResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "pipeline_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "IDLE" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "GetPipelineResponse" + } + }, + "status_path": [ + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "Cause" + } + ], + "message_path_head": { + "pascal_name": "Cause" + } + } + }, + { + "name": "Update", + "description": "Updates a pipeline with the supplied configuration.", + "summary": "Edit a pipeline.", + "path": "/api/2.0/pipelines/{pipeline_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "EditPipeline", + "is_object": true, + "required_fields": [ + { + "name": "pipeline_id", + "description": "Unique identifier for this pipeline.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "pipeline_id", + "description": "Unique identifier for this pipeline.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EditPipelineResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "allow_duplicate_names", + "description": "If false, deployment will fail if name has changed and conflicts the name of another pipeline.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "budget_policy_id", + "description": "Budget policy of this pipeline.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog", + "description": "A catalog in Unity Catalog to publish data from this pipeline to. If `target` is specified, tables in this pipeline are published to a `target` schema inside `catalog` (for example, `catalog`.`target`.`table`). If `target` is not specified, no data is published to Unity Catalog.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "channel", + "description": "SDP Release Channel that specifies which version to use.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "clusters", + "description": "Cluster settings for this pipeline deployment. Applies to classic\n(non-serverless) pipelines. Omit this field when `serverless` is `true`.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PipelineClusterList", + "array_value": { + "pascal_name": "PipelineCluster", + "is_object": true + } + } + }, + { + "name": "configuration", + "description": "String-String configuration for this pipeline execution.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "continuous", + "description": "Whether the pipeline is continuous or triggered. This replaces `trigger`.\n\nDeprecated: wrap the pipeline in a continuous job instead, which also lets you take advantage\nof job-level settings such as performance mode. When the pipeline is started by a continuous\njob, the job's setting takes precedence and this field is ignored.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "deployment", + "description": "Deployment type of this pipeline.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PipelineDeployment", + "is_object": true + } + }, + { + "name": "development", + "description": "Whether the pipeline is in Development mode. Defaults to false.\n\nDeprecated: set development mode for each update instead.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "edition", + "description": "Pipeline product edition.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "environment", + "description": "Environment specification for this pipeline used to install dependencies.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PipelinesEnvironment", + "is_object": true + } + }, + { + "name": "event_log", + "description": "Event log configuration for this pipeline", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EventLogSpec", + "is_object": true + } + }, + { + "name": "expected_last_modified", + "description": "If present, the last-modified time of the pipeline settings before the edit.\nIf the settings were modified after that time, then the request will fail with\na conflict.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "filters", + "description": "Filters on which Pipeline packages to include in the deployed graph.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Filters", + "is_object": true + } + }, + { + "name": "gateway_definition", + "description": "The definition of a gateway pipeline to support change data capture.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IngestionGatewayPipelineDefinition", + "is_object": true + } + }, + { + "name": "id", + "description": "Unique identifier for this pipeline.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "ingestion_definition", + "description": "The configuration for a managed ingestion pipeline. These settings cannot be used with the 'libraries', 'schema', 'target', or 'catalog' settings.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IngestionPipelineDefinition", + "is_object": true + } + }, + { + "name": "libraries", + "description": "Libraries or code needed by this deployment.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PipelineLibraryList", + "array_value": { + "pascal_name": "PipelineLibrary", + "is_object": true + } + } + }, + { + "name": "name", + "description": "Friendly identifier for this pipeline.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "notifications", + "description": "List of notification settings for this pipeline.", + "is_request_body_field": true, + "entity": { + "pascal_name": "NotificationsList", + "array_value": { + "pascal_name": "Notifications", + "is_object": true + } + } + }, + { + "name": "parameters", + "description": "Key/value map of default parameters to use for pipeline execution.\nMaximum total size: 10k characters (JSON format)", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "parent_path", + "description": "Path of the pipeline parent folder in workspace file tree.\n\nIf absent, the pipeline doesn't have a workspace object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "photon", + "description": "Whether Photon is enabled for this pipeline.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "pipeline_id", + "description": "Unique identifier for this pipeline.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "restart_window", + "description": "Restart window of this pipeline.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RestartWindow", + "is_object": true + } + }, + { + "name": "root_path", + "description": "Root path for this pipeline.\nThis is used as the root directory when editing the pipeline in the Databricks user interface and it is\nadded to sys.path when executing Python sources during pipeline execution.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_as", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RunAs", + "is_object": true + } + }, + { + "name": "schema", + "description": "The default schema (database) where tables are read from or published to.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "serverless", + "description": "Whether serverless compute is enabled for this pipeline. Serverless is the\nrecommended compute for new pipelines; set this to `true` to run the pipeline\non serverless. For notebook/file pipelines, omitting this field uses classic\ncompute configured through the `clusters` field. When `true`, omit `clusters`;\nPhoton is always enabled.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "serverless_compute_id", + "description": "Serverless compute ID specified by the user for serverless pipelines.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage", + "description": "DBFS root directory for storing checkpoints and tables.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tags", + "description": "A map of tags associated with the pipeline.\nThese are forwarded to the cluster as cluster tags, and are therefore subject to the same limitations.\nA maximum of 25 tags can be added to the pipeline.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "target", + "description": "Target schema (database) to add tables in this pipeline to. Exactly one of `schema` or `target` must be specified. To publish to Unity Catalog, also specify `catalog`. This legacy field is deprecated for pipeline creation in favor of the `schema` field.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "trigger", + "description": "Which pipeline trigger to use. Deprecated: Use `continuous` instead.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PipelineTrigger", + "is_object": true + } + }, + { + "name": "usage_policy_id", + "description": "Usage policy of this pipeline.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "pipeline_id", + "description": "Unique identifier for this pipeline.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on a pipeline. Pipelines can inherit permissions from their root object.", + "summary": "Update pipeline permissions.", + "path": "/api/2.0/permissions/pipelines/{pipeline_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "PipelinePermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PipelinePermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "PipelineAccessControlRequestList", + "array_value": { + "pascal_name": "PipelineAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "pipeline_id", + "description": "The pipeline for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.Policies", + "name": "Policies", + "description": "Attribute-Based Access Control (ABAC) provides high leverage governance for enforcing compliance policies in Unity Catalog. With ABAC policies, access is controlled in a hierarchical and scalable manner, based on data attributes rather than specific resources, enabling more flexible and comprehensive access control. ABAC policies in Unity Catalog support conditions on securable properties, governance tags, and environment contexts. Callers must have the `MANAGE` privilege on a securable to view, create, update, or delete ABAC policies.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListPoliciesRequest" + } + }, + "methods": [ + { + "name": "CreatePolicy", + "description": "Creates a new policy on a securable.\nThe new policy applies to the securable and all its descendants.", + "summary": "Create an ABAC policy.", + "path": "/api/2.1/unity-catalog/policies", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreatePolicyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "policy_info", + "description": "Required. The policy to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyInfo", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "policy_info", + "description": "Required. The policy to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyInfo", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "policy_info", + "description": "Required. The policy to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyInfo", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "PolicyInfo", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "policy_info", + "description": "Required. The policy to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyInfo", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ] + } + }, + { + "name": "column_mask", + "description": "Options for column mask policies. Valid only if `policy_type` is `POLICY_TYPE_COLUMN_MASK`.\nRequired on create and optional on update. When specified on update,\nthe new options will replace the existing options as a whole.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ColumnMaskOptions", + "is_object": true + } + }, + { + "name": "comment", + "description": "Optional description of the policy.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "created_at", + "description": "Time at which the policy was created, in epoch milliseconds. Output only.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "created_by", + "description": "Username of the user who created the policy. Output only.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "deny", + "description": "Options for deny policies. Valid only if `policy_type` is `POLICY_TYPE_DENY`.\nRequired on create and optional on update. When specified on update,\nthe new options will replace the existing options as a whole.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DenyOptions", + "is_object": true + } + }, + { + "name": "except_principals", + "description": "Optional list of user or group names that should be excluded from the policy.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "governed_tags", + "description": "Governed tag keys and values referenced by this policy's conditions and function arguments. Output only.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "GovernedTagReferenceList", + "array_value": { + "pascal_name": "GovernedTagReference", + "is_object": true + } + } + }, + { + "name": "grant", + "description": "Options for grant policies. Valid only if `policy_type` is `POLICY_TYPE_GRANT`.\nRequired on create and optional on update. When specified on update,\nthe new options will replace the existing options as a whole.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GrantOptions", + "is_object": true + } + }, + { + "name": "id", + "description": "Unique identifier of the policy. This field is output only and is generated by the system.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "match_columns", + "description": "Optional list of condition expressions used to match table columns.\nOnly valid when `for_securable_type` is `TABLE`.\nWhen specified, the policy only applies to tables whose columns satisfy all match conditions.", + "is_request_body_field": true, + "entity": { + "pascal_name": "MatchColumnList", + "array_value": { + "pascal_name": "MatchColumn", + "is_object": true + } + } + }, + { + "name": "name", + "description": "Name of the policy. Required on create and optional on update.\nTo rename the policy, set `name` to a different value on update.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Full name of the securable on which the policy is defined.\nRequired on create.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_type", + "description": "Type of the securable on which the policy is defined.\nOnly `CATALOG`, `SCHEMA` and `TABLE` are supported at this moment.\nRequired on create.", + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + }, + { + "name": "row_filter", + "description": "Options for row filter policies. Valid only if `policy_type` is `POLICY_TYPE_ROW_FILTER`.\nRequired on create and optional on update. When specified on update,\nthe new options will replace the existing options as a whole.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RowFilterOptions", + "is_object": true + } + }, + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "updated_at", + "description": "Time at which the policy was last modified, in epoch milliseconds. Output only.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "updated_by", + "description": "Username of the user who last modified the policy. Output only.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "when_condition", + "description": "Optional condition when the policy should take effect.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ] + }, + { + "name": "DeletePolicy", + "description": "Delete an ABAC policy defined on a securable.", + "summary": "Delete an ABAC policy.", + "path": "/api/2.1/unity-catalog/policies/{on_securable_type}/{on_securable_fullname}/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeletePolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "on_securable_type", + "description": "Required. The type of the securable to delete the policy from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of the securable to delete the policy from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Required. The name of the policy to delete", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "on_securable_type", + "description": "Required. The type of the securable to delete the policy from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of the securable to delete the policy from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Required. The name of the policy to delete", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeletePolicyResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The name of the policy to delete", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of the securable to delete the policy from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_type", + "description": "Required. The type of the securable to delete the policy from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "on_securable_type", + "description": "Required. The type of the securable to delete the policy from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of the securable to delete the policy from.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Required. The name of the policy to delete", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPolicy", + "description": "Get the policy definition on a securable", + "summary": "Get an ABAC policy.", + "path": "/api/2.1/unity-catalog/policies/{on_securable_type}/{on_securable_fullname}/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetPolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "on_securable_type", + "description": "Required. The type of the securable to retrieve the policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of securable to retrieve policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Required. The name of the policy to retrieve.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "on_securable_type", + "description": "Required. The type of the securable to retrieve the policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of securable to retrieve policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Required. The name of the policy to retrieve.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PolicyInfo", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The name of the policy to retrieve.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of securable to retrieve policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_type", + "description": "Required. The type of the securable to retrieve the policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "on_securable_type", + "description": "Required. The type of the securable to retrieve the policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of securable to retrieve policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Required. The name of the policy to retrieve.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListPolicies", + "description": "List all policies defined on a securable.\nOptionally, the list can include inherited policies defined on the securable's parent schema or catalog.\n\nPAGINATION BEHAVIOR: The API is by default paginated, a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List ABAC policies.", + "path": "/api/2.1/unity-catalog/policies/{on_securable_type}/{on_securable_fullname}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListPoliciesRequest", + "is_object": true, + "required_fields": [ + { + "name": "on_securable_type", + "description": "Required. The type of the securable to list policies for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of securable to list policies for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "on_securable_type", + "description": "Required. The type of the securable to list policies for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of securable to list policies for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListPoliciesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "include_inherited", + "description": "Optional. Whether to include policies defined on parent securables.\nBy default, the inherited policies are not included.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "max_results", + "description": "Optional. Maximum number of policies to return on a single page (page length).\n- When not set or set to 0, the page length is set to a server configured value (recommended);\n- When set to a value greater than 0, the page length is the minimum of this value and a server configured value;", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of securable to list policies for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_type", + "description": "Required. The type of the securable to list policies for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_token", + "description": "Optional. Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "on_securable_type", + "description": "Required. The type of the securable to list policies for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of securable to list policies for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Optional. Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdatePolicy", + "description": "Update an ABAC policy on a securable.", + "summary": "Update an ABAC policy.", + "path": "/api/2.1/unity-catalog/policies/{on_securable_type}/{on_securable_fullname}/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdatePolicyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "on_securable_type", + "description": "Required. The type of the securable to update the policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of the securable to update the policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Required. The name of the policy to update.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "policy_info", + "description": "Optional fields to update. This is the request body for updating a policy.\nUse `update_mask` field to specify which fields in the request is to be updated.\n- If `update_mask` is empty or \"*\", all specified fields will be updated.\n- If `update_mask` is specified, only the fields specified in the `update_mask` will be updated.\nIf a field is specified in `update_mask` and not set in the request, the field will be cleared.\nUsers can use the update mask to explicitly unset optional fields such as\n`exception_principals` and `when_condition`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyInfo", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "on_securable_type", + "description": "Required. The type of the securable to update the policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of the securable to update the policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Required. The name of the policy to update.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "policy_info", + "description": "Optional fields to update. This is the request body for updating a policy.\nUse `update_mask` field to specify which fields in the request is to be updated.\n- If `update_mask` is empty or \"*\", all specified fields will be updated.\n- If `update_mask` is specified, only the fields specified in the `update_mask` will be updated.\nIf a field is specified in `update_mask` and not set in the request, the field will be cleared.\nUsers can use the update mask to explicitly unset optional fields such as\n`exception_principals` and `when_condition`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyInfo", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "policy_info", + "description": "Optional fields to update. This is the request body for updating a policy.\nUse `update_mask` field to specify which fields in the request is to be updated.\n- If `update_mask` is empty or \"*\", all specified fields will be updated.\n- If `update_mask` is specified, only the fields specified in the `update_mask` will be updated.\nIf a field is specified in `update_mask` and not set in the request, the field will be cleared.\nUsers can use the update mask to explicitly unset optional fields such as\n`exception_principals` and `when_condition`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyInfo", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "PolicyInfo", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The name of the policy to update.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of the securable to update the policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_type", + "description": "Required. The type of the securable to update the policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "policy_info", + "description": "Optional fields to update. This is the request body for updating a policy.\nUse `update_mask` field to specify which fields in the request is to be updated.\n- If `update_mask` is empty or \"*\", all specified fields will be updated.\n- If `update_mask` is specified, only the fields specified in the `update_mask` will be updated.\nIf a field is specified in `update_mask` and not set in the request, the field will be cleared.\nUsers can use the update mask to explicitly unset optional fields such as\n`exception_principals` and `when_condition`.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyInfo", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ] + } + }, + { + "name": "update_mask", + "description": "Optional. The update mask field for specifying user intentions on which\nfields to update in the request.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "column_mask", + "description": "Options for column mask policies. Valid only if `policy_type` is `POLICY_TYPE_COLUMN_MASK`.\nRequired on create and optional on update. When specified on update,\nthe new options will replace the existing options as a whole.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ColumnMaskOptions", + "is_object": true + } + }, + { + "name": "comment", + "description": "Optional description of the policy.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "created_at", + "description": "Time at which the policy was created, in epoch milliseconds. Output only.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "created_by", + "description": "Username of the user who created the policy. Output only.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "deny", + "description": "Options for deny policies. Valid only if `policy_type` is `POLICY_TYPE_DENY`.\nRequired on create and optional on update. When specified on update,\nthe new options will replace the existing options as a whole.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DenyOptions", + "is_object": true + } + }, + { + "name": "except_principals", + "description": "Optional list of user or group names that should be excluded from the policy.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "governed_tags", + "description": "Governed tag keys and values referenced by this policy's conditions and function arguments. Output only.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "GovernedTagReferenceList", + "array_value": { + "pascal_name": "GovernedTagReference", + "is_object": true + } + } + }, + { + "name": "grant", + "description": "Options for grant policies. Valid only if `policy_type` is `POLICY_TYPE_GRANT`.\nRequired on create and optional on update. When specified on update,\nthe new options will replace the existing options as a whole.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GrantOptions", + "is_object": true + } + }, + { + "name": "id", + "description": "Unique identifier of the policy. This field is output only and is generated by the system.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "match_columns", + "description": "Optional list of condition expressions used to match table columns.\nOnly valid when `for_securable_type` is `TABLE`.\nWhen specified, the policy only applies to tables whose columns satisfy all match conditions.", + "is_request_body_field": true, + "entity": { + "pascal_name": "MatchColumnList", + "array_value": { + "pascal_name": "MatchColumn", + "is_object": true + } + } + }, + { + "name": "name", + "description": "Name of the policy. Required on create and optional on update.\nTo rename the policy, set `name` to a different value on update.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Full name of the securable on which the policy is defined.\nRequired on create.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_type", + "description": "Type of the securable on which the policy is defined.\nOnly `CATALOG`, `SCHEMA` and `TABLE` are supported at this moment.\nRequired on create.", + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + }, + { + "name": "row_filter", + "description": "Options for row filter policies. Valid only if `policy_type` is `POLICY_TYPE_ROW_FILTER`.\nRequired on create and optional on update. When specified on update,\nthe new options will replace the existing options as a whole.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RowFilterOptions", + "is_object": true + } + }, + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "updated_at", + "description": "Time at which the policy was last modified, in epoch milliseconds. Output only.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "updated_by", + "description": "Username of the user who last modified the policy. Output only.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "when_condition", + "description": "Optional condition when the policy should take effect.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "on_securable_type", + "description": "Required. The type of the securable to update the policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "on_securable_fullname", + "description": "Required. The fully qualified name of the securable to update the policy for.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Required. The name of the policy to update.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "to_principals", + "description": "List of user or group names that the policy applies to.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "for_securable_type", + "description": "Type of securables that the policy should take effect on.\nRequired on create and optional on update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SecurableType", + "enum": [ + { + "content": "AGENT_SERVICE" + }, + { + "content": "CATALOG" + }, + { + "content": "CLEAN_ROOM" + }, + { + "content": "CONNECTION" + }, + { + "content": "CREDENTIAL" + }, + { + "content": "EXTERNAL_LOCATION" + }, + { + "content": "EXTERNAL_METADATA" + }, + { + "content": "FUNCTION" + }, + { + "content": "MCP_SERVICE" + }, + { + "content": "METASTORE" + }, + { + "content": "MODEL" + }, + { + "content": "MODEL_PROVIDER_SERVICE" + }, + { + "content": "MODEL_SERVICE" + }, + { + "content": "PIPELINE" + }, + { + "content": "PROVIDER" + }, + { + "content": "RECIPIENT" + }, + { + "content": "SCHEMA" + }, + { + "content": "SHARE" + }, + { + "content": "SKILL" + }, + { + "content": "STAGING_TABLE" + }, + { + "content": "STORAGE_CREDENTIAL" + }, + { + "content": "TABLE" + }, + { + "content": "VOLUME" + } + ] + } + }, + { + "name": "policy_type", + "description": "Type of the policy. Required on create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PolicyType", + "enum": [ + { + "content": "POLICY_TYPE_COLUMN_MASK" + }, + { + "content": "POLICY_TYPE_DENY" + }, + { + "content": "POLICY_TYPE_GRANT" + }, + { + "content": "POLICY_TYPE_ROW_FILTER" + } + ] + } + } + ] + } + ] + }, + { + "id": "compute.PolicyComplianceForClusters", + "name": "PolicyComplianceForClusters", + "description": "The policy compliance APIs allow you to view and manage the policy compliance status\nof clusters in your workspace.\n\nA cluster is compliant with its policy if its configuration satisfies all its policy rules.\nClusters could be out of compliance if their policy was updated after the cluster was last edited.\n\nThe get and list compliance APIs allow you to view the policy compliance status of a cluster.\nThe enforce compliance API allows you to update a cluster to be compliant with the current version\nof its policy.", + "package": { + "name": "compute" + }, + "docs_group": "compute", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "CancelPendingClusterEnforcement", + "description": "Cancels a pending enforcement on a cluster. After canceling the pending enforcement,\nthe cluster will no longer update on the next termination or restart.\nPending enforcements cannot be canceled when a cluster is in `TERMINATING` state.\nOnly workspace admins can cancel pending enforcements.", + "summary": "Cancel pending policy enforcement for a cluster.", + "path": "/api/2.0/policies/clusters:cancelPendingClusterEnforcement", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CancelPendingClusterEnforcementRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "The ID of the cluster to cancel the pending enforcement for.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cluster_id", + "description": "The ID of the cluster to cancel the pending enforcement for.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CancelPendingClusterEnforcementResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "If true and no pending enforcement exists, the request will succeed but no action\nwill be taken.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "cluster_id", + "description": "The ID of the cluster to cancel the pending enforcement for.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "The ID of the cluster to cancel the pending enforcement for.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "EnforceCompliance", + "description": "Updates a cluster to be compliant with the current version of its policy.\n\nIf a cluster is updated while in a `TERMINATED` state, it will remain `TERMINATED`.\nThe next time the cluster is started, the new attributes will take effect.\n\nFor clusters in other states, the behavior depends on the `enforce_mode` used.\n\nClusters created by the Databricks Jobs, SDP, or Models services cannot be enforced by this API.\nInstead, use the \"Enforce job policy compliance\" API to enforce policy compliance on jobs.", + "summary": "Enforce cluster policy compliance.", + "path": "/api/2.0/policies/clusters/enforce-compliance", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "EnforceClusterComplianceRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "The ID of the cluster you want to enforce policy compliance on.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cluster_id", + "description": "The ID of the cluster you want to enforce policy compliance on.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EnforceClusterComplianceResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "cluster_id", + "description": "The ID of the cluster you want to enforce policy compliance on.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "enforce_mode", + "description": "Determines how changes should be made to clusters that are not in `TERMINATED` state.\n\n- `ENFORCE_IMMEDIATELY`: If the cluster is in a `RUNNING` state, it will be restarted so\nthat the new attributes can take effect. For other states aside from `TERMINATED` state,\nthe request will be rejected.\n- `WAIT_FOR_TERMINATION`: The cluster is not immediately edited. Instead, a pending enforcement\nis scheduled to update the cluster when it terminates or restarts. When this occurs,\n`enforce_result` will contain `DEFERRED`. Only workspace admins can use this mode.\n\nRegardless of the enforce mode, clusters in `TERMINATED` state are immediately edited.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EnforcePolicyComplianceForClusterEnforceMode", + "enum": [ + { + "content": "ENFORCE_IMMEDIATELY" + }, + { + "content": "WAIT_FOR_TERMINATION" + } + ] + } + }, + { + "name": "validate_only", + "description": "If set, previews the changes that would be made to a cluster\nto enforce compliance but does not update the cluster.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "The ID of the cluster you want to enforce policy compliance on.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetCompliance", + "description": "Returns the policy compliance status of a cluster. Clusters could be out\nof compliance if their policy was updated after the cluster was last edited.", + "summary": "Get cluster policy compliance.", + "path": "/api/2.0/policies/clusters/get-compliance", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetClusterComplianceRequest", + "is_object": true, + "required_fields": [ + { + "name": "cluster_id", + "description": "The ID of the cluster to get the compliance status", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "cluster_id", + "description": "The ID of the cluster to get the compliance status", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetClusterComplianceResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "cluster_id", + "description": "The ID of the cluster to get the compliance status", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "cluster_id", + "description": "The ID of the cluster to get the compliance status", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListCompliance", + "description": "Returns the policy compliance status of all clusters that use a\ngiven policy. Clusters could be out of compliance if their policy was\nupdated after the cluster was last edited.", + "summary": "List cluster policy compliance.", + "path": "/api/2.0/policies/clusters/list-compliance", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListClusterCompliancesRequest", + "is_object": true, + "required_fields": [ + { + "name": "policy_id", + "description": "Canonical unique identifier for the cluster policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "policy_id", + "description": "Canonical unique identifier for the cluster policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListClusterCompliancesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Use this field to specify the maximum number of results to be returned by the server.\nThe server may further constrain the maximum number of results returned in a\nsingle page.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token that can be used to navigate to the next page or previous page as\nreturned by `next_page_token` or `prev_page_token`.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "policy_id", + "description": "Canonical unique identifier for the cluster policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "policy_id", + "description": "Canonical unique identifier for the cluster policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token that can be used to navigate to the next page or previous page as\nreturned by `next_page_token` or `prev_page_token`.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "jobs.PolicyComplianceForJobs", + "name": "PolicyComplianceForJobs", + "description": "The compliance APIs allow you to view and manage the policy compliance status of jobs\nin your workspace. This API currently only supports compliance controls for cluster policies.\n\nA job is in compliance if its cluster configurations satisfy the rules of all their respective\ncluster policies. A job could be out of compliance if a cluster policy it uses was updated after\nthe job was last edited. The job is considered out of compliance if any of its clusters no longer\ncomply with their updated policies.\n\nThe get and list compliance APIs allow you to view the policy compliance status of a job.\nThe enforce compliance API allows you to update a job so that it becomes compliant with all of its policies.", + "package": { + "name": "jobs" + }, + "docs_group": "lakeflow", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "EnforceCompliance", + "description": "Updates a job so the job clusters that are created when running\nthe job (specified in `new_cluster`) are compliant with the\ncurrent versions of their respective cluster policies.\nAll-purpose clusters used in the job will not be updated.", + "summary": "Enforce job policy compliance.", + "path": "/api/2.0/policies/jobs/enforce-compliance", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "EnforcePolicyComplianceRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "job_id", + "description": "The ID of the job you want to enforce policy compliance on.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "job_id", + "description": "The ID of the job you want to enforce policy compliance on.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "EnforcePolicyComplianceResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "job_id", + "description": "The ID of the job you want to enforce policy compliance on.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "validate_only", + "description": "If set, previews changes made to the job to comply with its policy, but\ndoes not update the job.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "job_id", + "description": "The ID of the job you want to enforce policy compliance on.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "GetCompliance", + "description": "Returns the policy compliance status of a job. Jobs could be out of\ncompliance if a cluster policy they use was updated after the job was\nlast edited and some of its job clusters no longer comply with\ntheir updated policies.", + "summary": "Get job policy compliance.", + "path": "/api/2.0/policies/jobs/get-compliance", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetPolicyComplianceRequest", + "is_object": true, + "required_fields": [ + { + "name": "job_id", + "description": "The ID of the job whose compliance status you are requesting.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "job_id", + "description": "The ID of the job whose compliance status you are requesting.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "GetPolicyComplianceResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "job_id", + "description": "The ID of the job whose compliance status you are requesting.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "job_id", + "description": "The ID of the job whose compliance status you are requesting.", + "required": true, + "is_query": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "ListCompliance", + "description": "Returns the policy compliance status of all jobs that use a\ngiven policy. Jobs could be out of compliance if a cluster policy they\nuse was updated after the job was last edited and its job\nclusters no longer comply with the updated policy.", + "summary": "List job policy compliance.", + "path": "/api/2.0/policies/jobs/list-compliance", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListJobComplianceRequest", + "is_object": true, + "required_fields": [ + { + "name": "policy_id", + "description": "Canonical unique identifier for the cluster policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "policy_id", + "description": "Canonical unique identifier for the cluster policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListJobComplianceForPolicyResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Use this field to specify the maximum number of results to be returned by the server.\nThe server may further constrain the maximum number of results returned in a\nsingle page.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token that can be used to navigate to the next page or previous page as\nreturned by `next_page_token` or `prev_page_token`.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "policy_id", + "description": "Canonical unique identifier for the cluster policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "policy_id", + "description": "Canonical unique identifier for the cluster policy.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token that can be used to navigate to the next page or previous page as\nreturned by `next_page_token` or `prev_page_token`.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "compute.PolicyFamilies", + "name": "PolicyFamilies", + "description": "View available policy families. A policy family contains a policy definition providing best\npractices for configuring clusters for a particular use case.\n\nDatabricks manages and provides policy families for several common cluster use cases. You\ncannot create, edit, or delete policy families.\n\nPolicy families cannot be used directly to create clusters. Instead, you create cluster\npolicies using a policy family. Cluster policies created using a policy family inherit the\npolicy family's policy definition.", + "package": { + "name": "compute" + }, + "docs_group": "compute", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListPolicyFamiliesRequest" + } + }, + "methods": [ + { + "name": "Get", + "description": "Retrieve the information for an policy family based on its identifier and version", + "summary": "Get policy family information.", + "path": "/api/2.0/policy-families/{policy_family_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetPolicyFamilyRequest", + "is_object": true, + "required_fields": [ + { + "name": "policy_family_id", + "description": "The family ID about which to retrieve information.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "policy_family_id", + "description": "The family ID about which to retrieve information.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PolicyFamily", + "is_object": true + }, + "all_fields": [ + { + "name": "policy_family_id", + "description": "The family ID about which to retrieve information.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "The version number for the family to fetch. Defaults to the latest version.", + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "policy_family_id", + "description": "The family ID about which to retrieve information.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Returns the list of policy definition types available to use at their latest version. This API is paginated.", + "summary": "List policy families.", + "path": "/api/2.0/policy-families", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListPolicyFamiliesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListPolicyFamiliesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "max_results", + "description": "Maximum number of policy families to return.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "page_token", + "description": "A token that can be used to get the next page of results.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A token that can be used to get the next page of results.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "postgres.Postgres", + "name": "Postgres", + "description": "Use the Postgres API to create and manage Lakebase Autoscaling Postgres infrastructure, including projects, branches, compute endpoints, and roles.\n\nThis API manages database infrastructure only. To query or modify data, use the Data API or direct SQL connections.\n\n**About resource IDs and names**\n\nResources are identified by hierarchical resource names like `projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}`. The `name` field on each resource contains this full path and is output-only. Note that `name` refers to this resource path, not the user-visible `display_name`.", + "package": { + "name": "postgres" + }, + "docs_group": "postgres", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListBranchesRequest" + } + }, + "methods": [ + { + "name": "CreateBranch", + "description": "Creates a new database branch in the project.", + "summary": "Create a Branch.", + "path": "/api/2.0/postgres/{parent=projects/*}/branches", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateBranchRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "The Project where this Branch will be created.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "branch", + "description": "The Branch to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Branch", + "is_object": true + } + }, + { + "name": "branch_id", + "description": "The ID to use for the Branch. This becomes the final component of the branch's resource name.\nThe ID is required and must be 1-63 characters long, start with a lowercase letter, and contain only lowercase letters, numbers, and hyphens.\nFor example, `development` becomes `projects/my-app/branches/development`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The Project where this Branch will be created.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "branch_id", + "description": "The ID to use for the Branch. This becomes the final component of the branch's resource name.\nThe ID is required and must be 1-63 characters long, start with a lowercase letter, and contain only lowercase letters, numbers, and hyphens.\nFor example, `development` becomes `projects/my-app/branches/development`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "branch", + "description": "The Branch to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Branch", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "branch", + "description": "The Branch to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Branch", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "branch", + "description": "The Branch to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Branch", + "is_object": true + } + }, + { + "name": "branch_id", + "description": "The ID to use for the Branch. This becomes the final component of the branch's resource name.\nThe ID is required and must be 1-63 characters long, start with a lowercase letter, and contain only lowercase letters, numbers, and hyphens.\nFor example, `development` becomes `projects/my-app/branches/development`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The Project where this Branch will be created.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "replace_existing", + "description": "If true, update the branch if it already exists instead of returning an error.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "branch_id", + "description": "The part of the name, chosen by the user when the resource was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "A timestamp indicating when the branch was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "name", + "description": "Output only. The full resource path of the branch.\nFormat: projects/{project_id}/branches/{branch_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The project containing this branch (API resource hierarchy).\nFormat: projects/{project_id}\n\nNote: This field indicates where the branch exists in the resource hierarchy.\nFor point-in-time branching from another branch, see `status.source_branch`.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "The spec contains the branch configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "BranchSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "The current status of a Branch.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "BranchStatus", + "is_object": true + } + }, + { + "name": "uid", + "description": "System-generated unique ID for the branch.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "A timestamp indicating when the branch was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The Project where this Branch will be created.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "branch_id", + "description": "The ID to use for the Branch. This becomes the final component of the branch's resource name.\nThe ID is required and must be 1-63 characters long, start with a lowercase letter, and contain only lowercase letters, numbers, and hyphens.\nFor example, `development` becomes `projects/my-app/branches/development`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "CreateCatalog", + "description": "Register a Postgres database in the Unity Catalog.", + "summary": "Register a Database in UC.", + "path": "/api/2.0/postgres/catalogs", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateCatalogRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "catalog", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Catalog", + "is_object": true + } + }, + { + "name": "catalog_id", + "description": "The ID in the Unity Catalog.\nIt becomes the full resource name, for example \"my_catalog\" becomes \"catalogs/my_catalog\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "catalog_id", + "description": "The ID in the Unity Catalog.\nIt becomes the full resource name, for example \"my_catalog\" becomes \"catalogs/my_catalog\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "catalog", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Catalog", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "catalog", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Catalog", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "catalog", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Catalog", + "is_object": true + } + }, + { + "name": "catalog_id", + "description": "The ID in the Unity Catalog.\nIt becomes the full resource name, for example \"my_catalog\" becomes \"catalogs/my_catalog\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_id", + "description": "The part of the name, chosen by the user when the resource was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "A timestamp indicating when the catalog was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "name", + "description": "Output only. The full resource path of the catalog.\n\nFormat: \"catalogs/{catalog_id}\".", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "The desired state of the Catalog.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CatalogCatalogSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "The observed state of the Catalog.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CatalogCatalogStatus", + "is_object": true + } + }, + { + "name": "uid", + "description": "System-generated unique identifier for the catalog.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "A timestamp indicating when the catalog was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "catalog_id", + "description": "The ID in the Unity Catalog.\nIt becomes the full resource name, for example \"my_catalog\" becomes \"catalogs/my_catalog\".", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "CreateCdfConfig", + "description": "Create a CDF configuration that materializes the change data feed for all\ntables in a Postgres schema as open-format Delta tables in Unity Catalog.\nOnce created, each table's change history is continuously written to its\ncorresponding Lakehouse table.", + "summary": "Create a change data feed configuration.", + "path": "/api/2.0/postgres/{parent=projects/*/branches/*/databases/*}/cdf-configs", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateCdfConfigRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "The parent database under which to create the CdfConfig.\nFormat: projects/{project}/branches/{branch}/databases/{database}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "cdf_config", + "description": "The CdfConfig to create. The catalog, schema, and postgres_schema fields are\nrequired; service_principal is optional. All other fields are output only\nand ignored on input.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CdfConfig", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The parent database under which to create the CdfConfig.\nFormat: projects/{project}/branches/{branch}/databases/{database}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cdf_config", + "description": "The CdfConfig to create. The catalog, schema, and postgres_schema fields are\nrequired; service_principal is optional. All other fields are output only\nand ignored on input.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CdfConfig", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "cdf_config", + "description": "The CdfConfig to create. The catalog, schema, and postgres_schema fields are\nrequired; service_principal is optional. All other fields are output only\nand ignored on input.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CdfConfig", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "catalog", + "description": "The Unity Catalog catalog that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema", + "description": "The Unity Catalog schema that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "postgres_schema", + "description": "The Postgres schema this CdfConfig replicates from. Unique within the\nparent database. Set at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "catalog", + "description": "The Unity Catalog catalog that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema", + "description": "The Unity Catalog schema that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "postgres_schema", + "description": "The Postgres schema this CdfConfig replicates from. Unique within the\nparent database. Set at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "cdf_config", + "description": "The CdfConfig to create. The catalog, schema, and postgres_schema fields are\nrequired; service_principal is optional. All other fields are output only\nand ignored on input.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CdfConfig", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "catalog", + "description": "The Unity Catalog catalog that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema", + "description": "The Unity Catalog schema that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "postgres_schema", + "description": "The Postgres schema this CdfConfig replicates from. Unique within the\nparent database. Set at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "catalog", + "description": "The Unity Catalog catalog that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema", + "description": "The Unity Catalog schema that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "postgres_schema", + "description": "The Postgres schema this CdfConfig replicates from. Unique within the\nparent database. Set at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "cdf_config_id", + "description": "The user-specified id for the CdfConfig, forming the final segment of its\nresource name. Must match the pattern `[a-z][a-z0-9_]{0,62}`. Defaults to\nthe Postgres schema name when omitted.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The parent database under which to create the CdfConfig.\nFormat: projects/{project}/branches/{branch}/databases/{database}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog", + "description": "The Unity Catalog catalog that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "cdf_config_id", + "description": "The user-specified id; equals the final segment of `name`. Defaults to the\nPostgres schema name for configs without an explicit id.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "When the CdfConfig was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "name", + "description": "Output only. The full resource name of the CdfConfig.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "postgres_schema", + "description": "The Postgres schema this CdfConfig replicates from. Unique within the\nparent database. Set at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema", + "description": "The Unity Catalog schema that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The parent database under which to create the CdfConfig.\nFormat: projects/{project}/branches/{branch}/databases/{database}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog", + "description": "The Unity Catalog catalog that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema", + "description": "The Unity Catalog schema that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "postgres_schema", + "description": "The Postgres schema this CdfConfig replicates from. Unique within the\nparent database. Set at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "CreateDataApi", + "description": "Enable Data API for a database.", + "summary": "Enable Data API for a database.", + "path": "/api/2.0/postgres/{parent=projects/*/branches/*/databases/*}/data-api", + "can_use_json": true, + "is_crud_create": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateDataApiRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "Parent database: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "data_api", + "description": "The Data API configuration to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataApi", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Parent database: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "data_api", + "description": "The Data API configuration to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataApi", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "data_api", + "description": "The Data API configuration to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataApi", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "data_api", + "description": "The Data API configuration to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataApi", + "is_object": true + } + }, + { + "name": "parent", + "description": "Parent database: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "A timestamp indicating when the Data API was first enabled.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "name", + "description": "Resource name: projects/{project_id}/branches/{branch_id}/databases/{database_id}/data-api", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The database containing this Data API configuration.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "The desired Data API configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DataApiDataApiSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "The observed Data API state (read-only).", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DataApiDataApiStatus", + "is_object": true + } + }, + { + "name": "update_time", + "description": "A timestamp indicating when the Data API configuration was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Parent database: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "CreateDatabase", + "description": "Create a Database.\n\nCreates a database in the specified branch. A branch can have multiple databases.", + "summary": "Create a Database.", + "path": "/api/2.0/postgres/{parent=projects/*/branches/*}/databases", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateDatabaseRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "The Branch where this Database will be created.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "database", + "description": "The desired specification of a Database.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Database", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The Branch where this Database will be created.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "database", + "description": "The desired specification of a Database.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Database", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "database", + "description": "The desired specification of a Database.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Database", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "database", + "description": "The desired specification of a Database.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Database", + "is_object": true + } + }, + { + "name": "database_id", + "description": "The ID to use for the Database, which will become the final component of\nthe database's resource name.\nThis ID becomes the database name in postgres.\n\nThis value should be 4-63 characters, and only use characters available in DNS names,\nas defined by RFC-1123\n\nIf database_id is not specified in the request, it is generated automatically.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The Branch where this Database will be created.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "replace_existing", + "description": "If true, update the database if it already exists instead of returning an\nerror.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "create_time", + "description": "A timestamp indicating when the database was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "database_id", + "description": "The part of the name, chosen by the user when the resource was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The resource name of the database.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The branch containing this database.\nFormat: projects/{project_id}/branches/{branch_id}", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "The desired state of the Database.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DatabaseDatabaseSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "The observed state of the Database.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DatabaseDatabaseStatus", + "is_object": true + } + }, + { + "name": "update_time", + "description": "A timestamp indicating when the database was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The Branch where this Database will be created.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "CreateEndpoint", + "description": "Creates a new compute endpoint in the branch.", + "summary": "Create an Endpoint.", + "path": "/api/2.0/postgres/{parent=projects/*/branches/*}/endpoints", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateEndpointRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "The Branch where this Endpoint will be created.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint", + "description": "The Endpoint to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true + } + }, + { + "name": "endpoint_id", + "description": "The ID to use for the Endpoint. This becomes the final component of the endpoint's resource name.\nThe ID is required and must be 1-63 characters long, start with a lowercase letter, and contain only lowercase letters, numbers, and hyphens.\nFor example, `primary` becomes `projects/my-app/branches/development/endpoints/primary`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The Branch where this Endpoint will be created.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_id", + "description": "The ID to use for the Endpoint. This becomes the final component of the endpoint's resource name.\nThe ID is required and must be 1-63 characters long, start with a lowercase letter, and contain only lowercase letters, numbers, and hyphens.\nFor example, `primary` becomes `projects/my-app/branches/development/endpoints/primary`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "endpoint", + "description": "The Endpoint to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "endpoint", + "description": "The Endpoint to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "endpoint", + "description": "The Endpoint to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true + } + }, + { + "name": "endpoint_id", + "description": "The ID to use for the Endpoint. This becomes the final component of the endpoint's resource name.\nThe ID is required and must be 1-63 characters long, start with a lowercase letter, and contain only lowercase letters, numbers, and hyphens.\nFor example, `primary` becomes `projects/my-app/branches/development/endpoints/primary`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The Branch where this Endpoint will be created.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "replace_existing", + "description": "If true, update the endpoint if it already exists instead of returning an error.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "create_time", + "description": "A timestamp indicating when the compute endpoint was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "endpoint_id", + "description": "The part of the name, chosen by the user when the resource was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Output only. The full resource path of the endpoint.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The branch containing this endpoint (API resource hierarchy).\nFormat: projects/{project_id}/branches/{branch_id}", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "The spec contains the compute endpoint configuration, including autoscaling limits, suspend timeout, and disabled state.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EndpointSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "Current operational status of the compute endpoint.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EndpointStatus", + "is_object": true + } + }, + { + "name": "uid", + "description": "System-generated unique ID for the endpoint.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "A timestamp indicating when the compute endpoint was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The Branch where this Endpoint will be created.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_id", + "description": "The ID to use for the Endpoint. This becomes the final component of the endpoint's resource name.\nThe ID is required and must be 1-63 characters long, start with a lowercase letter, and contain only lowercase letters, numbers, and hyphens.\nFor example, `primary` becomes `projects/my-app/branches/development/endpoints/primary`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "CreateProject", + "description": "Creates a new Lakebase Autoscaling Postgres database project, which contains branches and compute endpoints.", + "summary": "Create a Project.", + "path": "/api/2.0/postgres/projects", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateProjectRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "project", + "description": "The Project to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Project", + "is_object": true + } + }, + { + "name": "project_id", + "description": "The ID to use for the Project. This becomes the final component of the project's resource name.\nThe ID is required and must be 1-63 characters long, start with a lowercase letter, and contain only lowercase letters, numbers, and hyphens.\nFor example, `my-app` becomes `projects/my-app`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "project_id", + "description": "The ID to use for the Project. This becomes the final component of the project's resource name.\nThe ID is required and must be 1-63 characters long, start with a lowercase letter, and contain only lowercase letters, numbers, and hyphens.\nFor example, `my-app` becomes `projects/my-app`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "project", + "description": "The Project to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Project", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "project", + "description": "The Project to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Project", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "project", + "description": "The Project to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Project", + "is_object": true + } + }, + { + "name": "project_id", + "description": "The ID to use for the Project. This becomes the final component of the project's resource name.\nThe ID is required and must be 1-63 characters long, start with a lowercase letter, and contain only lowercase letters, numbers, and hyphens.\nFor example, `my-app` becomes `projects/my-app`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "A timestamp indicating when the project was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "delete_time", + "description": "A timestamp indicating when the project was soft-deleted.\nEmpty if the project is not deleted, otherwise set to a timestamp in the past.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "initial_branch_spec", + "description": "Configuration for the initial default branch created as part of project creation.\nAllows overriding branch protection. These settings only apply at creation time\nand do not affect resources created after project creation.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "InitialBranchSpec", + "is_object": true + } + }, + { + "name": "initial_endpoint_spec", + "description": "Configuration settings for the initial Read/Write endpoint created inside the initial branch for a newly\ncreated project. If omitted, the initial endpoint created will have default settings, without high availability\nconfigured. This field does not apply to any endpoints created after project creation. Use\nspec.default_endpoint_settings to configure default settings for endpoints created after project creation.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "InitialEndpointSpec", + "is_object": true + } + }, + { + "name": "name", + "description": "Output only. The full resource path of the project.\nFormat: projects/{project_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "project_id", + "description": "The part of the name, chosen by the user when the resource was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "purge_time", + "description": "A timestamp indicating when the project is scheduled for permanent deletion.\nEmpty if the project is not deleted, otherwise set to a timestamp in the future.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "spec", + "description": "The spec contains the project configuration, including display_name, pg_version (Postgres version), history_retention_duration, and default_endpoint_settings.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ProjectSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "The current status of a Project.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ProjectStatus", + "is_object": true + } + }, + { + "name": "uid", + "description": "System-generated unique ID for the project.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "A timestamp indicating when the project was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "project_id", + "description": "The ID to use for the Project. This becomes the final component of the project's resource name.\nThe ID is required and must be 1-63 characters long, start with a lowercase letter, and contain only lowercase letters, numbers, and hyphens.\nFor example, `my-app` becomes `projects/my-app`.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "CreateRole", + "description": "Creates a new Postgres role in the branch.", + "summary": "Create a Postgres Role for a Branch.", + "path": "/api/2.0/postgres/{parent=projects/*/branches/*}/roles", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateRoleRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "The Branch where this Role is created.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "role", + "description": "The desired specification of a Role.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Role", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The Branch where this Role is created.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "role", + "description": "The desired specification of a Role.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Role", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "role", + "description": "The desired specification of a Role.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Role", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "parent", + "description": "The Branch where this Role is created.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "replace_existing", + "description": "If true, update the role if it already exists instead of returning an\nerror.\n\nWhen the role already exists, the provided `role` spec fully replaces the\nexisting one: `membership_roles` is overwritten, not merged. Leaving\n`membership_roles` empty clears all of the role's existing memberships,\nincluding `DATABRICKS_SUPERUSER`. Always send the complete desired list of\nmemberships when using this field.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "role", + "description": "The desired specification of a Role.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Role", + "is_object": true + } + }, + { + "name": "role_id", + "description": "The ID to use for the Role, which will become the final component of\nthe role's resource name.\nThis ID becomes the role in Postgres.\n\nThis value should be 4-63 characters, and valid characters\nare lowercase letters, numbers, and hyphens, as defined by RFC 1123.\n\nIf role_id is not specified in the request, it is generated automatically.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "name", + "description": "Output only. The full resource path of the role.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The Branch where this Role exists.\nFormat: projects/{project_id}/branches/{branch_id}", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "role_id", + "description": "The part of the name, chosen by the user when the resource was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "The spec contains the role configuration, including identity type, authentication method, and role attributes.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RoleRoleSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "Current status of the role, including its identity type, authentication method, and role attributes.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RoleRoleStatus", + "is_object": true + } + }, + { + "name": "update_time", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The Branch where this Role is created.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "CreateSnapshot", + "description": "Creates a snapshot, an immutable point-in-time copy of a branch's data, within the project.", + "summary": "Create a Snapshot.", + "path": "/api/2.0/postgres/{parent=projects/*}/snapshots", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateSnapshotRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "The project in which to create the snapshot.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "snapshot", + "description": "The snapshot to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Snapshot", + "is_object": true + } + }, + { + "name": "snapshot_id", + "description": "Client-chosen ID for the snapshot. It becomes the final segment of the\nsnapshot resource name and cannot be changed after creation.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The project in which to create the snapshot.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "snapshot_id", + "description": "Client-chosen ID for the snapshot. It becomes the final segment of the\nsnapshot resource name and cannot be changed after creation.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "snapshot", + "description": "The snapshot to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Snapshot", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "snapshot", + "description": "The snapshot to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Snapshot", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "parent", + "description": "The project in which to create the snapshot.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "snapshot", + "description": "The snapshot to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Snapshot", + "is_object": true + } + }, + { + "name": "snapshot_id", + "description": "Client-chosen ID for the snapshot. It becomes the final segment of the\nsnapshot resource name and cannot be changed after creation.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "When the snapshot was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "name", + "description": "The resource name of the snapshot.\nFormat: projects/{project_id}/snapshots/{snapshot_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "snapshot_id", + "description": "The user-chosen ID; the final segment of `name`.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "Client-provided configuration of the snapshot.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SnapshotSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "Server-observed state of the snapshot.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SnapshotStatus", + "is_object": true + } + }, + { + "name": "uid", + "description": "Unique system-generated ID for the snapshot.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The project in which to create the snapshot.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "snapshot_id", + "description": "Client-chosen ID for the snapshot. It becomes the final segment of the\nsnapshot resource name and cannot be changed after creation.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "CreateSyncedTable", + "description": "Create a Synced Table.", + "summary": "Create a Synced Database Table.", + "path": "/api/2.0/postgres/synced_tables", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateSyncedTableRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "synced_table", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SyncedTable", + "is_object": true + } + }, + { + "name": "synced_table_id", + "description": "The ID to use for the Synced Table. This becomes the final component of the SyncedTable's resource name.\nID is required and is the synced table name, containing (catalog, schema, table) tuple.\nElements of the tuple are the UC entity names.\n\nExample: \"{catalog}.{schema}.{table}\"\n\nsynced_table_id represents both of the following:\n\n1. An online VIEW virtual table in the Unity Catalog accessible via the Lakehouse Federation.\n2. Postgres table named \"{table}\" in schema \"{schema}\" in the connected Postgres database", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "synced_table_id", + "description": "The ID to use for the Synced Table. This becomes the final component of the SyncedTable's resource name.\nID is required and is the synced table name, containing (catalog, schema, table) tuple.\nElements of the tuple are the UC entity names.\n\nExample: \"{catalog}.{schema}.{table}\"\n\nsynced_table_id represents both of the following:\n\n1. An online VIEW virtual table in the Unity Catalog accessible via the Lakehouse Federation.\n2. Postgres table named \"{table}\" in schema \"{schema}\" in the connected Postgres database", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "synced_table", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SyncedTable", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "synced_table", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SyncedTable", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "synced_table", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SyncedTable", + "is_object": true + } + }, + { + "name": "synced_table_id", + "description": "The ID to use for the Synced Table. This becomes the final component of the SyncedTable's resource name.\nID is required and is the synced table name, containing (catalog, schema, table) tuple.\nElements of the tuple are the UC entity names.\n\nExample: \"{catalog}.{schema}.{table}\"\n\nsynced_table_id represents both of the following:\n\n1. An online VIEW virtual table in the Unity Catalog accessible via the Lakehouse Federation.\n2. Postgres table named \"{table}\" in schema \"{schema}\" in the connected Postgres database", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "name", + "description": "Output only. The Full resource name of the synced table in Postgres\nwhere (catalog, schema, table) are the UC entity names.\n\nFormat \"synced_tables/{catalog}.{schema}.{table}\"\n\nFor the corresponding source table in the Unity catalog look for the \"source_table_full_name\" attribute.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "Configuration details of the synced table, such as the source table, scheduling policy, etc.\nThis attribute is specified at creation time and most fields are returned as is on subsequent queries.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SyncedTableSyncedTableSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "Synced Table data synchronization status.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SyncedTableSyncedTableStatus", + "is_object": true + } + }, + { + "name": "synced_table_id", + "description": "The part of the name, chosen by the user when the resource was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "uid", + "description": "The Unity Catalog table ID for this synced table.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "synced_table_id", + "description": "The ID to use for the Synced Table. This becomes the final component of the SyncedTable's resource name.\nID is required and is the synced table name, containing (catalog, schema, table) tuple.\nElements of the tuple are the UC entity names.\n\nExample: \"{catalog}.{schema}.{table}\"\n\nsynced_table_id represents both of the following:\n\n1. An online VIEW virtual table in the Unity Catalog accessible via the Lakehouse Federation.\n2. Postgres table named \"{table}\" in schema \"{schema}\" in the connected Postgres database", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "DeleteBranch", + "description": "Deletes the specified database branch.", + "summary": "Delete a Branch.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteBranchRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The full resource path of the branch to delete.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The full resource path of the branch to delete.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The full resource path of the branch to delete.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "purge", + "description": "If true, permanently delete the branch; if false, soft delete.", + "is_query": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The full resource path of the branch to delete.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": { + "is_empty_response": true + } + } + }, + { + "name": "DeleteCatalog", + "description": "Delete a Database Catalog.", + "summary": "Delete a Database Catalog.", + "path": "/api/2.0/postgres/{name=catalogs/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteCatalogRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The full resource path of the catalog to delete.\n\nFormat: \"catalogs/{catalog_id}\".", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The full resource path of the catalog to delete.\n\nFormat: \"catalogs/{catalog_id}\".", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The full resource path of the catalog to delete.\n\nFormat: \"catalogs/{catalog_id}\".", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The full resource path of the catalog to delete.\n\nFormat: \"catalogs/{catalog_id}\".", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": { + "is_empty_response": true + } + } + }, + { + "name": "DeleteCdfConfig", + "description": "Delete a CDF configuration and stop materializing the change data feed. When\nforce=true, also drops the Delta tables in Unity Catalog. When force=false\n(default), the existing tables are preserved at their last state.", + "summary": "Delete a change data feed configuration.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/databases/*/cdf-configs/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteCdfConfigRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the CdfConfig to delete.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the CdfConfig to delete.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "force", + "description": "When true, also drops the replicated Delta tables in Unity Catalog. When\nfalse (the default), the replicated tables are preserved at their last\nsynced state.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "The resource name of the CdfConfig to delete.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the CdfConfig to delete.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": { + "is_empty_response": true + } + } + }, + { + "name": "DeleteDataApi", + "description": "Disable Data API for a database.", + "summary": "Disable Data API for a database.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/databases/*/data-api}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteDataApiRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name: projects/{project_id}/branches/{branch_id}/databases/{database_id}/data-api", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name: projects/{project_id}/branches/{branch_id}/databases/{database_id}/data-api", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name: projects/{project_id}/branches/{branch_id}/databases/{database_id}/data-api", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name: projects/{project_id}/branches/{branch_id}/databases/{database_id}/data-api", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": { + "is_empty_response": true + } + } + }, + { + "name": "DeleteDatabase", + "description": "Delete a Database.", + "summary": "Delete a Database.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/databases/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteDatabaseRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the postgres database.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the postgres database.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the postgres database.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the postgres database.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": { + "is_empty_response": true + } + } + }, + { + "name": "DeleteEndpoint", + "description": "Deletes the specified compute endpoint.", + "summary": "Delete an Endpoint.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/endpoints/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteEndpointRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The full resource path of the endpoint to delete.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The full resource path of the endpoint to delete.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The full resource path of the endpoint to delete.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The full resource path of the endpoint to delete.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": { + "is_empty_response": true + } + } + }, + { + "name": "DeleteProject", + "description": "Deletes the specified database project.", + "summary": "Delete a Project.", + "path": "/api/2.0/postgres/{name=projects/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteProjectRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The full resource path of the project to delete.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The full resource path of the project to delete.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The full resource path of the project to delete.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "purge", + "description": "If true, permanently deletes the project (hard delete).\nIf false or unset, performs a soft delete.", + "is_query": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The full resource path of the project to delete.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": { + "is_empty_response": true + } + } + }, + { + "name": "DeleteRole", + "description": "Deletes the specified Postgres role.", + "summary": "Delete a Postgres Role from a Branch.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/roles/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteRoleRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The full resource path of the role to delete.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The full resource path of the role to delete.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The full resource path of the role to delete.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "reassign_owned_to", + "description": "Reassign objects. If this is set, all objects owned by the role are\nreassigned to the role specified in this parameter.\n\nNOTE: setting this requires spinning up a compute to succeed, since it involves running\nSQL queries.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The full resource path of the role to delete.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": { + "is_empty_response": true + } + } + }, + { + "name": "DeleteSnapshot", + "description": "Deletes the specified snapshot.", + "summary": "Delete a Snapshot.", + "path": "/api/2.0/postgres/{name=projects/*/snapshots/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteSnapshotRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the snapshot to delete.\nFormat: projects/{project_id}/snapshots/{snapshot_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the snapshot to delete.\nFormat: projects/{project_id}/snapshots/{snapshot_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the snapshot to delete.\nFormat: projects/{project_id}/snapshots/{snapshot_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the snapshot to delete.\nFormat: projects/{project_id}/snapshots/{snapshot_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": { + "is_empty_response": true + } + } + }, + { + "name": "DeleteSyncedTable", + "description": "Delete a Synced Table.", + "summary": "Delete a Synced Database Table.", + "path": "/api/2.0/postgres/{name=synced_tables/*}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteSyncedTableRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The Full resource name of the synced table, of the format \"synced_tables/{catalog}.{schema}.{table}\",\nwhere (catalog, schema, table) are the UC entity names.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The Full resource name of the synced table, of the format \"synced_tables/{catalog}.{schema}.{table}\",\nwhere (catalog, schema, table) are the UC entity names.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The Full resource name of the synced table, of the format \"synced_tables/{catalog}.{schema}.{table}\",\nwhere (catalog, schema, table) are the UC entity names.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The Full resource name of the synced table, of the format \"synced_tables/{catalog}.{schema}.{table}\",\nwhere (catalog, schema, table) are the UC entity names.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": { + "is_empty_response": true + } + } + }, + { + "name": "GenerateDatabaseCredential", + "description": "Generate OAuth credentials for a Postgres database.", + "summary": "Generate OAuth credentials for a Postgres database.", + "path": "/api/2.0/postgres/credentials", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenerateDatabaseCredentialRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "endpoint", + "description": "The endpoint resource name for which this credential will be generated.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "endpoint", + "description": "The endpoint resource name for which this credential will be generated.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DatabaseCredential", + "is_object": true + }, + "all_fields": [ + { + "name": "claims", + "description": "The returned token will be scoped to UC tables with the specified permissions.", + "is_request_body_field": true, + "entity": { + "pascal_name": "RequestedClaimsList", + "array_value": { + "pascal_name": "RequestedClaims", + "is_object": true + } + } + }, + { + "name": "endpoint", + "description": "The endpoint resource name for which this credential will be generated.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "expire_time", + "description": "Timestamp in UTC of when this credential should expire.\nMust be at least 300 seconds (5 minutes) and at most 1 hour from the current time.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "ttl", + "description": "The requested time-to-live for the generated credential token.\nMust be at least 300 seconds (5 minutes) and at most 3600 seconds (1 hour).", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_duration": true + } + } + ], + "required_positional_arguments": [ + { + "name": "endpoint", + "description": "The endpoint resource name for which this credential will be generated.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetBranch", + "description": "Retrieves information about the specified database branch.", + "summary": "Get a Branch.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetBranchRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The full resource path of the branch to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The full resource path of the branch to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Branch", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The full resource path of the branch to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The full resource path of the branch to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetCatalog", + "description": "Get a Database Catalog.", + "summary": "Get a Database Catalog.", + "path": "/api/2.0/postgres/{name=catalogs/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetCatalogRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The full resource path of the catalog to retrieve.\n\nFormat: \"catalogs/{catalog_id}\".", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The full resource path of the catalog to retrieve.\n\nFormat: \"catalogs/{catalog_id}\".", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Catalog", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The full resource path of the catalog to retrieve.\n\nFormat: \"catalogs/{catalog_id}\".", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The full resource path of the catalog to retrieve.\n\nFormat: \"catalogs/{catalog_id}\".", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetCdfConfig", + "description": "Get a single Lakebase CDF configuration, including the source Postgres\nschema and target Unity Catalog schema.", + "summary": "Get a change data feed configuration.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/databases/*/cdf-configs/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetCdfConfigRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the CdfConfig to retrieve.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the CdfConfig to retrieve.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CdfConfig", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "catalog", + "description": "The Unity Catalog catalog that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema", + "description": "The Unity Catalog schema that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "postgres_schema", + "description": "The Postgres schema this CdfConfig replicates from. Unique within the\nparent database. Set at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "catalog", + "description": "The Unity Catalog catalog that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema", + "description": "The Unity Catalog schema that replicated tables are written into.\nSet at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "postgres_schema", + "description": "The Postgres schema this CdfConfig replicates from. Unique within the\nparent database. Set at creation; the CdfConfig is immutable.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the CdfConfig to retrieve.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the CdfConfig to retrieve.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetCdfStatus", + "description": "Get the CDF status of a single table within a Lakebase CDF configuration,\nincluding its current state and the last committed position in the feed.", + "summary": "Get a change data feed status.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/databases/*/cdf-configs/*/cdf-statuses/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetCdfStatusRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the CdfStatus to retrieve.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}/cdf-statuses/{cdf_status}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the CdfStatus to retrieve.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}/cdf-statuses/{cdf_status}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CdfStatus", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the CdfStatus to retrieve.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}/cdf-statuses/{cdf_status}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the CdfStatus to retrieve.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}/cdf-statuses/{cdf_status}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetDataApi", + "description": "Get Data API configuration for a database.", + "summary": "Get Data API configuration.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/databases/*/data-api}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetDataApiRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name: projects/{project_id}/branches/{branch_id}/databases/{database_id}/data-api", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name: projects/{project_id}/branches/{branch_id}/databases/{database_id}/data-api", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DataApi", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name: projects/{project_id}/branches/{branch_id}/databases/{database_id}/data-api", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name: projects/{project_id}/branches/{branch_id}/databases/{database_id}/data-api", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetDatabase", + "description": "Get a Database.", + "summary": "Get a Database.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/databases/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetDatabaseRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the Database to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the Database to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Database", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the Database to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the Database to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetEndpoint", + "description": "Retrieves information about the specified compute endpoint, including its connection details and operational state.", + "summary": "Get an Endpoint.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/endpoints/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetEndpointRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The full resource path of the endpoint to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The full resource path of the endpoint to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Endpoint", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The full resource path of the endpoint to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The full resource path of the endpoint to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetOperation", + "description": "Retrieves the status of a long-running operation.", + "summary": "Get an Operation.", + "path": "/api/2.0/postgres/{name=projects/*/operations/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetOperationRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetProject", + "description": "Retrieves information about the specified database project.", + "summary": "Get a Project.", + "path": "/api/2.0/postgres/{name=projects/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetProjectRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The full resource path of the project to retrieve.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The full resource path of the project to retrieve.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Project", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The full resource path of the project to retrieve.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The full resource path of the project to retrieve.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetRole", + "description": "Retrieves information about the specified Postgres role, including its authentication method and permissions.", + "summary": "Get a Postgres Role for a Branch.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/roles/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetRoleRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The full resource path of the role to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The full resource path of the role to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Role", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The full resource path of the role to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The full resource path of the role to retrieve.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSnapshot", + "description": "Retrieves information about the specified snapshot.", + "summary": "Get a Snapshot.", + "path": "/api/2.0/postgres/{name=projects/*/snapshots/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetSnapshotRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the snapshot to retrieve.\nFormat: projects/{project_id}/snapshots/{snapshot_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the snapshot to retrieve.\nFormat: projects/{project_id}/snapshots/{snapshot_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Snapshot", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the snapshot to retrieve.\nFormat: projects/{project_id}/snapshots/{snapshot_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the snapshot to retrieve.\nFormat: projects/{project_id}/snapshots/{snapshot_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSnapshotSchedule", + "description": "Retrieves the snapshot schedule for a branch. A branch with no configured\nschedule returns an empty schedule (not NOT_FOUND).", + "summary": "Get a Snapshot Schedule.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/snapshot-schedule}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetSnapshotScheduleRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the branch's snapshot schedule.\nFormat: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the branch's snapshot schedule.\nFormat: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SnapshotSchedule", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the branch's snapshot schedule.\nFormat: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the branch's snapshot schedule.\nFormat: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSyncedTable", + "description": "Get a Synced Table.", + "summary": "Get a Synced Database Table.", + "path": "/api/2.0/postgres/{name=synced_tables/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetSyncedTableRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The Full resource name of the synced table.\nFormat: \"synced_tables/{catalog}.{schema}.{table}\",\nwhere (catalog, schema, table) are the entity names in the Unity Catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The Full resource name of the synced table.\nFormat: \"synced_tables/{catalog}.{schema}.{table}\",\nwhere (catalog, schema, table) are the entity names in the Unity Catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SyncedTable", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The Full resource name of the synced table.\nFormat: \"synced_tables/{catalog}.{schema}.{table}\",\nwhere (catalog, schema, table) are the entity names in the Unity Catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The Full resource name of the synced table.\nFormat: \"synced_tables/{catalog}.{schema}.{table}\",\nwhere (catalog, schema, table) are the entity names in the Unity Catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListBranches", + "description": "Returns a paginated list of database branches in the project.", + "summary": "List Branches.", + "path": "/api/2.0/postgres/{parent=projects/*}/branches", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListBranchesRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The Project that owns this collection of branches.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The Project that owns this collection of branches.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListBranchesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Upper bound for items returned. Cannot be negative.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Page token from a previous response. If not provided, returns the first page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The Project that owns this collection of branches.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "show_deleted", + "description": "Whether to include soft-deleted branches in the response.\nWhen true, deleted branches are included alongside active branches.\nPurged branches are never returned.", + "is_query": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The Project that owns this collection of branches.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Page token from a previous response. If not provided, returns the first page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListCdfConfigs", + "description": "List all CDF configurations for a Lakebase database. Each configuration maps\na Postgres schema to a Unity Catalog schema where the change data feed is\nmaterialized.", + "summary": "List change data feed configurations.", + "path": "/api/2.0/postgres/{parent=projects/*/branches/*/databases/*}/cdf-configs", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListCdfConfigsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The parent database to list CdfConfigs for.\nFormat: projects/{project}/branches/{branch}/databases/{database}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The parent database to list CdfConfigs for.\nFormat: projects/{project}/branches/{branch}/databases/{database}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListCdfConfigsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Maximum number of CdfConfigs to return.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token returned by a previous ListCdfConfigs call. Empty on the\nfirst page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The parent database to list CdfConfigs for.\nFormat: projects/{project}/branches/{branch}/databases/{database}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The parent database to list CdfConfigs for.\nFormat: projects/{project}/branches/{branch}/databases/{database}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token returned by a previous ListCdfConfigs call. Empty on the\nfirst page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListCdfStatuses", + "description": "List the per-table CDF statuses within a Lakebase CDF configuration. Each\nstatus shows whether a table's change data feed is snapshotting, streaming,\nor skipped.", + "summary": "List change data feed statuses.", + "path": "/api/2.0/postgres/{parent=projects/*/branches/*/databases/*/cdf-configs/*}/cdf-statuses", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListCdfStatusesRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The parent CdfConfig to list CdfStatuses for.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The parent CdfConfig to list CdfStatuses for.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListCdfStatusesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Maximum number of CdfStatuses to return.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token returned by a previous ListCdfStatuses call. Empty on the\nfirst page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The parent CdfConfig to list CdfStatuses for.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The parent CdfConfig to list CdfStatuses for.\nFormat: projects/{project}/branches/{branch}/databases/{database}/cdf-configs/{cdf_config}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token returned by a previous ListCdfStatuses call. Empty on the\nfirst page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListDatabases", + "description": "List Databases.", + "summary": "List postgres databases in a branch.", + "path": "/api/2.0/postgres/{parent=projects/*/branches/*}/databases", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListDatabasesRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The Branch that owns this collection of databases.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The Branch that owns this collection of databases.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListDatabasesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Upper bound for items returned.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page of Databases. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The Branch that owns this collection of databases.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The Branch that owns this collection of databases.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page of Databases. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListEndpoints", + "description": "Returns a paginated list of compute endpoints in the branch.", + "summary": "List Endpoints.", + "path": "/api/2.0/postgres/{parent=projects/*/branches/*}/endpoints", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListEndpointsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The Branch that owns this collection of endpoints.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The Branch that owns this collection of endpoints.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListEndpointsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Upper bound for items returned. Cannot be negative.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Page token from a previous response. If not provided, returns the first page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The Branch that owns this collection of endpoints.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The Branch that owns this collection of endpoints.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Page token from a previous response. If not provided, returns the first page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListProjects", + "description": "Returns a paginated list of database projects in the workspace that the user has permission to access.", + "summary": "List Projects.", + "path": "/api/2.0/postgres/projects", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListProjectsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListProjectsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Upper bound for items returned. Cannot be negative. The maximum value is 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Page token from a previous response. If not provided, returns the first page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "show_deleted", + "description": "Whether to include soft-deleted projects in the response.\nWhen true, soft-deleted projects are included alongside active projects.\nHard-deleted and already-purged projects are never returned.", + "is_query": true, + "entity": { + "is_bool": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Page token from a previous response. If not provided, returns the first page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListRoles", + "description": "Returns a paginated list of Postgres roles in the branch.", + "summary": "List Postgres Roles for a Branch.", + "path": "/api/2.0/postgres/{parent=projects/*/branches/*}/roles", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListRolesRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The Branch that owns this collection of roles.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The Branch that owns this collection of roles.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListRolesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Upper bound for items returned. Cannot be negative.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Page token from a previous response. If not provided, returns the first page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The Branch that owns this collection of roles.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The Branch that owns this collection of roles.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Page token from a previous response. If not provided, returns the first page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListSnapshots", + "description": "Returns a paginated list of snapshots in the project.", + "summary": "List Snapshots.", + "path": "/api/2.0/postgres/{parent=projects/*}/snapshots", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListSnapshotsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The project that owns the snapshots.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The project that owns the snapshots.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListSnapshotsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Maximum number of snapshots to return per page.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Page token from a previous response; omit for the first page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The project that owns the snapshots.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The project that owns the snapshots.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Page token from a previous response; omit for the first page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "RevealRolePassword", + "description": "Reveals the current password for a password-authenticated Postgres role.", + "summary": "Reveal a Postgres Role password.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/roles/*}/password", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "RevealRolePasswordRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The full resource path of the role whose password should be revealed.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The full resource path of the role whose password should be revealed.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RevealRolePasswordResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The full resource path of the role whose password should be revealed.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The full resource path of the role whose password should be revealed.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UndeleteBranch", + "description": "Undeletes the specified database branch.", + "summary": "Undelete a Branch.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*}/undelete", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UndeleteBranchRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The full resource path of the branch to undelete.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The full resource path of the branch to undelete.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The full resource path of the branch to undelete.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The full resource path of the branch to undelete.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": { + "is_empty_response": true + } + } + }, + { + "name": "UndeleteProject", + "description": "Undeletes a soft-deleted project.", + "summary": "Undelete a Project.", + "path": "/api/2.0/postgres/{name=projects/*}/undelete", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UndeleteProjectRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The full resource path of the project to undelete.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The full resource path of the project to undelete.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The full resource path of the project to undelete.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The full resource path of the project to undelete.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": { + "is_empty_response": true + } + } + }, + { + "name": "UpdateBranch", + "description": "Updates the specified database branch. You can set this branch as the project's default branch, or protect/unprotect it.", + "summary": "Update a Branch.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateBranchRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Output only. The full resource path of the branch.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "branch", + "description": "The Branch to update.\n\nThe branch's `name` field is used to identify the branch to update.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Branch", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Output only. The full resource path of the branch.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "branch", + "description": "The Branch to update.\n\nThe branch's `name` field is used to identify the branch to update.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Branch", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "branch", + "description": "The Branch to update.\n\nThe branch's `name` field is used to identify the branch to update.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Branch", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "branch", + "description": "The Branch to update.\n\nThe branch's `name` field is used to identify the branch to update.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Branch", + "is_object": true + } + }, + { + "name": "name", + "description": "Output only. The full resource path of the branch.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "branch_id", + "description": "The part of the name, chosen by the user when the resource was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "A timestamp indicating when the branch was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "name", + "description": "Output only. The full resource path of the branch.\nFormat: projects/{project_id}/branches/{branch_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The project containing this branch (API resource hierarchy).\nFormat: projects/{project_id}\n\nNote: This field indicates where the branch exists in the resource hierarchy.\nFor point-in-time branching from another branch, see `status.source_branch`.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "The spec contains the branch configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "BranchSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "The current status of a Branch.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "BranchStatus", + "is_object": true + } + }, + { + "name": "uid", + "description": "System-generated unique ID for the branch.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "A timestamp indicating when the branch was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Output only. The full resource path of the branch.\nFormat: projects/{project_id}/branches/{branch_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "UpdateDataApi", + "description": "Update Data API configuration for a database.", + "summary": "Update Data API configuration.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/databases/*/data-api}", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateDataApiRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name: projects/{project_id}/branches/{branch_id}/databases/{database_id}/data-api", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "data_api", + "description": "The Data API configuration to update.\nThe data_api's `name` field identifies the resource.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataApi", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name: projects/{project_id}/branches/{branch_id}/databases/{database_id}/data-api", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "data_api", + "description": "The Data API configuration to update.\nThe data_api's `name` field identifies the resource.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataApi", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "data_api", + "description": "The Data API configuration to update.\nThe data_api's `name` field identifies the resource.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataApi", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "data_api", + "description": "The Data API configuration to update.\nThe data_api's `name` field identifies the resource.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataApi", + "is_object": true + } + }, + { + "name": "name", + "description": "Resource name: projects/{project_id}/branches/{branch_id}/databases/{database_id}/data-api", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "create_time", + "description": "A timestamp indicating when the Data API was first enabled.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "name", + "description": "Resource name: projects/{project_id}/branches/{branch_id}/databases/{database_id}/data-api", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The database containing this Data API configuration.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "The desired Data API configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DataApiDataApiSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "The observed Data API state (read-only).", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DataApiDataApiStatus", + "is_object": true + } + }, + { + "name": "update_time", + "description": "A timestamp indicating when the Data API configuration was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name: projects/{project_id}/branches/{branch_id}/databases/{database_id}/data-api", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "UpdateDatabase", + "description": "Update a Database.", + "summary": "Update a Database.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/databases/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateDatabaseRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the database.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "database", + "description": "The Database to update.\n\nThe database's `name` field is used to identify the database to update.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Database", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the database.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "database", + "description": "The Database to update.\n\nThe database's `name` field is used to identify the database to update.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Database", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "database", + "description": "The Database to update.\n\nThe database's `name` field is used to identify the database to update.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Database", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "database", + "description": "The Database to update.\n\nThe database's `name` field is used to identify the database to update.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Database", + "is_object": true + } + }, + { + "name": "name", + "description": "The resource name of the database.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "create_time", + "description": "A timestamp indicating when the database was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "database_id", + "description": "The part of the name, chosen by the user when the resource was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The resource name of the database.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The branch containing this database.\nFormat: projects/{project_id}/branches/{branch_id}", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "The desired state of the Database.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DatabaseDatabaseSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "The observed state of the Database.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DatabaseDatabaseStatus", + "is_object": true + } + }, + { + "name": "update_time", + "description": "A timestamp indicating when the database was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the database.\nFormat: projects/{project_id}/branches/{branch_id}/databases/{database_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "UpdateEndpoint", + "description": "Updates the specified compute endpoint. You can update autoscaling limits, suspend timeout, or enable/disable the compute endpoint.", + "summary": "Update an Endpoint.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/endpoints/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateEndpointRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Output only. The full resource path of the endpoint.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint", + "description": "The Endpoint to update.\n\nThe endpoint's `name` field is used to identify the endpoint to update.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Output only. The full resource path of the endpoint.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "endpoint", + "description": "The Endpoint to update.\n\nThe endpoint's `name` field is used to identify the endpoint to update.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "endpoint", + "description": "The Endpoint to update.\n\nThe endpoint's `name` field is used to identify the endpoint to update.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "endpoint", + "description": "The Endpoint to update.\n\nThe endpoint's `name` field is used to identify the endpoint to update.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Endpoint", + "is_object": true + } + }, + { + "name": "name", + "description": "Output only. The full resource path of the endpoint.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "create_time", + "description": "A timestamp indicating when the compute endpoint was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "endpoint_id", + "description": "The part of the name, chosen by the user when the resource was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Output only. The full resource path of the endpoint.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The branch containing this endpoint (API resource hierarchy).\nFormat: projects/{project_id}/branches/{branch_id}", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "The spec contains the compute endpoint configuration, including autoscaling limits, suspend timeout, and disabled state.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EndpointSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "Current operational status of the compute endpoint.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EndpointStatus", + "is_object": true + } + }, + { + "name": "uid", + "description": "System-generated unique ID for the endpoint.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "A timestamp indicating when the compute endpoint was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Output only. The full resource path of the endpoint.\nFormat: projects/{project_id}/branches/{branch_id}/endpoints/{endpoint_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "UpdateProject", + "description": "Updates the specified database project.", + "summary": "Update a Project.", + "path": "/api/2.0/postgres/{name=projects/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateProjectRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Output only. The full resource path of the project.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "project", + "description": "The Project to update.\n\nThe project's `name` field is used to identify the project to update.\nFormat: projects/{project_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Project", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Output only. The full resource path of the project.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "project", + "description": "The Project to update.\n\nThe project's `name` field is used to identify the project to update.\nFormat: projects/{project_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Project", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "project", + "description": "The Project to update.\n\nThe project's `name` field is used to identify the project to update.\nFormat: projects/{project_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Project", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Output only. The full resource path of the project.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "project", + "description": "The Project to update.\n\nThe project's `name` field is used to identify the project to update.\nFormat: projects/{project_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Project", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "create_time", + "description": "A timestamp indicating when the project was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "delete_time", + "description": "A timestamp indicating when the project was soft-deleted.\nEmpty if the project is not deleted, otherwise set to a timestamp in the past.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "initial_branch_spec", + "description": "Configuration for the initial default branch created as part of project creation.\nAllows overriding branch protection. These settings only apply at creation time\nand do not affect resources created after project creation.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "InitialBranchSpec", + "is_object": true + } + }, + { + "name": "initial_endpoint_spec", + "description": "Configuration settings for the initial Read/Write endpoint created inside the initial branch for a newly\ncreated project. If omitted, the initial endpoint created will have default settings, without high availability\nconfigured. This field does not apply to any endpoints created after project creation. Use\nspec.default_endpoint_settings to configure default settings for endpoints created after project creation.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "InitialEndpointSpec", + "is_object": true + } + }, + { + "name": "name", + "description": "Output only. The full resource path of the project.\nFormat: projects/{project_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "project_id", + "description": "The part of the name, chosen by the user when the resource was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "purge_time", + "description": "A timestamp indicating when the project is scheduled for permanent deletion.\nEmpty if the project is not deleted, otherwise set to a timestamp in the future.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "spec", + "description": "The spec contains the project configuration, including display_name, pg_version (Postgres version), history_retention_duration, and default_endpoint_settings.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ProjectSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "The current status of a Project.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ProjectStatus", + "is_object": true + } + }, + { + "name": "uid", + "description": "System-generated unique ID for the project.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "A timestamp indicating when the project was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Output only. The full resource path of the project.\nFormat: projects/{project_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "UpdateRole", + "description": "Update a role for a branch.", + "summary": "Update a Postgres Role for a Branch.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/roles/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateRoleRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Output only. The full resource path of the role.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "role", + "description": "The Postgres Role to update.\n\nThe role's `name` field is used to identify the role to update.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Role", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Output only. The full resource path of the role.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "role", + "description": "The Postgres Role to update.\n\nThe role's `name` field is used to identify the role to update.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Role", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "role", + "description": "The Postgres Role to update.\n\nThe role's `name` field is used to identify the role to update.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Role", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Output only. The full resource path of the role.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "role", + "description": "The Postgres Role to update.\n\nThe role's `name` field is used to identify the role to update.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Role", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "create_time", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "name", + "description": "Output only. The full resource path of the role.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The Branch where this Role exists.\nFormat: projects/{project_id}/branches/{branch_id}", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "role_id", + "description": "The part of the name, chosen by the user when the resource was created.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "The spec contains the role configuration, including identity type, authentication method, and role attributes.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RoleRoleSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "Current status of the role, including its identity type, authentication method, and role attributes.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RoleRoleStatus", + "is_object": true + } + }, + { + "name": "update_time", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Output only. The full resource path of the role.\nFormat: projects/{project_id}/branches/{branch_id}/roles/{role_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "UpdateSnapshotSchedule", + "description": "Sets the snapshot schedule for a branch. The `schedule` field is replaced\nwholesale; an empty schedule disables automatic snapshots.", + "summary": "Update a Snapshot Schedule.", + "path": "/api/2.0/postgres/{name=projects/*/branches/*/snapshot-schedule}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateSnapshotScheduleRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the branch's snapshot schedule.\nFormat: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "snapshot_schedule", + "description": "The snapshot schedule to set. Its `name` identifies the branch.\nFormat: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SnapshotSchedule", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. The only updatable path is `schedule`, which replaces the\nentire set of cadences.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the branch's snapshot schedule.\nFormat: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. The only updatable path is `schedule`, which replaces the\nentire set of cadences.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "snapshot_schedule", + "description": "The snapshot schedule to set. Its `name` identifies the branch.\nFormat: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SnapshotSchedule", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "snapshot_schedule", + "description": "The snapshot schedule to set. Its `name` identifies the branch.\nFormat: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SnapshotSchedule", + "is_object": true + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the branch's snapshot schedule.\nFormat: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "snapshot_schedule", + "description": "The snapshot schedule to set. Its `name` identifies the branch.\nFormat: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SnapshotSchedule", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. The only updatable path is `schedule`, which replaces the\nentire set of cadences.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "name", + "description": "The resource name of the branch's snapshot schedule.\nFormat: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule", + "description": "The cadences at which automatic snapshots are taken. Update replaces the\nwhole set; an empty set disables automatic snapshots. Order is not\nsignificant. When several cadences fire together, one snapshot is taken,\nretained for the longest of their retentions.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ScheduleCadenceList", + "array_value": { + "pascal_name": "ScheduleCadence", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the branch's snapshot schedule.\nFormat: projects/{project_id}/branches/{branch_id}/snapshot-schedule", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Fields to update. The only updatable path is `schedule`, which replaces the\nentire set of cadences.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-operation", + "pascal_name": "GetOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + } + ] + }, + { + "id": "provisioning.PrivateAccess", + "name": "PrivateAccess", + "description": "These APIs manage private access settings for this account.", + "package": { + "name": "provisioning" + }, + "is_accounts": true, + "docs_group": "provisioning", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Create", + "description": "Creates a private access settings configuration, which represents\nnetwork access restrictions for workspace resources. Private access\nsettings configure whether workspaces can be accessed from the public\ninternet or only from private endpoints.", + "summary": "Create private access settings.", + "path": "/api/2.0/accounts/{account_id}/private-access-settings", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreatePrivateAccessSettingsRequest", + "is_object": true + }, + "response": { + "pascal_name": "PrivateAccessSettings", + "is_object": true + }, + "all_fields": [ + { + "name": "allowed_vpc_endpoint_ids", + "description": "An array of Databricks VPC endpoint IDs. This is the Databricks ID returned when registering the VPC endpoint configuration in your Databricks account. This is not the ID of the VPC endpoint in AWS.\nOnly used when private_access_level is set to ENDPOINT. This is an allow list of VPC endpoints registered in your Databricks account that can connect to your workspace over AWS PrivateLink.\nNote: If hybrid access to your workspace is enabled by setting public_access_enabled to true, this control only works for PrivateLink connections. To control how your workspace is accessed via public internet, see IP access lists.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "private_access_level", + "description": "The private access level controls which VPC endpoints can connect to the UI or API of any workspace that attaches this private access settings object.\n`ACCOUNT` level access (the default) allows only VPC endpoints that are registered in your Databricks account connect to your workspace.\n`ENDPOINT` level access allows only specified VPC endpoints connect to your workspace. For details, see allowed_vpc_endpoint_ids.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateAccessLevel", + "enum": [ + { + "content": "ACCOUNT" + }, + { + "content": "ENDPOINT" + } + ] + } + }, + { + "name": "private_access_settings_name", + "description": "The human-readable name of the private access settings object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "public_access_enabled", + "description": "Determines if the workspace can be accessed over public internet. For fully private workspaces, you can optionally specify false, but only if you implement both the front-end and the back-end PrivateLink connections. Otherwise, specify true, which means that public access is enabled.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "region", + "description": "The AWS region for workspaces attached to this private access settings object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a Databricks private access settings configuration, both specified by ID.", + "summary": "Delete private access settings.", + "path": "/api/2.0/accounts/{account_id}/private-access-settings/{private_access_settings_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeletePrivateAccesRequest", + "is_object": true, + "required_fields": [ + { + "name": "private_access_settings_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "private_access_settings_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PrivateAccessSettings", + "is_object": true + }, + "all_fields": [ + { + "name": "private_access_settings_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "private_access_settings_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a Databricks private access settings configuration, both specified by ID.", + "summary": "Get private access settings.", + "path": "/api/2.0/accounts/{account_id}/private-access-settings/{private_access_settings_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetPrivateAccesRequest", + "is_object": true, + "required_fields": [ + { + "name": "private_access_settings_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "private_access_settings_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PrivateAccessSettings", + "is_object": true + }, + "all_fields": [ + { + "name": "private_access_settings_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "private_access_settings_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Lists Databricks private access settings for an account.", + "summary": "List private access settings.", + "path": "/api/2.0/accounts/{account_id}/private-access-settings", + "is_legacy_empty_request": true, + "is_crud_read": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListPrivateAccessRequest", + "is_object": true + }, + "response": { + "pascal_name": "PrivateAccessSettingsList", + "array_value": { + "pascal_name": "PrivateAccessSettings", + "is_object": true + } + } + }, + { + "name": "Replace", + "description": "Updates an existing private access settings object, which specifies how your workspace is accessed over AWS PrivateLink. To use AWS PrivateLink, a workspace must have a private access settings object referenced by ID in the workspace's private_access_settings_id property.\nThis operation completely overwrites your existing private access settings object attached to your workspaces. All workspaces attached to the private access settings are affected by any change. If public_access_enabled, private_access_level, or allowed_vpc_endpoint_ids are updated, effects of these changes might take several minutes to propagate to the workspace API.\nYou can share one private access settings object with multiple workspaces in a single account. However, private access settings are specific to AWS regions, so only workspaces in the same AWS region can use a given private access settings object.\nBefore configuring PrivateLink, read the Databricks article about PrivateLink.", + "summary": "Update private access settings.", + "path": "/api/2.0/accounts/{account_id}/private-access-settings/{private_access_settings_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ReplacePrivateAccessSettingsRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "private_access_settings_id", + "description": "Databricks private access settings ID.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "customer_facing_private_access_settings", + "description": "Properties of the new private access settings object.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateAccessSettings", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "private_access_settings_id", + "description": "Databricks private access settings ID.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "customer_facing_private_access_settings", + "description": "Properties of the new private access settings object.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateAccessSettings", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "customer_facing_private_access_settings", + "description": "Properties of the new private access settings object.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateAccessSettings", + "is_object": true + } + }, + "response": { + "pascal_name": "PrivateAccessSettings", + "is_object": true + }, + "all_fields": [ + { + "name": "customer_facing_private_access_settings", + "description": "Properties of the new private access settings object.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateAccessSettings", + "is_object": true + } + }, + { + "name": "private_access_settings_id", + "description": "Databricks private access settings ID.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_id", + "description": "The Databricks account ID that hosts the private access settings.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "allowed_vpc_endpoint_ids", + "description": "An array of Databricks VPC endpoint IDs. This is the Databricks ID that is returned when registering the VPC endpoint configuration in your Databricks account. This is not the ID of the VPC endpoint in AWS.\nOnly used when private_access_level is set to ENDPOINT. This is an allow list of VPC endpoints that in your account that can connect to your workspace over AWS PrivateLink.\nIf hybrid access to your workspace is enabled by setting public_access_enabled to true, this control only works for PrivateLink connections. To control how your workspace is accessed via public internet, see IP access lists.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "private_access_level", + "description": "The private access level controls which VPC endpoints can connect to the UI or API of any workspace that attaches this private access settings object.\n`ACCOUNT` level access (the default) allows only VPC endpoints that are registered in your Databricks account connect to your workspace.\n`ENDPOINT` level access allows only specified VPC endpoints connect to your workspace. For details, see allowed_vpc_endpoint_ids.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateAccessLevel", + "enum": [ + { + "content": "ACCOUNT" + }, + { + "content": "ENDPOINT" + } + ] + } + }, + { + "name": "private_access_settings_id", + "description": "Databricks private access settings ID.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_access_settings_name", + "description": "The human-readable name of the private access settings object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "public_access_enabled", + "description": "Determines if the workspace can be accessed over public internet. For fully private workspaces, you can optionally specify false, but only if you implement both the front-end and the back-end PrivateLink connections. Otherwise, specify true, which means that public access is enabled.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "region", + "description": "The AWS region for workspaces attached to this private access settings object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "private_access_settings_id", + "description": "Databricks private access settings ID.", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "networking.PrivateNetworkGateways", + "name": "PrivateNetworkGateways", + "description": "These APIs manage private network gateways under network connectivity configurations.", + "package": { + "name": "networking" + }, + "is_accounts": true, + "is_hidden_cli": true, + "docs_group": "provisioning", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "list": { + "request": { + "pascal_name": "ListPrivateNetworkGatewaysRequest" + } + }, + "methods": [ + { + "name": "CreatePrivateNetworkGateway", + "description": "Creates a private network gateway.", + "summary": "Create a private network gateway.", + "path": "/api/networking/v1/{parent=accounts/*/network-connectivity-configs/*}/private-network-gateways", + "can_use_json": true, + "is_crud_create": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreatePrivateNetworkGatewayRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "The network connectivity configuration that will contain the gateway.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_network_gateway", + "description": "The gateway to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGateway", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The network connectivity configuration that will contain the gateway.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "private_network_gateway", + "description": "The gateway to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGateway", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "private_network_gateway", + "description": "The gateway to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGateway", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "parent", + "description": "The network connectivity configuration that will contain the gateway.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_network_gateway", + "description": "The gateway to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGateway", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + } + ] + } + }, + { + "name": "request_id", + "description": "A unique identifier for this request. The request is idempotent when this is provided.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "aws_cloud_connection", + "description": "The AWS connection used by the gateway.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayAwsCloudConnection", + "is_object": true + } + }, + { + "name": "azure_cloud_connection", + "description": "The Azure connection used by the gateway.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayAzureCloudConnection", + "is_object": true + } + }, + { + "name": "bandwidth_tier_gigabits_per_second", + "description": "The provisioned bandwidth tier for an Azure gateway, in gigabits per second.\nRequired when creating an Azure gateway.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "create_time", + "description": "The time when the gateway was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "destinations", + "description": "The destinations routed through this gateway.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayDestinationList", + "array_value": { + "pascal_name": "PrivateNetworkGatewayDestination", + "is_object": true + } + } + }, + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "error_message", + "description": "The failure reason when the gateway is in the FAILED state.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The canonical resource name of the gateway, in the form\n`accounts/{account_id}/network-connectivity-configs/{ncc_id}/private-network-gateways/{gateway_id}`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_dns_resolvers", + "description": "The DNS resolvers used for private name resolution.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayPrivateDnsResolverList", + "array_value": { + "pascal_name": "PrivateNetworkGatewayPrivateDnsResolver", + "is_object": true + } + } + }, + { + "name": "state", + "description": "The current lifecycle state of the gateway.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayGatewayState", + "enum": [ + { + "content": "CREATING" + }, + { + "content": "DELETING" + }, + { + "content": "ESTABLISHED" + }, + { + "content": "FAILED" + } + ] + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + }, + { + "name": "update_time", + "description": "The time when the gateway was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The network connectivity configuration that will contain the gateway.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + } + ], + "long_running_operation": { + "get_operation": { + "kebab_name": "get-private-network-gateway-operation", + "pascal_name": "GetPrivateNetworkGatewayOperation", + "request": { + "pascal_name": "GetOperationRequest" + } + }, + "response_type": {} + } + }, + { + "name": "DeletePrivateNetworkGateway", + "description": "Permanently deletes a private network gateway.", + "summary": "Delete a private network gateway.", + "path": "/api/networking/v1/{name=accounts/*/network-connectivity-configs/*/private-network-gateways/*}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeletePrivateNetworkGatewayRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The canonical resource name of the gateway.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The canonical resource name of the gateway.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "The canonical resource name of the gateway.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The canonical resource name of the gateway.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPrivateNetworkGateway", + "description": "Gets a private network gateway.", + "summary": "Get a private network gateway.", + "path": "/api/networking/v1/{name=accounts/*/network-connectivity-configs/*/private-network-gateways/*}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetPrivateNetworkGatewayRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The canonical resource name of the gateway.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The canonical resource name of the gateway.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PrivateNetworkGateway", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The canonical resource name of the gateway.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The canonical resource name of the gateway.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPrivateNetworkGatewayOperation", + "description": "Gets the status of a private network gateway create operation.", + "summary": "Get a private network gateway operation.", + "path": "/api/networking/v1/{name=accounts/*/network-connectivity-configs/*/private-network-gateways/*/operations/*}", + "is_crud_read": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetOperationRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Operation", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the operation resource.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListPrivateNetworkGateways", + "description": "Lists private network gateways under a network connectivity configuration.", + "summary": "List private network gateways.", + "path": "/api/networking/v1/{parent=accounts/*/network-connectivity-configs/*}/private-network-gateways", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListPrivateNetworkGatewaysRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The network connectivity configuration containing the gateways.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The network connectivity configuration containing the gateways.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListPrivateNetworkGatewaysResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_token", + "description": "An opaque token returned by a previous list request.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The network connectivity configuration containing the gateways.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The network connectivity configuration containing the gateways.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "An opaque token returned by a previous list request.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdatePrivateNetworkGateway", + "description": "Updates a private network gateway.", + "summary": "Update a private network gateway.", + "path": "/api/networking/v1/{name=accounts/*/network-connectivity-configs/*/private-network-gateways/*}", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdatePrivateNetworkGatewayRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The canonical resource name of the gateway, in the form\n`accounts/{account_id}/network-connectivity-configs/{ncc_id}/private-network-gateways/{gateway_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_network_gateway", + "description": "The gateway containing the desired mutable field values.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGateway", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The canonical resource name of the gateway, in the form\n`accounts/{account_id}/network-connectivity-configs/{ncc_id}/private-network-gateways/{gateway_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "private_network_gateway", + "description": "The gateway containing the desired mutable field values.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGateway", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "private_network_gateway", + "description": "The gateway containing the desired mutable field values.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGateway", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "PrivateNetworkGateway", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The canonical resource name of the gateway, in the form\n`accounts/{account_id}/network-connectivity-configs/{ncc_id}/private-network-gateways/{gateway_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_network_gateway", + "description": "The gateway containing the desired mutable field values.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGateway", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + } + ] + } + }, + { + "name": "update_mask", + "description": "The fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "aws_cloud_connection", + "description": "The AWS connection used by the gateway.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayAwsCloudConnection", + "is_object": true + } + }, + { + "name": "azure_cloud_connection", + "description": "The Azure connection used by the gateway.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayAzureCloudConnection", + "is_object": true + } + }, + { + "name": "bandwidth_tier_gigabits_per_second", + "description": "The provisioned bandwidth tier for an Azure gateway, in gigabits per second.\nRequired when creating an Azure gateway.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "create_time", + "description": "The time when the gateway was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "destinations", + "description": "The destinations routed through this gateway.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayDestinationList", + "array_value": { + "pascal_name": "PrivateNetworkGatewayDestination", + "is_object": true + } + } + }, + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "error_message", + "description": "The failure reason when the gateway is in the FAILED state.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The canonical resource name of the gateway, in the form\n`accounts/{account_id}/network-connectivity-configs/{ncc_id}/private-network-gateways/{gateway_id}`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "private_dns_resolvers", + "description": "The DNS resolvers used for private name resolution.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayPrivateDnsResolverList", + "array_value": { + "pascal_name": "PrivateNetworkGatewayPrivateDnsResolver", + "is_object": true + } + } + }, + { + "name": "state", + "description": "The current lifecycle state of the gateway.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayGatewayState", + "enum": [ + { + "content": "CREATING" + }, + { + "content": "DELETING" + }, + { + "content": "ESTABLISHED" + }, + { + "content": "FAILED" + } + ] + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + }, + { + "name": "update_time", + "description": "The time when the gateway was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The canonical resource name of the gateway, in the form\n`accounts/{account_id}/network-connectivity-configs/{ncc_id}/private-network-gateways/{gateway_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "display_name", + "description": "The human-readable name of the gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "traffic_mode", + "description": "The traffic routed through this gateway.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrivateNetworkGatewayTrafficMode", + "enum": [ + { + "content": "ALL_TRAFFIC" + }, + { + "content": "SPECIFIC_DESTINATIONS" + } + ] + } + } + ] + } + ] + }, + { + "id": "marketplace.ProviderExchangeFilters", + "name": "ProviderExchangeFilters", + "description": "Marketplace exchanges filters curate which groups can access an exchange.", + "package": { + "name": "marketplace" + }, + "docs_group": "marketplace", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "named_id_map": { + "pascal_name": "ExchangeFilterNameToIdMap" + }, + "request": { + "pascal_name": "ListExchangeFiltersRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Add an exchange filter.", + "summary": "Create a new exchange filter.", + "path": "/api/2.0/marketplace-exchange/filters", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateExchangeFilterRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "filter", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExchangeFilter", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "filter", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExchangeFilter", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "CreateExchangeFilterResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExchangeFilter", + "is_object": true + } + } + ] + }, + { + "name": "Delete", + "description": "Delete an exchange filter", + "summary": "Delete an exchange filter.", + "path": "/api/2.0/marketplace-exchange/filters/{id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteExchangeFilterRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteExchangeFilterResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List exchange filter", + "summary": "List exchange filters.", + "path": "/api/2.0/marketplace-exchange/filters", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListExchangeFiltersRequest", + "is_object": true, + "required_fields": [ + { + "name": "exchange_id", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "exchange_id", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListExchangeFiltersResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "exchange_id", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "exchange_id", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Update an exchange filter.", + "summary": "Update exchange filter.", + "path": "/api/2.0/marketplace-exchange/filters/{id}", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateExchangeFilterRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "filter", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExchangeFilter", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "filter", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExchangeFilter", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateExchangeFilterResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExchangeFilter", + "is_object": true + } + }, + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "marketplace.ProviderExchanges", + "name": "ProviderExchanges", + "description": "Marketplace exchanges allow providers to share their listings with a curated set of customers.", + "package": { + "name": "marketplace" + }, + "docs_group": "marketplace", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "named_id_map": { + "pascal_name": "ExchangeNameToIdMap" + }, + "request": { + "pascal_name": "ListExchangesRequest" + } + }, + "methods": [ + { + "name": "AddListingToExchange", + "description": "Associate an exchange with a listing", + "summary": "Add an exchange for listing.", + "path": "/api/2.0/marketplace-exchange/exchanges-for-listing", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "AddExchangeForListingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "listing_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "exchange_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "listing_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "exchange_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AddExchangeForListingResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "exchange_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "listing_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "listing_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "exchange_id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Create", + "description": "Create an exchange", + "summary": "Create an exchange.", + "path": "/api/2.0/marketplace-exchange/exchanges", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateExchangeRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "exchange", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Exchange", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "exchange", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Exchange", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "CreateExchangeResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "exchange", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Exchange", + "is_object": true + } + } + ] + }, + { + "name": "Delete", + "description": "This removes a listing from marketplace.", + "summary": "Delete an exchange.", + "path": "/api/2.0/marketplace-exchange/exchanges/{id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteExchangeRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteExchangeResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteListingFromExchange", + "description": "Disassociate an exchange with a listing", + "summary": "Remove an exchange for listing.", + "path": "/api/2.0/marketplace-exchange/exchanges-for-listing/{id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "RemoveExchangeForListingRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RemoveExchangeForListingResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Get an exchange.", + "summary": "Get an exchange.", + "path": "/api/2.0/marketplace-exchange/exchanges/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetExchangeRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetExchangeResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List exchanges visible to provider", + "summary": "List exchanges.", + "path": "/api/2.0/marketplace-exchange/exchanges", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListExchangesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListExchangesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListExchangesForListing", + "description": "List exchanges associated with a listing", + "summary": "List exchanges for listing.", + "path": "/api/2.0/marketplace-exchange/exchanges-for-listing", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListExchangesForListingRequest", + "is_object": true, + "required_fields": [ + { + "name": "listing_id", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "listing_id", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListExchangesForListingResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "listing_id", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "listing_id", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListListingsForExchange", + "description": "List listings associated with an exchange", + "summary": "List listings for exchange.", + "path": "/api/2.0/marketplace-exchange/listings-for-exchange", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListListingsForExchangeRequest", + "is_object": true, + "required_fields": [ + { + "name": "exchange_id", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "exchange_id", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListListingsForExchangeResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "exchange_id", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "exchange_id", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Update an exchange", + "summary": "Update exchange.", + "path": "/api/2.0/marketplace-exchange/exchanges/{id}", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateExchangeRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "exchange", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Exchange", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "exchange", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Exchange", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateExchangeResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "exchange", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Exchange", + "is_object": true + } + }, + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "marketplace.ProviderFiles", + "name": "ProviderFiles", + "description": "Marketplace offers a set of file APIs for various purposes such as preview notebooks and provider icons.", + "package": { + "name": "marketplace" + }, + "docs_group": "marketplace", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "named_id_map": { + "pascal_name": "FileInfoDisplayNameToIdMap" + }, + "request": { + "pascal_name": "ListFilesRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Create a file. Currently, only provider icons and attached notebooks are supported.", + "summary": "Create a file.", + "path": "/api/2.0/marketplace-provider/files", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateFileRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "file_parent", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FileParent", + "is_object": true + } + }, + { + "name": "marketplace_file_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MarketplaceFileType", + "enum": [ + { + "content": "APP" + }, + { + "content": "EMBEDDED_NOTEBOOK" + }, + { + "content": "PROVIDER_ICON" + } + ] + } + }, + { + "name": "mime_type", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "file_parent", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FileParent", + "is_object": true + } + }, + { + "name": "marketplace_file_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MarketplaceFileType", + "enum": [ + { + "content": "APP" + }, + { + "content": "EMBEDDED_NOTEBOOK" + }, + { + "content": "PROVIDER_ICON" + } + ] + } + }, + { + "name": "mime_type", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateFileResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "display_name", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "file_parent", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FileParent", + "is_object": true + } + }, + { + "name": "marketplace_file_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MarketplaceFileType", + "enum": [ + { + "content": "APP" + }, + { + "content": "EMBEDDED_NOTEBOOK" + }, + { + "content": "PROVIDER_ICON" + } + ] + } + }, + { + "name": "mime_type", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Delete a file", + "summary": "Delete a file.", + "path": "/api/2.0/marketplace-provider/files/{file_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteFileRequest", + "is_object": true, + "required_fields": [ + { + "name": "file_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "file_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteFileResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "file_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "file_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Get a file", + "summary": "Get a file.", + "path": "/api/2.0/marketplace-provider/files/{file_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetFileRequest", + "is_object": true, + "required_fields": [ + { + "name": "file_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "file_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetFileResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "file_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "file_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List files attached to a parent entity.", + "summary": "List files.", + "path": "/api/2.0/marketplace-provider/files", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListFilesRequest", + "is_object": true, + "required_fields": [ + { + "name": "file_parent", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "FileParent", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "file_parent", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "FileParent", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "ListFilesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "file_parent", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "FileParent", + "is_object": true + } + }, + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "marketplace.ProviderListings", + "name": "ProviderListings", + "description": "Listings are the core entities in the Marketplace. They represent the products that are available for consumption.", + "package": { + "name": "marketplace" + }, + "docs_group": "marketplace", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "named_id_map": { + "pascal_name": "ListingSummaryNameToIdMap" + }, + "request": { + "pascal_name": "GetListingsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Create a new listing", + "summary": "Create a listing.", + "path": "/api/2.0/marketplace-provider/listing", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateListingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "listing", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Listing", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "listing", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Listing", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "CreateListingResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "listing", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Listing", + "is_object": true + } + } + ] + }, + { + "name": "Delete", + "description": "Delete a listing", + "summary": "Delete a listing.", + "path": "/api/2.0/marketplace-provider/listings/{id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteListingRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteListingResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Get a listing", + "summary": "Get a listing.", + "path": "/api/2.0/marketplace-provider/listings/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetListingRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetListingResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List listings owned by this provider", + "summary": "List listings.", + "path": "/api/2.0/marketplace-provider/listings", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetListingsRequest", + "is_object": true + }, + "response": { + "pascal_name": "GetListingsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Update a listing", + "summary": "Update listing.", + "path": "/api/2.0/marketplace-provider/listings/{id}", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateListingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "listing", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Listing", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "listing", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Listing", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateListingResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "listing", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Listing", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "marketplace.ProviderPersonalizationRequests", + "name": "ProviderPersonalizationRequests", + "description": "Personalization requests are an alternate to instantly available listings. Control the lifecycle of personalized solutions.", + "package": { + "name": "marketplace" + }, + "docs_group": "marketplace", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "request": { + "pascal_name": "ListAllPersonalizationRequestsRequest" + } + }, + "methods": [ + { + "name": "List", + "description": "List personalization requests to this provider.\nThis will return all personalization requests, regardless of which listing they are for.", + "summary": "All personalization requests across all listings.", + "path": "/api/2.0/marketplace-provider/personalization-requests", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListAllPersonalizationRequestsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListAllPersonalizationRequestsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Update personalization request. This method only permits updating the status of the request.", + "summary": "Update personalization request status.", + "path": "/api/2.0/marketplace-provider/listings/{listing_id}/personalization-requests/{request_id}/request-status", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdatePersonalizationRequestRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PersonalizationRequestStatus", + "enum": [ + { + "content": "DENIED" + }, + { + "content": "FULFILLED" + }, + { + "content": "NEW" + }, + { + "content": "REQUEST_PENDING" + } + ] + } + } + ], + "required_in_url_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "status", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PersonalizationRequestStatus", + "enum": [ + { + "content": "DENIED" + }, + { + "content": "FULFILLED" + }, + { + "content": "NEW" + }, + { + "content": "REQUEST_PENDING" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "UpdatePersonalizationRequestResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "reason", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "share", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ShareInfo", + "is_object": true + } + }, + { + "name": "status", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PersonalizationRequestStatus", + "enum": [ + { + "content": "DENIED" + }, + { + "content": "FULFILLED" + }, + { + "content": "NEW" + }, + { + "content": "REQUEST_PENDING" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "listing_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "request_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PersonalizationRequestStatus", + "enum": [ + { + "content": "DENIED" + }, + { + "content": "FULFILLED" + }, + { + "content": "NEW" + }, + { + "content": "REQUEST_PENDING" + } + ] + } + } + ] + } + ] + }, + { + "id": "marketplace.ProviderProviderAnalyticsDashboards", + "name": "ProviderProviderAnalyticsDashboards", + "description": "Manage templated analytics solution for providers.", + "package": { + "name": "marketplace" + }, + "docs_group": "marketplace", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "methods": [ + { + "name": "Create", + "description": "Create provider analytics dashboard. Returns Marketplace specific `id`. Not to be confused with the Lakeview dashboard id.", + "summary": "Create provider analytics dashboard.", + "path": "/api/2.0/marketplace-provider/analytics_dashboard", + "is_legacy_empty_request": true, + "is_crud_create": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateProviderAnalyticsDashboardRequest", + "is_object": true + }, + "response": { + "pascal_name": "ProviderAnalyticsDashboard", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "Get", + "description": "Get provider analytics dashboard.", + "summary": "Get provider analytics dashboard.", + "path": "/api/2.0/marketplace-provider/analytics_dashboard", + "is_legacy_empty_request": true, + "is_crud_read": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListProviderAnalyticsDashboardRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListProviderAnalyticsDashboardResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "dashboard_id", + "description": "dashboard_id will be used to open Lakeview dashboard.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "id", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "dashboard_id", + "description": "dashboard_id will be used to open Lakeview dashboard.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "GetLatestVersion", + "description": "Get latest version of provider analytics dashboard.", + "summary": "Get latest version of provider analytics dashboard.", + "path": "/api/2.0/marketplace-provider/analytics_dashboard/latest", + "is_legacy_empty_request": true, + "is_crud_read": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetLatestVersionProviderAnalyticsDashboardRequest", + "is_object": true + }, + "response": { + "pascal_name": "GetLatestVersionProviderAnalyticsDashboardResponse", + "is_object": true + } + }, + { + "name": "Update", + "description": "Update provider analytics dashboard.", + "summary": "Update provider analytics dashboard.", + "path": "/api/2.0/marketplace-provider/analytics_dashboard/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateProviderAnalyticsDashboardRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "id is immutable property and can't be updated.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "id is immutable property and can't be updated.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateProviderAnalyticsDashboardResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "description": "id \u0026 version should be the same as the request", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "dashboard_id", + "description": "this is newly created Lakeview dashboard for the user", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "id", + "description": "id \u0026 version should be the same as the request", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "dashboard_id", + "description": "this is newly created Lakeview dashboard for the user", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "id", + "description": "id is immutable property and can't be updated.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version", + "description": "this is the version of the dashboard template we want to update our user to\ncurrent expectation is that it should be equal to latest version of the dashboard template", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "id is immutable property and can't be updated.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "marketplace.ProviderProviders", + "name": "ProviderProviders", + "description": "Providers are entities that manage assets in Marketplace.", + "package": { + "name": "marketplace" + }, + "docs_group": "marketplace", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "named_id_map": { + "pascal_name": "ProviderInfoNameToIdMap" + }, + "request": { + "pascal_name": "ListProvidersRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Create a provider", + "summary": "Create a provider.", + "path": "/api/2.0/marketplace-provider/provider", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateProviderRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "provider", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ProviderInfo", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "provider", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ProviderInfo", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "CreateProviderResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "provider", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ProviderInfo", + "is_object": true + } + } + ] + }, + { + "name": "Delete", + "description": "Delete provider", + "summary": "Delete provider.", + "path": "/api/2.0/marketplace-provider/providers/{id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteProviderRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteProviderResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Get provider profile", + "summary": "Get provider.", + "path": "/api/2.0/marketplace-provider/providers/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetProviderRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetProviderResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List provider profiles for account.", + "summary": "List providers.", + "path": "/api/2.0/marketplace-provider/providers", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListProvidersRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListProvidersResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Update provider profile", + "summary": "Update provider.", + "path": "/api/2.0/marketplace-provider/providers/{id}", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateProviderRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "provider", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ProviderInfo", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "provider", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ProviderInfo", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateProviderResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "provider", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ProviderInfo", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "sharing.Providers", + "name": "Providers", + "description": "A data provider is an object representing the organization in the real world who shares the\ndata. A provider contains shares which further contain the shared data.", + "package": { + "name": "sharing" + }, + "docs_group": "sharing", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "ProviderInfoNameToMetastoreIdMap" + }, + "request": { + "pascal_name": "ListProvidersRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new authentication provider minimally based on a name and authentication type.\nThe caller must be an admin on the metastore.", + "summary": "Create an auth provider.", + "path": "/api/2.1/unity-catalog/providers", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateProvider", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the Provider.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "authentication_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthenticationType", + "enum": [ + { + "content": "DATABRICKS" + }, + { + "content": "OAUTH_CLIENT_CREDENTIALS" + }, + { + "content": "OIDC_FEDERATION" + }, + { + "content": "TOKEN" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the Provider.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "authentication_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthenticationType", + "enum": [ + { + "content": "DATABRICKS" + }, + { + "content": "OAUTH_CLIENT_CREDENTIALS" + }, + { + "content": "OIDC_FEDERATION" + }, + { + "content": "TOKEN" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "ProviderInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "authentication_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthenticationType", + "enum": [ + { + "content": "DATABRICKS" + }, + { + "content": "OAUTH_CLIENT_CREDENTIALS" + }, + { + "content": "OIDC_FEDERATION" + }, + { + "content": "TOKEN" + } + ] + } + }, + { + "name": "comment", + "description": "Description about the provider.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the Provider.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "recipient_profile_str", + "description": "This field is required when the __authentication_type__ is **TOKEN**, **OAUTH_CLIENT_CREDENTIALS** or not provided.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the Provider.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "authentication_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthenticationType", + "enum": [ + { + "content": "DATABRICKS" + }, + { + "content": "OAUTH_CLIENT_CREDENTIALS" + }, + { + "content": "OIDC_FEDERATION" + }, + { + "content": "TOKEN" + } + ] + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes an authentication provider, if the caller is a metastore admin or is the owner of the provider.", + "summary": "Delete a provider.", + "path": "/api/2.1/unity-catalog/providers/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteProviderRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the provider.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the provider.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the provider.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the provider.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a specific authentication provider.\nThe caller must supply the name of the provider, and must either be a metastore admin or the owner of the provider.", + "summary": "Get a provider.", + "path": "/api/2.1/unity-catalog/providers/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetProviderRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the provider.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the provider.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ProviderInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the provider.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the provider.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets an array of available authentication providers.\nThe caller must either be a metastore admin, have the **USE_PROVIDER** privilege on the providers,\nor be the owner of the providers. Providers not owned by the caller and for which the caller does\nnot have the **USE_PROVIDER** privilege are not included in the response.\nThere is no guarantee of a specific ordering of the elements in the array.", + "summary": "List providers.", + "path": "/api/2.1/unity-catalog/providers", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListProvidersRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListProvidersResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "data_provider_global_metastore_id", + "description": "If not provided, all providers will be returned.\nIf no providers exist with this ID, no results will be returned.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_results", + "description": "Maximum number of providers to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid providers are returned (not recommended).\n- Note: The number of returned providers might be less than the specified max_results size, even zero.\nThe only definitive indication that no further providers can be fetched is when the next_page_token is unset from the response.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + }, + "max_results": { + "name": "max_results", + "description": "Maximum number of providers to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid providers are returned (not recommended).\n- Note: The number of returned providers might be less than the specified max_results size, even zero.\nThe only definitive indication that no further providers can be fetched is when the next_page_token is unset from the response.", + "is_query": true, + "entity": { + "is_int": true + } + } + } + }, + { + "name": "ListProviderShareAssets", + "description": "Get arrays of assets associated with a specified provider's share.\nThe caller is the recipient of the share.", + "summary": "List assets by provider share.", + "path": "/api/2.1/data-sharing/providers/{provider_name}/shares/{share_name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListProviderShareAssetsRequest", + "is_object": true, + "required_fields": [ + { + "name": "provider_name", + "description": "The name of the provider who owns the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "share_name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "provider_name", + "description": "The name of the provider who owns the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "share_name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListProviderShareAssetsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "function_max_results", + "description": "Maximum number of functions to return.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "notebook_max_results", + "description": "Maximum number of notebooks to return.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "provider_name", + "description": "The name of the provider who owns the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "share_name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_max_results", + "description": "Maximum number of tables to return.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "volume_max_results", + "description": "Maximum number of volumes to return.", + "is_query": true, + "entity": { + "is_int": true + } + } + ], + "required_positional_arguments": [ + { + "name": "provider_name", + "description": "The name of the provider who owns the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "share_name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListShares", + "description": "Gets an array of a specified provider's shares within the metastore where:\n\n* the caller is a metastore admin, or\n* the caller is the owner.", + "summary": "List shares by Provider.", + "path": "/api/2.1/unity-catalog/providers/{name}/shares", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListSharesRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the provider in which to list shares.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the provider in which to list shares.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListProviderSharesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "max_results", + "description": "Maximum number of shares to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid shares are returned (not recommended).\n- Note: The number of returned shares might be less than the specified max_results size, even zero.\nThe only definitive indication that no further shares can be fetched is when the next_page_token is unset from the response.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "name", + "description": "Name of the provider in which to list shares.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the provider in which to list shares.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + }, + "max_results": { + "name": "max_results", + "description": "Maximum number of shares to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid shares are returned (not recommended).\n- Note: The number of returned shares might be less than the specified max_results size, even zero.\nThe only definitive indication that no further shares can be fetched is when the next_page_token is unset from the response.", + "is_query": true, + "entity": { + "is_int": true + } + } + } + }, + { + "name": "Update", + "description": "Updates the information for an authentication provider, if the caller is a metastore admin or is the owner of the provider.\nIf the update changes the provider name, the caller must be both a metastore admin and the owner of the provider.", + "summary": "Update a provider.", + "path": "/api/2.1/unity-catalog/providers/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateProvider", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the provider.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the provider.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ProviderInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "Description about the provider.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the provider.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "new_name", + "description": "New name for the provider.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "Username of Provider owner.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "recipient_profile_str", + "description": "This field is required when the __authentication_type__ is **TOKEN**, **OAUTH_CLIENT_CREDENTIALS** or not provided.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the provider.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "oauth2.PublishedAppIntegration", + "name": "PublishedAppIntegration", + "description": "These APIs enable administrators to manage published OAuth app integrations, which is required for\nadding/using Published OAuth App Integration like Tableau Desktop for Databricks in AWS cloud.", + "package": { + "name": "oauth2" + }, + "is_accounts": true, + "docs_group": "oauth2", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListPublishedAppIntegrationsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Create Published OAuth App Integration.\n\nYou can retrieve the published OAuth app integration via [PublishedAppIntegration/get](https://docs.databricks.com/api/account/publishedappintegration/get).", + "summary": "Create Published OAuth App Integration.", + "path": "/api/2.0/accounts/{account_id}/oauth2/published-app-integrations", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreatePublishedAppIntegration", + "is_object": true + }, + "response": { + "pascal_name": "CreatePublishedAppIntegrationOutput", + "is_object": true + }, + "all_fields": [ + { + "name": "app_id", + "description": "App id of the OAuth published app integration.\nFor example power-bi, tableau-deskop", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "token_access_policy", + "description": "Token access policy", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "TokenAccessPolicy", + "is_object": true + } + } + ] + }, + { + "name": "Delete", + "description": "Delete an existing Published OAuth App Integration.\nYou can retrieve the published OAuth app integration via [PublishedAppIntegration/get](https://docs.databricks.com/api/account/publishedappintegration/get).", + "summary": "Delete Published OAuth App Integration.", + "path": "/api/2.0/accounts/{account_id}/oauth2/published-app-integrations/{integration_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeletePublishedAppIntegrationRequest", + "is_object": true, + "required_fields": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeletePublishedAppIntegrationOutput", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the Published OAuth App Integration for the given integration id.", + "summary": "Get OAuth Published App Integration.", + "path": "/api/2.0/accounts/{account_id}/oauth2/published-app-integrations/{integration_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetPublishedAppIntegrationRequest", + "is_object": true, + "required_fields": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetPublishedAppIntegrationOutput", + "is_object": true + }, + "all_fields": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Get the list of published OAuth app integrations for the specified Databricks account", + "summary": "Get published oauth app integrations.", + "path": "/api/2.0/accounts/{account_id}/oauth2/published-app-integrations", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListPublishedAppIntegrationsRequest", + "is_object": true + }, + "response": { + "pascal_name": "GetPublishedAppIntegrationsOutput", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Updates an existing published OAuth App Integration.\nYou can retrieve the published OAuth app integration via [PublishedAppIntegration/get](https://docs.databricks.com/api/account/publishedappintegration/get).", + "summary": "Updates Published OAuth App Integration.", + "path": "/api/2.0/accounts/{account_id}/oauth2/published-app-integrations/{integration_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdatePublishedAppIntegration", + "is_object": true, + "required_fields": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdatePublishedAppIntegrationOutput", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "token_access_policy", + "description": "Token access policy to be updated in the published OAuth app integration", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "TokenAccessPolicy", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "integration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "qualitymonitorv2.QualityMonitorV2", + "name": "QualityMonitorV2", + "description": "Deprecated: Please use the Data Quality Monitoring API instead (REST: /api/data-quality/v1/monitors). Manage data quality of UC objects (currently support `schema`).", + "package": { + "name": "qualitymonitorv2" + }, + "docs_group": "qualitymonitor", + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "list": { + "request": { + "pascal_name": "ListQualityMonitorRequest" + } + }, + "methods": [ + { + "name": "CreateQualityMonitor", + "description": "Deprecated: Use Data Quality Monitoring API instead (/api/data-quality/v1/monitors).\nCreate a quality monitor on UC object.", + "summary": "Create a quality monitor.", + "path": "/api/2.0/quality-monitors", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateQualityMonitorRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "quality_monitor", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "QualityMonitor", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "quality_monitor", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "QualityMonitor", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "quality_monitor", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "QualityMonitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "QualityMonitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "quality_monitor", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "QualityMonitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "anomaly_detection_config", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AnomalyDetectionConfig", + "is_object": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "validity_check_configurations", + "description": "Validity check configurations for anomaly detection.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ValidityCheckConfigurationList", + "array_value": { + "pascal_name": "ValidityCheckConfiguration", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteQualityMonitor", + "description": "Deprecated: Use Data Quality Monitoring API instead (/api/data-quality/v1/monitors).\nDelete a quality monitor on UC object.", + "summary": "Delete a quality monitor.", + "path": "/api/2.0/quality-monitors/{object_type}/{object_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteQualityMonitorRequest", + "is_object": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetQualityMonitor", + "description": "Deprecated: Use Data Quality Monitoring API instead (/api/data-quality/v1/monitors).\nRead a quality monitor on UC object.", + "summary": "Read a quality monitor.", + "path": "/api/2.0/quality-monitors/{object_type}/{object_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetQualityMonitorRequest", + "is_object": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "QualityMonitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListQualityMonitor", + "description": "Deprecated: Use Data Quality Monitoring API instead (/api/data-quality/v1/monitors).\n(Unimplemented) List quality monitors.", + "summary": "List quality monitors.", + "path": "/api/2.0/quality-monitors", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListQualityMonitorRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListQualityMonitorResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateQualityMonitor", + "description": "Deprecated: Use Data Quality Monitoring API instead (/api/data-quality/v1/monitors).\n(Unimplemented) Update a quality monitor on UC object.", + "summary": "Update a quality monitor.", + "path": "/api/2.0/quality-monitors/{object_type}/{object_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateQualityMonitorRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "quality_monitor", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "QualityMonitor", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "quality_monitor", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "QualityMonitor", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "quality_monitor", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "QualityMonitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "QualityMonitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "quality_monitor", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "QualityMonitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "anomaly_detection_config", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AnomalyDetectionConfig", + "is_object": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "validity_check_configurations", + "description": "Validity check configurations for anomaly detection.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ValidityCheckConfigurationList", + "array_value": { + "pascal_name": "ValidityCheckConfiguration", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_type", + "description": "The type of the monitored object. Can be one of the following: schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "object_id", + "description": "The uuid of the request object. For example, schema id.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.QualityMonitors", + "name": "QualityMonitors", + "description": "Deprecated: Please use the Data Quality Monitors API instead (REST: /api/data-quality/v1/monitors), which manages both Data Profiling and Anomaly Detection.\n\nA monitor computes and monitors data or model quality metrics for a table over time.\nIt generates metrics tables and a dashboard that you can use to monitor table health and set alerts.\nMost write operations require the user to be the owner of the table (or its parent schema or parent catalog).\nViewing the dashboard, computed metrics, or monitor configuration only requires the user to have **SELECT**\nprivileges on the table (along with **USE_SCHEMA** and **USE_CATALOG**).", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "CancelRefresh", + "description": "Deprecated: Use Data Quality Monitors API instead (/api/data-quality/v1/monitors).\nCancels an already-initiated refresh job.", + "summary": "Cancel refresh.", + "path": "/api/2.1/unity-catalog/tables/{table_name}/monitor/refreshes/{refresh_id}/cancel", + "is_crud_create": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CancelRefreshRequest", + "is_object": true, + "required_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\ntable_name is case insensitive and spaces are disallowed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\ntable_name is case insensitive and spaces are disallowed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "CancelRefreshResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "refresh_id", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\ntable_name is case insensitive and spaces are disallowed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\ntable_name is case insensitive and spaces are disallowed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "Create", + "description": "Deprecated: Use Data Quality Monitors API instead (/api/data-quality/v1/monitors).\nCreates a new monitor for the specified table.\n\nThe caller must either:\n1. be an owner of the table's parent catalog, have **USE_SCHEMA** on the table's parent schema, and have **SELECT** access on the table\n2. have **USE_CATALOG** on the table's parent catalog, be an owner of the table's parent schema, and have **SELECT** access on the table.\n3. have the following permissions:\n- **USE_CATALOG** on the table's parent catalog\n- **USE_SCHEMA** on the table's parent schema\n- be an owner of the table.\n\nWorkspace assets, such as the dashboard, will be created in the workspace where\nthis call was made.", + "summary": "Create a table monitor.", + "path": "/api/2.1/unity-catalog/tables/{table_name}/monitor", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateMonitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "output_schema_name", + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "assets_dir", + "description": "[Create:REQ Update:IGN] Field for specifying the absolute path to a custom directory to store data-monitoring\nassets. Normally prepopulated to a default user location via UI and Python APIs.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "output_schema_name", + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "assets_dir", + "description": "[Create:REQ Update:IGN] Field for specifying the absolute path to a custom directory to store data-monitoring\nassets. Normally prepopulated to a default user location via UI and Python APIs.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "MonitorInfo", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "output_schema_name", + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_name", + "description": "[Create:ERR Update:IGN] UC table to monitor. Format: `catalog.schema.table_name`", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "[Create:ERR Update:IGN] The monitor status.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MonitorInfoStatus", + "enum": [ + { + "content": "MONITOR_STATUS_ACTIVE" + }, + { + "content": "MONITOR_STATUS_DELETE_PENDING" + }, + { + "content": "MONITOR_STATUS_ERROR" + }, + { + "content": "MONITOR_STATUS_FAILED" + }, + { + "content": "MONITOR_STATUS_PENDING" + } + ] + } + }, + { + "name": "profile_metrics_table_name", + "description": "[Create:ERR Update:IGN] Table that stores profile metrics data. Format: `catalog.schema.table_name`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "drift_metrics_table_name", + "description": "[Create:ERR Update:IGN] Table that stores drift metrics data. Format: `catalog.schema.table_name`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "monitor_version", + "description": "[Create:ERR Update:IGN] Represents the current monitor configuration version in use. The version will be represented in a\nnumeric fashion (1,2,3...). The field has flexibility to take on negative values, which can indicate corrupted\nmonitor_version numbers.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "output_schema_name", + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_name", + "description": "[Create:ERR Update:IGN] UC table to monitor. Format: `catalog.schema.table_name`", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "[Create:ERR Update:IGN] The monitor status.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MonitorInfoStatus", + "enum": [ + { + "content": "MONITOR_STATUS_ACTIVE" + }, + { + "content": "MONITOR_STATUS_DELETE_PENDING" + }, + { + "content": "MONITOR_STATUS_ERROR" + }, + { + "content": "MONITOR_STATUS_FAILED" + }, + { + "content": "MONITOR_STATUS_PENDING" + } + ] + } + }, + { + "name": "profile_metrics_table_name", + "description": "[Create:ERR Update:IGN] Table that stores profile metrics data. Format: `catalog.schema.table_name`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "drift_metrics_table_name", + "description": "[Create:ERR Update:IGN] Table that stores drift metrics data. Format: `catalog.schema.table_name`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "monitor_version", + "description": "[Create:ERR Update:IGN] Represents the current monitor configuration version in use. The version will be represented in a\nnumeric fashion (1,2,3...). The field has flexibility to take on negative values, which can indicate corrupted\nmonitor_version numbers.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "assets_dir", + "description": "[Create:REQ Update:IGN] Field for specifying the absolute path to a custom directory to store data-monitoring\nassets. Normally prepopulated to a default user location via UI and Python APIs.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "baseline_table_name", + "description": "[Create:OPT Update:OPT] Baseline table name.\nBaseline data is used to compute drift from the data in the monitored `table_name`.\nThe baseline table and the monitored table shall have the same schema.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_metrics", + "description": "[Create:OPT Update:OPT] Custom metrics.", + "is_request_body_field": true, + "entity": { + "pascal_name": "MonitorMetricList", + "array_value": { + "pascal_name": "MonitorMetric", + "is_object": true + } + } + }, + { + "name": "data_classification_config", + "description": "[Create:OPT Update:OPT] Data classification related config.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "MonitorDataClassificationConfig", + "is_object": true + } + }, + { + "name": "inference_log", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "MonitorInferenceLog", + "is_object": true + } + }, + { + "name": "latest_monitor_failure_msg", + "description": "[Create:ERR Update:IGN] The latest error message for a monitor failure.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "notifications", + "description": "[Create:OPT Update:OPT] Field for specifying notification settings.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "MonitorNotifications", + "is_object": true + } + }, + { + "name": "output_schema_name", + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule", + "description": "[Create:OPT Update:OPT] The monitor schedule.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "MonitorCronSchedule", + "is_object": true + } + }, + { + "name": "skip_builtin_dashboard", + "description": "Whether to skip creating a default dashboard summarizing data quality metrics.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "slicing_exprs", + "description": "[Create:OPT Update:OPT] List of column expressions to slice data with for targeted analysis. The data is grouped by\neach expression independently, resulting in a separate slice for each predicate and its\ncomplements. For example `slicing_exprs=[“col_1”, “col_2 \u003e 10”]` will generate the following\nslices: two slices for `col_2 \u003e 10` (True and False), and one slice per unique value in\n`col1`. For high-cardinality columns, only the top 100 unique values by frequency will\ngenerate slices.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "snapshot", + "description": "Configuration for monitoring snapshot tables.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "MonitorSnapshot", + "is_object": true + } + }, + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "time_series", + "description": "Configuration for monitoring time series tables.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "MonitorTimeSeries", + "is_object": true + } + }, + { + "name": "warehouse_id", + "description": "Optional argument to specify the warehouse for dashboard creation. If not specified, the first running\nwarehouse will be used.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "output_schema_name", + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "assets_dir", + "description": "[Create:REQ Update:IGN] Field for specifying the absolute path to a custom directory to store data-monitoring\nassets. Normally prepopulated to a default user location via UI and Python APIs.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deprecated: Use Data Quality Monitors API instead (/api/data-quality/v1/monitors).\nDeletes a monitor for the specified table.\n\nThe caller must either:\n1. be an owner of the table's parent catalog\n2. have **USE_CATALOG** on the table's parent catalog and be an owner of the table's parent schema\n3. have the following permissions:\n- **USE_CATALOG** on the table's parent catalog\n- **USE_SCHEMA** on the table's parent schema\n- be an owner of the table.\n\nAdditionally, the call must be made from the workspace where the monitor was created.\n\nNote that the metric tables and dashboard will not be deleted as part of this call; those\nassets must be manually cleaned up (if desired).", + "summary": "Delete a table monitor.", + "path": "/api/2.1/unity-catalog/tables/{table_name}/monitor", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteQualityMonitorRequest", + "is_object": true, + "required_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteMonitorResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Deprecated: Use Data Quality Monitors API instead (/api/data-quality/v1/monitors).\nGets a monitor for the specified table.\n\nThe caller must either:\n1. be an owner of the table's parent catalog\n2. have **USE_CATALOG** on the table's parent catalog and be an owner of the table's parent schema.\n3. have the following permissions:\n- **USE_CATALOG** on the table's parent catalog\n- **USE_SCHEMA** on the table's parent schema\n- **SELECT** privilege on the table.\n\nThe returned information includes configuration values, as well as information on\nassets created by the monitor. Some information (e.g., dashboard) may be filtered out\nif the caller is in a different workspace than where the monitor was created.", + "summary": "Get a table monitor.", + "path": "/api/2.1/unity-catalog/tables/{table_name}/monitor", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetQualityMonitorRequest", + "is_object": true, + "required_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "MonitorInfo", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "output_schema_name", + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_name", + "description": "[Create:ERR Update:IGN] UC table to monitor. Format: `catalog.schema.table_name`", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "[Create:ERR Update:IGN] The monitor status.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MonitorInfoStatus", + "enum": [ + { + "content": "MONITOR_STATUS_ACTIVE" + }, + { + "content": "MONITOR_STATUS_DELETE_PENDING" + }, + { + "content": "MONITOR_STATUS_ERROR" + }, + { + "content": "MONITOR_STATUS_FAILED" + }, + { + "content": "MONITOR_STATUS_PENDING" + } + ] + } + }, + { + "name": "profile_metrics_table_name", + "description": "[Create:ERR Update:IGN] Table that stores profile metrics data. Format: `catalog.schema.table_name`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "drift_metrics_table_name", + "description": "[Create:ERR Update:IGN] Table that stores drift metrics data. Format: `catalog.schema.table_name`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "monitor_version", + "description": "[Create:ERR Update:IGN] Represents the current monitor configuration version in use. The version will be represented in a\nnumeric fashion (1,2,3...). The field has flexibility to take on negative values, which can indicate corrupted\nmonitor_version numbers.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "output_schema_name", + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_name", + "description": "[Create:ERR Update:IGN] UC table to monitor. Format: `catalog.schema.table_name`", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "[Create:ERR Update:IGN] The monitor status.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MonitorInfoStatus", + "enum": [ + { + "content": "MONITOR_STATUS_ACTIVE" + }, + { + "content": "MONITOR_STATUS_DELETE_PENDING" + }, + { + "content": "MONITOR_STATUS_ERROR" + }, + { + "content": "MONITOR_STATUS_FAILED" + }, + { + "content": "MONITOR_STATUS_PENDING" + } + ] + } + }, + { + "name": "profile_metrics_table_name", + "description": "[Create:ERR Update:IGN] Table that stores profile metrics data. Format: `catalog.schema.table_name`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "drift_metrics_table_name", + "description": "[Create:ERR Update:IGN] Table that stores drift metrics data. Format: `catalog.schema.table_name`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "monitor_version", + "description": "[Create:ERR Update:IGN] Represents the current monitor configuration version in use. The version will be represented in a\nnumeric fashion (1,2,3...). The field has flexibility to take on negative values, which can indicate corrupted\nmonitor_version numbers.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetRefresh", + "description": "Deprecated: Use Data Quality Monitors API instead (/api/data-quality/v1/monitors).\nGets info about a specific monitor refresh using the given refresh ID.\n\nThe caller must either:\n1. be an owner of the table's parent catalog\n2. have **USE_CATALOG** on the table's parent catalog and be an owner of the table's parent schema\n3. have the following permissions:\n- **USE_CATALOG** on the table's parent catalog\n- **USE_SCHEMA** on the table's parent schema\n- **SELECT** privilege on the table.\n\nAdditionally, the call must be made from the workspace where the monitor was created.", + "summary": "Get refresh.", + "path": "/api/2.1/unity-catalog/tables/{table_name}/monitor/refreshes/{refresh_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetRefreshRequest", + "is_object": true, + "required_fields": [ + { + "name": "table_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "ID of the refresh.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "table_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "ID of the refresh.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "MonitorRefreshInfo", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "state", + "description": "The current state of the refresh.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MonitorRefreshInfoState", + "enum": [ + { + "content": "CANCELED" + }, + { + "content": "FAILED" + }, + { + "content": "PENDING" + }, + { + "content": "RUNNING" + }, + { + "content": "SUCCESS" + }, + { + "content": "UNKNOWN" + } + ] + } + }, + { + "name": "start_time_ms", + "description": "Time at which refresh operation was initiated (milliseconds since 1/1/1970 UTC).", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "state", + "description": "The current state of the refresh.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MonitorRefreshInfoState", + "enum": [ + { + "content": "CANCELED" + }, + { + "content": "FAILED" + }, + { + "content": "PENDING" + }, + { + "content": "RUNNING" + }, + { + "content": "SUCCESS" + }, + { + "content": "UNKNOWN" + } + ] + } + }, + { + "name": "start_time_ms", + "description": "Time at which refresh operation was initiated (milliseconds since 1/1/1970 UTC).", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "refresh_id", + "description": "ID of the refresh.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "table_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "table_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "refresh_id", + "description": "ID of the refresh.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "ListRefreshes", + "description": "Deprecated: Use Data Quality Monitors API instead (/api/data-quality/v1/monitors).\nGets an array containing the history of the most recent refreshes (up to 25) for this table.\n\nThe caller must either:\n1. be an owner of the table's parent catalog\n2. have **USE_CATALOG** on the table's parent catalog and be an owner of the table's parent schema\n3. have the following permissions:\n- **USE_CATALOG** on the table's parent catalog\n- **USE_SCHEMA** on the table's parent schema\n- **SELECT** privilege on the table.\n\nAdditionally, the call must be made from the workspace where the monitor was created.", + "summary": "List refreshes.", + "path": "/api/2.1/unity-catalog/tables/{table_name}/monitor/refreshes", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListRefreshesRequest", + "is_object": true, + "required_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\ntable_name is case insensitive and spaces are disallowed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\ntable_name is case insensitive and spaces are disallowed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "MonitorRefreshListResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\ntable_name is case insensitive and spaces are disallowed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\ntable_name is case insensitive and spaces are disallowed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "RegenerateDashboard", + "description": "Deprecated: Use Data Quality Monitors API instead (/api/data-quality/v1/monitors).\nRegenerates the monitoring dashboard for the specified table.\n\nThe caller must either:\n1. be an owner of the table's parent catalog\n2. have **USE_CATALOG** on the table's parent catalog and be an owner of the table's parent schema\n3. have the following permissions:\n- **USE_CATALOG** on the table's parent catalog\n- **USE_SCHEMA** on the table's parent schema\n- be an owner of the table\n\nThe call must be made from the workspace where the monitor was created. The dashboard will be regenerated in\nthe assets directory that was specified when the monitor was created.", + "summary": "Regenerate a monitoring dashboard.", + "path": "/api/2.1/quality-monitoring/tables/{table_name}/monitor/dashboard", + "can_use_json": true, + "is_crud_create": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "RegenerateDashboardRequest", + "is_object": true, + "required_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RegenerateDashboardResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "Optional argument to specify the warehouse for dashboard regeneration. If not specified, the first running\nwarehouse will be used.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "RunRefresh", + "description": "Deprecated: Use Data Quality Monitors API instead (/api/data-quality/v1/monitors).\nQueues a metric refresh on the monitor for the specified table.\nThe refresh will execute in the background.\n\nThe caller must either:\n1. be an owner of the table's parent catalog\n2. have **USE_CATALOG** on the table's parent catalog and be an owner of the table's parent schema\n3. have the following permissions:\n- **USE_CATALOG** on the table's parent catalog\n- **USE_SCHEMA** on the table's parent schema\n- be an owner of the table\n\nAdditionally, the call must be made from the workspace where the monitor was created.", + "summary": "Run refresh.", + "path": "/api/2.1/unity-catalog/tables/{table_name}/monitor/refreshes", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RunRefreshRequest", + "is_object": true, + "required_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\ntable_name is case insensitive and spaces are disallowed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\ntable_name is case insensitive and spaces are disallowed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "MonitorRefreshInfo", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "state", + "description": "The current state of the refresh.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MonitorRefreshInfoState", + "enum": [ + { + "content": "CANCELED" + }, + { + "content": "FAILED" + }, + { + "content": "PENDING" + }, + { + "content": "RUNNING" + }, + { + "content": "SUCCESS" + }, + { + "content": "UNKNOWN" + } + ] + } + }, + { + "name": "start_time_ms", + "description": "Time at which refresh operation was initiated (milliseconds since 1/1/1970 UTC).", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "refresh_id", + "description": "Unique id of the refresh operation.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "state", + "description": "The current state of the refresh.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MonitorRefreshInfoState", + "enum": [ + { + "content": "CANCELED" + }, + { + "content": "FAILED" + }, + { + "content": "PENDING" + }, + { + "content": "RUNNING" + }, + { + "content": "SUCCESS" + }, + { + "content": "UNKNOWN" + } + ] + } + }, + { + "name": "start_time_ms", + "description": "Time at which refresh operation was initiated (milliseconds since 1/1/1970 UTC).", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\ntable_name is case insensitive and spaces are disallowed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\ntable_name is case insensitive and spaces are disallowed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Deprecated: Use Data Quality Monitors API instead (/api/data-quality/v1/monitors).\nUpdates a monitor for the specified table.\n\nThe caller must either:\n1. be an owner of the table's parent catalog\n2. have **USE_CATALOG** on the table's parent catalog and be an owner of the table's parent schema\n3. have the following permissions:\n- **USE_CATALOG** on the table's parent catalog\n- **USE_SCHEMA** on the table's parent schema\n- be an owner of the table.\n\nAdditionally, the call must be made from the workspace where the monitor was created, and the caller must be\nthe original creator of the monitor.\n\nCertain configuration fields, such as output asset identifiers, cannot be updated.", + "summary": "Update a table monitor.", + "path": "/api/2.1/unity-catalog/tables/{table_name}/monitor", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateMonitor", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "output_schema_name", + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "output_schema_name", + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "MonitorInfo", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "output_schema_name", + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_name", + "description": "[Create:ERR Update:IGN] UC table to monitor. Format: `catalog.schema.table_name`", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "[Create:ERR Update:IGN] The monitor status.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MonitorInfoStatus", + "enum": [ + { + "content": "MONITOR_STATUS_ACTIVE" + }, + { + "content": "MONITOR_STATUS_DELETE_PENDING" + }, + { + "content": "MONITOR_STATUS_ERROR" + }, + { + "content": "MONITOR_STATUS_FAILED" + }, + { + "content": "MONITOR_STATUS_PENDING" + } + ] + } + }, + { + "name": "profile_metrics_table_name", + "description": "[Create:ERR Update:IGN] Table that stores profile metrics data. Format: `catalog.schema.table_name`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "drift_metrics_table_name", + "description": "[Create:ERR Update:IGN] Table that stores drift metrics data. Format: `catalog.schema.table_name`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "monitor_version", + "description": "[Create:ERR Update:IGN] Represents the current monitor configuration version in use. The version will be represented in a\nnumeric fashion (1,2,3...). The field has flexibility to take on negative values, which can indicate corrupted\nmonitor_version numbers.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "output_schema_name", + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_name", + "description": "[Create:ERR Update:IGN] UC table to monitor. Format: `catalog.schema.table_name`", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "status", + "description": "[Create:ERR Update:IGN] The monitor status.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "MonitorInfoStatus", + "enum": [ + { + "content": "MONITOR_STATUS_ACTIVE" + }, + { + "content": "MONITOR_STATUS_DELETE_PENDING" + }, + { + "content": "MONITOR_STATUS_ERROR" + }, + { + "content": "MONITOR_STATUS_FAILED" + }, + { + "content": "MONITOR_STATUS_PENDING" + } + ] + } + }, + { + "name": "profile_metrics_table_name", + "description": "[Create:ERR Update:IGN] Table that stores profile metrics data. Format: `catalog.schema.table_name`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "drift_metrics_table_name", + "description": "[Create:ERR Update:IGN] Table that stores drift metrics data. Format: `catalog.schema.table_name`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "monitor_version", + "description": "[Create:ERR Update:IGN] Represents the current monitor configuration version in use. The version will be represented in a\nnumeric fashion (1,2,3...). The field has flexibility to take on negative values, which can indicate corrupted\nmonitor_version numbers.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "baseline_table_name", + "description": "[Create:OPT Update:OPT] Baseline table name.\nBaseline data is used to compute drift from the data in the monitored `table_name`.\nThe baseline table and the monitored table shall have the same schema.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_metrics", + "description": "[Create:OPT Update:OPT] Custom metrics.", + "is_request_body_field": true, + "entity": { + "pascal_name": "MonitorMetricList", + "array_value": { + "pascal_name": "MonitorMetric", + "is_object": true + } + } + }, + { + "name": "dashboard_id", + "description": "[Create:ERR Update:OPT] Id of dashboard that visualizes the computed metrics.\nThis can be empty if the monitor is in PENDING state.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "data_classification_config", + "description": "[Create:OPT Update:OPT] Data classification related config.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "MonitorDataClassificationConfig", + "is_object": true + } + }, + { + "name": "inference_log", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "MonitorInferenceLog", + "is_object": true + } + }, + { + "name": "latest_monitor_failure_msg", + "description": "[Create:ERR Update:IGN] The latest error message for a monitor failure.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "notifications", + "description": "[Create:OPT Update:OPT] Field for specifying notification settings.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "MonitorNotifications", + "is_object": true + } + }, + { + "name": "output_schema_name", + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schedule", + "description": "[Create:OPT Update:OPT] The monitor schedule.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "MonitorCronSchedule", + "is_object": true + } + }, + { + "name": "slicing_exprs", + "description": "[Create:OPT Update:OPT] List of column expressions to slice data with for targeted analysis. The data is grouped by\neach expression independently, resulting in a separate slice for each predicate and its\ncomplements. For example `slicing_exprs=[“col_1”, “col_2 \u003e 10”]` will generate the following\nslices: two slices for `col_2 \u003e 10` (True and False), and one slice per unique value in\n`col1`. For high-cardinality columns, only the top 100 unique values by frequency will\ngenerate slices.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "snapshot", + "description": "Configuration for monitoring snapshot tables.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "MonitorSnapshot", + "is_object": true + } + }, + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "time_series", + "description": "Configuration for monitoring time series tables.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "MonitorTimeSeries", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "table_name", + "description": "UC table name in format `catalog.schema.table_name`.\nThis field corresponds to the {full_table_name_arg} arg in the endpoint path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "output_schema_name", + "description": "[Create:REQ Update:REQ] Schema where output tables are created. Needs to be in 2-level format {catalog}.{schema}", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "sql.Queries", + "name": "Queries", + "description": "The queries API can be used to perform CRUD operations on queries. A query is a Databricks SQL\nobject that includes the target SQL warehouse, query text, name, description, tags, and parameters.\nQueries can be scheduled using the `sql_task` type of the Jobs API, e.g. :method:jobs/create.", + "package": { + "name": "sql" + }, + "docs_group": "sql", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "ListQueryObjectsResponseQueryDisplayNameToIdMap" + }, + "request": { + "pascal_name": "ListQueriesRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a query.", + "summary": "Create a query.", + "path": "/api/2.0/sql/queries", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateQueryRequest", + "is_object": true + }, + "response": { + "pascal_name": "Query", + "is_object": true + }, + "all_fields": [ + { + "name": "auto_resolve_display_name", + "description": "If true, automatically resolve query display name conflicts. Otherwise, fail the request if the query's display name conflicts with an existing query's display name.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "query", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CreateQueryRequestQuery", + "is_object": true + } + } + ] + }, + { + "name": "Delete", + "description": "Moves a query to the trash. Trashed queries immediately disappear from searches and list views, and cannot be used for alerts. You can restore a trashed query through the UI. A trashed query is permanently deleted after 30 days.", + "summary": "Delete a query.", + "path": "/api/2.0/sql/queries/{id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "TrashQueryRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Empty", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a query.", + "summary": "Get a query.", + "path": "/api/2.0/sql/queries/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetQueryRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Query", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets a list of queries accessible to the user, ordered by creation time. **Warning:** Calling this API concurrently 10 or more times could result in throttling, service degradation, or a temporary ban.", + "summary": "List queries.", + "path": "/api/2.0/sql/queries", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListQueriesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListQueryObjectsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListVisualizations", + "description": "Gets a list of visualizations on a query.", + "summary": "List visualizations on a query.", + "path": "/api/2.0/sql/queries/{id}/visualizations", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListVisualizationsForQueryRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListVisualizationsForQueryResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Updates a query.", + "summary": "Update a query.", + "path": "/api/2.0/sql/queries/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateQueryRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Query", + "is_object": true + }, + "all_fields": [ + { + "name": "auto_resolve_display_name", + "description": "If true, automatically resolve alert display name conflicts. Otherwise, fail the request if the alert's display name conflicts with an existing alert's display name.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "query", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "UpdateQueryRequestQuery", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "sql.QueriesLegacy", + "name": "QueriesLegacy", + "description": "These endpoints are used for CRUD operations on query definitions. Query definitions include\nthe target SQL warehouse, query text, name, description, tags, parameters, and visualizations.\nQueries can be scheduled using the `sql_task` type of the Jobs API, e.g. :method:jobs/create.\n\n**Warning**: This API is deprecated. Please see the latest version of the Databricks SQL API. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "package": { + "name": "sql" + }, + "docs_group": "sql", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Create", + "description": "Creates a new query definition. Queries created with this endpoint belong to the authenticated user making the request.\n\nThe `data_source_id` field specifies the ID of the SQL warehouse to run this query against. You can use the Data Sources API to see a complete list of available SQL warehouses. Or you can copy the `data_source_id` from an existing query.\n\n**Note**: You cannot add a visualization until you create the query.\n\n**Warning**: This API is deprecated. Please use :method:queries/create instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Create a new query definition.", + "path": "/api/2.0/preview/sql/queries", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "QueryPostContent", + "is_object": true + }, + "response": { + "pascal_name": "LegacyQuery", + "is_object": true + }, + "all_fields": [ + { + "name": "data_source_id", + "description": "Data source ID maps to the ID of the data source used by the resource and is distinct from the warehouse ID. [Learn more](https://docs.databricks.com/api/workspace/datasources/list)", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "General description that conveys additional information about this query such as usage notes.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The title of this query that appears in list views, widget headings, and on the query page.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "Exclusively used for storing a list parameter definitions. A parameter is an object with `title`, `name`, `type`, and `value` properties. The `value` field here is the default value. It can be overridden at runtime.", + "is_request_body_field": true, + "entity": { + "is_any": true + } + }, + { + "name": "parent", + "description": "The identifier of the workspace folder containing the object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query", + "description": "The text of the query to be run.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_as_role", + "description": "Sets the **Run as** role for the object. Must be set to one of `\"viewer\"` (signifying \"run as viewer\" behavior) or `\"owner\"` (signifying \"run as owner\" behavior)", + "is_request_body_field": true, + "entity": { + "pascal_name": "RunAsRole", + "enum": [ + { + "content": "owner" + }, + { + "content": "viewer" + } + ] + } + }, + { + "name": "tags", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + }, + { + "name": "Delete", + "description": "Moves a query to the trash.\nTrashed queries immediately disappear from searches and list views, and they cannot be used for alerts.\nThe trash is deleted after 30 days.\n\n**Warning**: This API is deprecated. Please use :method:queries/delete instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Delete a query.", + "path": "/api/2.0/preview/sql/queries/{query_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteQueriesLegacyRequest", + "is_object": true, + "required_fields": [ + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Retrieve a query object definition along with contextual permissions information about the currently authenticated user.\n\n**Warning**: This API is deprecated. Please use :method:queries/get instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Get a query definition.", + "path": "/api/2.0/preview/sql/queries/{query_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetQueriesLegacyRequest", + "is_object": true, + "required_fields": [ + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "LegacyQuery", + "is_object": true + }, + "all_fields": [ + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets a list of queries. Optionally, this list can be filtered by a search term.\n\n**Warning**: Calling this API concurrently 10 or more times could result in throttling, service degradation, or a temporary ban.\n\n**Warning**: This API is deprecated. Please use :method:queries/list instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Get a list of queries.", + "path": "/api/2.0/preview/sql/queries", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListQueriesLegacyRequest", + "is_object": true + }, + "response": { + "pascal_name": "QueryList", + "is_object": true + }, + "all_fields": [ + { + "name": "order", + "description": "Name of query attribute to order by. Default sort order is ascending. Append a dash (`-`) to order descending instead.\n\n- `name`: The name of the query.\n\n- `created_at`: The timestamp the query was created.\n\n- `runtime`: The time it took to run this query. This is blank for parameterized queries. A blank value is treated as the highest value for sorting.\n\n- `executed_at`: The timestamp when the query was last run.\n\n- `created_by`: The user name of the user that created the query.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page", + "description": "Page number to retrieve.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_size", + "description": "Number of queries to return per page.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "q", + "description": "Full text search term", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "offset": { + "name": "page", + "description": "Page number to retrieve.", + "is_query": true, + "entity": { + "is_int": true + } + }, + "limit": { + "name": "page_size", + "description": "Number of queries to return per page.", + "is_query": true, + "entity": { + "is_int": true + } + } + } + }, + { + "name": "Restore", + "description": "Restore a query that has been moved to the trash.\nA restored query appears in list views and searches. You can use restored queries for alerts.\n\n**Warning**: This API is deprecated. Please see the latest version. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Restore a query.", + "path": "/api/2.0/preview/sql/queries/trash/{query_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RestoreQueriesLegacyRequest", + "is_object": true, + "required_fields": [ + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RestoreResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Modify this query definition.\n\n**Note**: You cannot undo this operation.\n\n**Warning**: This API is deprecated. Please use :method:queries/update instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Change a query definition.", + "path": "/api/2.0/preview/sql/queries/{query_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "QueryEditContent", + "is_object": true, + "required_fields": [ + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "LegacyQuery", + "is_object": true + }, + "all_fields": [ + { + "name": "data_source_id", + "description": "Data source ID maps to the ID of the data source used by the resource and is distinct from the warehouse ID. [Learn more](https://docs.databricks.com/api/workspace/datasources/list)", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "General description that conveys additional information about this query such as usage notes.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The title of this query that appears in list views, widget headings, and on the query page.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "Exclusively used for storing a list parameter definitions. A parameter is an object with `title`, `name`, `type`, and `value` properties. The `value` field here is the default value. It can be overridden at runtime.", + "is_request_body_field": true, + "entity": { + "is_any": true + } + }, + { + "name": "query", + "description": "The text of the query to be run.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_as_role", + "description": "Sets the **Run as** role for the object. Must be set to one of `\"viewer\"` (signifying \"run as viewer\" behavior) or `\"owner\"` (signifying \"run as owner\" behavior)", + "is_request_body_field": true, + "entity": { + "pascal_name": "RunAsRole", + "enum": [ + { + "content": "owner" + }, + { + "content": "viewer" + } + ] + } + }, + { + "name": "tags", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "query_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "sql.QueryHistory", + "name": "QueryHistory", + "description": "A service responsible for storing and retrieving the list of queries run against SQL endpoints and serverless compute.", + "package": { + "name": "sql" + }, + "docs_group": "sql", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "List", + "description": "List the history of queries through SQL warehouses, and serverless compute.\n\nYou can filter by user ID, warehouse ID, status, and time range.\nMost recently started queries are returned first (up to max_results in request).\nThe pagination token returned in response can be used to list subsequent query statuses.", + "summary": "List Queries.", + "path": "/api/2.0/sql/history/queries", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListQueryHistoryRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListQueriesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter_by", + "description": "An optional filter object to limit query history results. Accepts parameters such as user IDs, endpoint IDs, and statuses to narrow the returned data.\nIn a URL, the parameters of this filter are specified with dot notation. For example: `filter_by.statement_ids`.", + "is_query": true, + "is_optional_object": true, + "entity": { + "pascal_name": "QueryFilter", + "is_object": true + } + }, + { + "name": "include_metrics", + "description": "Whether to include the query metrics with each query.\nOnly use this for a small subset of queries (max_results).\nDefaults to false.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "max_results", + "description": "Limit the number of results returned in one page. Must be less than 1000 and the default is 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A token that can be used to get the next page of results. The token can contains characters that need to be encoded before using it in a URL.\nFor example, the character '+' needs to be replaced by %2B. This field is optional.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "sql.QueryVisualizations", + "name": "QueryVisualizations", + "description": "This is an evolving API that facilitates the addition and removal of visualizations from existing queries in the Databricks Workspace. Data structures can change over time.", + "package": { + "name": "sql" + }, + "is_hidden_cli": true, + "docs_group": "sql", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "methods": [ + { + "name": "Create", + "description": "Adds a visualization to a query.", + "summary": "Add a visualization to a query.", + "path": "/api/2.0/sql/visualizations", + "can_use_json": true, + "is_crud_create": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateVisualizationRequest", + "is_object": true + }, + "response": { + "pascal_name": "Visualization", + "is_object": true + }, + "all_fields": [ + { + "name": "visualization", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CreateVisualizationRequestVisualization", + "is_object": true + } + } + ] + }, + { + "name": "Delete", + "description": "Removes a visualization.", + "summary": "Remove a visualization.", + "path": "/api/2.0/sql/visualizations/{id}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteVisualizationRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Empty", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates a visualization.", + "summary": "Update a visualization.", + "path": "/api/2.0/sql/visualizations/{id}", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateVisualizationRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Visualization", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "visualization", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "UpdateVisualizationRequestVisualization", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "sql.QueryVisualizationsLegacy", + "name": "QueryVisualizationsLegacy", + "description": "This is an evolving API that facilitates the addition and removal of visualizations from existing\nqueries within the Databricks Workspace. Data structures may change over time.\n\n**Warning**: This API is deprecated. Please see the latest version of the Databricks SQL API. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "package": { + "name": "sql" + }, + "is_hidden_cli": true, + "docs_group": "sql", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "methods": [ + { + "name": "Create", + "description": "Creates visualization in the query.\n\n**Warning**: This API is deprecated. Please use :method:queryvisualizations/create instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Add visualization to a query.", + "path": "/api/2.0/preview/sql/visualizations", + "can_use_json": true, + "must_use_json": true, + "is_hidden_cli": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateQueryVisualizationsLegacyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "options", + "description": "The options object varies widely from one visualization type to the next and is unsupported. Databricks does not recommend modifying visualization settings in JSON.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_any": true + } + }, + { + "name": "query_id", + "description": "The identifier returned by :method:queries/create", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "type", + "description": "The type of visualization: chart, table, pivot table, and so on.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "options", + "description": "The options object varies widely from one visualization type to the next and is unsupported. Databricks does not recommend modifying visualization settings in JSON.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_any": true + } + }, + { + "name": "query_id", + "description": "The identifier returned by :method:queries/create", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "type", + "description": "The type of visualization: chart, table, pivot table, and so on.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "LegacyVisualization", + "is_object": true + }, + "all_fields": [ + { + "name": "description", + "description": "A short description of this visualization. This is not displayed in the UI.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the visualization that appears on dashboards and the query screen.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "The options object varies widely from one visualization type to the next and is unsupported. Databricks does not recommend modifying visualization settings in JSON.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_any": true + } + }, + { + "name": "query_id", + "description": "The identifier returned by :method:queries/create", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "type", + "description": "The type of visualization: chart, table, pivot table, and so on.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Removes a visualization from the query.\n\n**Warning**: This API is deprecated. Please use :method:queryvisualizations/delete instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Remove visualization.", + "path": "/api/2.0/preview/sql/visualizations/{id}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteQueryVisualizationsLegacyRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Widget ID returned by :method:queryvisualizations/create", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Widget ID returned by :method:queryvisualizations/create", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Widget ID returned by :method:queryvisualizations/create", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Widget ID returned by :method:queryvisualizations/create", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates visualization in the query.\n\n**Warning**: This API is deprecated. Please use :method:queryvisualizations/update instead. [Learn more](https://docs.databricks.com/en/sql/dbsql-api-latest.html)", + "summary": "Edit existing visualization.", + "path": "/api/2.0/preview/sql/visualizations/{id}", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "LegacyVisualization", + "is_object": true + }, + "response": { + "pascal_name": "LegacyVisualization", + "is_object": true + }, + "all_fields": [ + { + "name": "created_at", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "A short description of this visualization. This is not displayed in the UI.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "The UUID for this visualization.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the visualization that appears on dashboards and the query screen.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "options", + "description": "The options object varies widely from one visualization type to the next and is unsupported. Databricks does not recommend modifying visualization settings in JSON.", + "is_request_body_field": true, + "entity": { + "is_any": true + } + }, + { + "name": "query", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "LegacyQuery", + "is_object": true + } + }, + { + "name": "type", + "description": "The type of visualization: chart, table, pivot table, and so on.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "updated_at", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "sharing.RecipientActivation", + "name": "RecipientActivation", + "description": "The Recipient Activation API is only applicable in the open sharing model where the\nrecipient object has the authentication type of `TOKEN`. The data recipient follows\nthe activation link shared by the data provider to download the credential file that\nincludes the access token. The recipient will then use the credential file to establish\na secure connection with the provider to receive the shared data.\n\nNote that you can download the credential file only once. Recipients should treat the\ndownloaded credential as a secret and must not share it outside of their organization.", + "package": { + "name": "sharing" + }, + "docs_group": "sharing", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "GetActivationUrlInfo", + "description": "Gets an activation URL for a share.", + "summary": "Get a share activation URL.", + "path": "/api/2.1/unity-catalog/public/data_sharing_activation_info/{activation_url}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetActivationUrlInfoRequest", + "is_object": true, + "required_fields": [ + { + "name": "activation_url", + "description": "The one time activation url. It also accepts activation token.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "activation_url", + "description": "The one time activation url. It also accepts activation token.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetActivationUrlInfoResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "activation_url", + "description": "The one time activation url. It also accepts activation token.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "activation_url", + "description": "The one time activation url. It also accepts activation token.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "RetrieveToken", + "description": "Retrieve access token with an activation url.\nThis is a public API without any authentication.", + "summary": "Get an access token.", + "path": "/api/2.1/unity-catalog/public/data_sharing_activation/{activation_url}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RetrieveTokenRequest", + "is_object": true, + "required_fields": [ + { + "name": "activation_url", + "description": "The one time activation url. It also accepts activation token.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "activation_url", + "description": "The one time activation url. It also accepts activation token.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RetrieveTokenResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "activation_url", + "description": "The one time activation url. It also accepts activation token.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "activation_url", + "description": "The one time activation url. It also accepts activation token.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "sharing.RecipientFederationPolicies", + "name": "RecipientFederationPolicies", + "description": "The Recipient Federation Policies APIs are only applicable in the open sharing model where the recipient object has the authentication type of `OIDC_RECIPIENT`, enabling data sharing from Databricks to non-Databricks recipients.\nOIDC Token Federation enables secure, secret-less authentication for accessing Delta Sharing servers. Users and applications authenticate using short-lived OIDC tokens issued by their own Identity Provider (IdP), such as Azure Entra ID or Okta, without the need for managing static credentials or client secrets.\nA federation policy defines how non-Databricks recipients authenticate using OIDC tokens. It validates the OIDC claims in federated tokens and is set at the recipient level. The caller must be the owner of the recipient to create or manage a federation policy.\nFederation policies support the following scenarios:\n- User-to-Machine (U2M) flow: A user accesses Delta Shares using their own identity, such as connecting through PowerBI Delta Sharing Client.\n- Machine-to-Machine (M2M) flow: An application accesses Delta Shares using its own identity, typically for automation tasks like nightly jobs through Python Delta Sharing Client.\nOIDC Token Federation enables fine-grained access control, supports Multi-Factor Authentication (MFA), and enhances security by minimizing the risk of credential leakage through the use of short-lived, expiring tokens. It is designed for strong identity governance, secure cross-platform data sharing, and reduced operational overhead for credential management.\n\nFor more information, see https://www.databricks.com/blog/announcing-oidc-token-federation-enhanced-delta-sharing-security and https://docs.databricks.com/en/delta-sharing/create-recipient-oidc-fed", + "package": { + "name": "sharing" + }, + "docs_group": "sharing", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "request": { + "pascal_name": "ListFederationPoliciesRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Create a federation policy for an OIDC_FEDERATION recipient for sharing data from Databricks to non-Databricks recipients.\nThe caller must be the owner of the recipient.\nWhen sharing data from Databricks to non-Databricks clients,\nyou can define a federation policy to authenticate non-Databricks recipients.\nThe federation policy validates OIDC claims in federated tokens and is defined at the recipient level.\nThis enables secretless sharing clients to authenticate using OIDC tokens.\n\nSupported scenarios for federation policies:\n1. **User-to-Machine (U2M) flow** (e.g., PowerBI): A user accesses a resource using their own identity.\n2. **Machine-to-Machine (M2M) flow** (e.g., OAuth App): An OAuth App accesses a resource using its own identity,\ntypically for tasks like running nightly jobs.\n\nFor an overview, refer to:\n- Blog post: Overview of feature: https://www.databricks.com/blog/announcing-oidc-token-federation-enhanced-delta-sharing-security\n\nFor detailed configuration guides based on your use case:\n- Creating a Federation Policy as a provider: https://docs.databricks.com/en/delta-sharing/create-recipient-oidc-fed\n- Configuration and usage for Machine-to-Machine (M2M) applications (e.g., Python Delta Sharing Client): https://docs.databricks.com/aws/en/delta-sharing/sharing-over-oidc-m2m\n- Configuration and usage for User-to-Machine (U2M) applications (e.g., PowerBI): https://docs.databricks.com/aws/en/delta-sharing/sharing-over-oidc-u2m", + "summary": "Create recipient federation policy.", + "path": "/api/2.0/data-sharing/recipients/{recipient_name}/federation-policies", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateFederationPolicyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policy is being created.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "policy", + "description": "Name of the policy. This is the name of the policy to be created.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policy is being created.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "policy", + "description": "Name of the policy. This is the name of the policy to be created.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "policy", + "description": "Name of the policy. This is the name of the policy to be created.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + }, + "response": { + "pascal_name": "FederationPolicy", + "is_object": true + }, + "all_fields": [ + { + "name": "policy", + "description": "Name of the policy. This is the name of the policy to be created.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + }, + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policy is being created.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "Description of the policy. This is a user-provided description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "System-generated timestamp indicating when the policy was created.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Unique, immutable system-generated identifier for the federation policy.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the federation policy. A recipient can have multiple policies with different names.\nThe name must contain only lowercase alphanumeric characters, numbers, and hyphens.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "oidc_policy", + "description": "Specifies the policy to use for validating OIDC claims in the federated tokens.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "OidcFederationPolicy", + "is_object": true + } + }, + { + "name": "update_time", + "description": "System-generated timestamp indicating when the policy was last updated.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policy is being created.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes an existing federation policy for an OIDC_FEDERATION recipient.\nThe caller must be the owner of the recipient.", + "summary": "Delete recipient federation policy.", + "path": "/api/2.0/data-sharing/recipients/{recipient_name}/federation-policies/{name}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteFederationPolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policy is being deleted.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the policy. This is the name of the policy to be deleted.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policy is being deleted.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the policy. This is the name of the policy to be deleted.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the policy. This is the name of the policy to be deleted.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policy is being deleted.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policy is being deleted.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the policy. This is the name of the policy to be deleted.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetFederationPolicy", + "description": "Reads an existing federation policy for an OIDC_FEDERATION recipient for sharing data from Databricks to non-Databricks recipients.\nThe caller must have read access to the recipient.", + "summary": "Get recipient federation policy.", + "path": "/api/2.0/data-sharing/recipients/{recipient_name}/federation-policies/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetFederationPolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policy is being retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the policy. This is the name of the policy to be retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policy is being retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the policy. This is the name of the policy to be retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "FederationPolicy", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the policy. This is the name of the policy to be retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policy is being retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policy is being retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the policy. This is the name of the policy to be retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Lists federation policies for an OIDC_FEDERATION recipient for sharing data from Databricks to non-Databricks recipients.\nThe caller must have read access to the recipient.", + "summary": "List recipient federation policies.", + "path": "/api/2.0/data-sharing/recipients/{recipient_name}/federation-policies", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListFederationPoliciesRequest", + "is_object": true, + "required_fields": [ + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policies are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policies are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListFederationPoliciesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "max_results", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policies are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "recipient_name", + "description": "Name of the recipient. This is the name of the recipient for which the policies are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "sharing.Recipients", + "name": "Recipients", + "description": "A recipient is an object you create using :method:recipients/create to represent an\norganization which you want to allow access shares. The way how sharing works differs\ndepending on whether or not your recipient has access to a Databricks workspace that is\nenabled for Unity Catalog:\n\n- For recipients with access to a Databricks workspace that is enabled for Unity Catalog,\nyou can create a recipient object along with a unique sharing identifier you get from the\nrecipient. The sharing identifier is the key identifier that enables the secure connection.\nThis sharing mode is called **Databricks-to-Databricks sharing**.\n\n- For recipients without access to a Databricks workspace that is enabled for Unity Catalog,\nwhen you create a recipient object, Databricks generates an activation link you can send\nto the recipient. The recipient follows the activation link to download the credential file,\nand then uses the credential file to establish a secure connection to receive the shared data.\nThis sharing mode is called **open sharing**.", + "package": { + "name": "sharing" + }, + "docs_group": "sharing", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListRecipientsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new recipient with the delta sharing authentication type in the metastore.\nThe caller must be a metastore admin or have the **CREATE_RECIPIENT** privilege on the metastore.", + "summary": "Create a share recipient.", + "path": "/api/2.1/unity-catalog/recipients", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateRecipient", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of Recipient.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "authentication_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthenticationType", + "enum": [ + { + "content": "DATABRICKS" + }, + { + "content": "OAUTH_CLIENT_CREDENTIALS" + }, + { + "content": "OIDC_FEDERATION" + }, + { + "content": "TOKEN" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of Recipient.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "authentication_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthenticationType", + "enum": [ + { + "content": "DATABRICKS" + }, + { + "content": "OAUTH_CLIENT_CREDENTIALS" + }, + { + "content": "OIDC_FEDERATION" + }, + { + "content": "TOKEN" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "RecipientInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "authentication_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthenticationType", + "enum": [ + { + "content": "DATABRICKS" + }, + { + "content": "OAUTH_CLIENT_CREDENTIALS" + }, + { + "content": "OIDC_FEDERATION" + }, + { + "content": "TOKEN" + } + ] + } + }, + { + "name": "comment", + "description": "Description about the recipient.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "data_recipient_global_metastore_id", + "description": "The global Unity Catalog metastore id provided by the data recipient.\nThis field is only present when the __authentication_type__ is **DATABRICKS**.\nThe identifier is of format __cloud__:__region__:__metastore-uuid__.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "expiration_time", + "description": "Expiration timestamp of the token, in epoch milliseconds.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "id", + "description": "[Create,Update:IGN] common - id of the recipient", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "ip_access_list", + "description": "IP Access List", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IpAccessList", + "is_object": true + } + }, + { + "name": "name", + "description": "Name of Recipient.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "Username of the recipient owner.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "properties_kvpairs", + "description": "Recipient properties as map of string key-value pairs.\nWhen provided in update request, the specified properties will override the existing\nproperties. To add and remove properties, one would need to perform a read-modify-write.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SecurablePropertiesKvPairs", + "is_object": true + } + }, + { + "name": "sharing_code", + "description": "The one-time sharing code provided by the data recipient. This field is only present when the __authentication_type__ is **DATABRICKS**.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of Recipient.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "authentication_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AuthenticationType", + "enum": [ + { + "content": "DATABRICKS" + }, + { + "content": "OAUTH_CLIENT_CREDENTIALS" + }, + { + "content": "OIDC_FEDERATION" + }, + { + "content": "TOKEN" + } + ] + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes the specified recipient from the metastore. The caller must be the owner of the recipient.", + "summary": "Delete a share recipient.", + "path": "/api/2.1/unity-catalog/recipients/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteRecipientRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a share recipient from the metastore. The caller must be one of:\n* A user with **USE_RECIPIENT** privilege on the metastore\n* The owner of the share recipient\n* A metastore admin", + "summary": "Get a share recipient.", + "path": "/api/2.1/unity-catalog/recipients/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetRecipientRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RecipientInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets an array of all share recipients within the current metastore where:\n\n* the caller is a metastore admin, or\n* the caller is the owner.\nThere is no guarantee of a specific ordering of the elements in the array.", + "summary": "List share recipients.", + "path": "/api/2.1/unity-catalog/recipients", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListRecipientsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListRecipientsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "data_recipient_global_metastore_id", + "description": "If not provided, all recipients will be returned.\nIf no recipients exist with this ID, no results will be returned.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_results", + "description": "Maximum number of recipients to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid recipients are returned (not recommended).\n- Note: The number of returned recipients might be less than the specified max_results size, even zero.\nThe only definitive indication that no further recipients can be fetched is when the next_page_token is unset from the response.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + }, + "max_results": { + "name": "max_results", + "description": "Maximum number of recipients to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid recipients are returned (not recommended).\n- Note: The number of returned recipients might be less than the specified max_results size, even zero.\nThe only definitive indication that no further recipients can be fetched is when the next_page_token is unset from the response.", + "is_query": true, + "entity": { + "is_int": true + } + } + } + }, + { + "name": "RotateToken", + "description": "Refreshes the specified recipient's delta sharing authentication token with the provided token info.\nThe caller must be the owner of the recipient.", + "summary": "Rotate a token.", + "path": "/api/2.1/unity-catalog/recipients/{name}/rotate-token", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RotateRecipientToken", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the Recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "existing_token_expire_in_seconds", + "description": "The expiration time of the bearer token in ISO 8601 format. This will set the expiration_time\nof existing token only to a smaller timestamp, it cannot extend the expiration_time. Use 0 to\nexpire the existing token immediately, negative number will return an error.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the Recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "existing_token_expire_in_seconds", + "description": "The expiration time of the bearer token in ISO 8601 format. This will set the expiration_time\nof existing token only to a smaller timestamp, it cannot extend the expiration_time. Use 0 to\nexpire the existing token immediately, negative number will return an error.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "RecipientInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "existing_token_expire_in_seconds", + "description": "The expiration time of the bearer token in ISO 8601 format. This will set the expiration_time\nof existing token only to a smaller timestamp, it cannot extend the expiration_time. Use 0 to\nexpire the existing token immediately, negative number will return an error.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "name", + "description": "The name of the Recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the Recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "existing_token_expire_in_seconds", + "description": "The expiration time of the bearer token in ISO 8601 format. This will set the expiration_time\nof existing token only to a smaller timestamp, it cannot extend the expiration_time. Use 0 to\nexpire the existing token immediately, negative number will return an error.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "SharePermissions", + "description": "Gets the share permissions for the specified Recipient. The caller must have the **USE_RECIPIENT** privilege on the metastore or be the owner of the Recipient.", + "summary": "Get recipient share permissions.", + "path": "/api/2.1/unity-catalog/recipients/{name}/share-permissions", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SharePermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the Recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the Recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetRecipientSharePermissionsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "max_results", + "description": "Maximum number of permissions to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid permissions are returned (not recommended).\n- Note: The number of returned permissions might be less than the specified max_results size, even zero.\nThe only definitive indication that no further permissions can be fetched is when the next_page_token is unset from the response.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "name", + "description": "The name of the Recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the Recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates an existing recipient in the metastore. The caller must be a metastore admin or the owner of the recipient.\nIf the recipient name will be updated, the user must be both a metastore admin and the owner of the recipient.", + "summary": "Update a share recipient.", + "path": "/api/2.1/unity-catalog/recipients/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateRecipient", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RecipientInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "Description about the recipient.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "expiration_time", + "description": "Expiration timestamp of the token, in epoch milliseconds.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "id", + "description": "[Create,Update:IGN] common - id of the recipient", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "ip_access_list", + "description": "IP Access List", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IpAccessList", + "is_object": true + } + }, + { + "name": "name", + "description": "Name of the recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "new_name", + "description": "New name for the recipient.\n.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "Username of the recipient owner.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "properties_kvpairs", + "description": "Recipient properties as map of string key-value pairs.\nWhen provided in update request, the specified properties will override the existing\nproperties. To add and remove properties, one would need to perform a read-modify-write.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SecurablePropertiesKvPairs", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "sql.RedashConfig", + "name": "RedashConfig", + "description": "Redash V2 service for workspace configurations (internal)", + "package": { + "name": "sql" + }, + "is_hidden_cli": true, + "docs_group": "sql", + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "methods": [ + { + "name": "GetConfig", + "description": "Read workspace configuration for Redash-v2.", + "summary": "Read workspace configuration for Redash-v2.", + "path": "/api/2.0/redash-v2/config", + "is_legacy_empty_request": true, + "is_crud_read": true, + "is_hidden_cli": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetConfigRequest", + "is_object": true + }, + "response": { + "pascal_name": "ClientConfig", + "is_object": true + } + } + ] + }, + { + "id": "catalog.RegisteredModels", + "name": "RegisteredModels", + "description": "Databricks provides a hosted version of MLflow Model Registry in Unity Catalog.\nModels in Unity Catalog provide centralized access control, auditing, lineage, and discovery of\nML models across Databricks workspaces.\n\nAn MLflow registered model resides in the third layer of Unity Catalog’s three-level namespace.\nRegistered models contain model versions, which correspond to actual ML models (MLflow models). Creating new\nmodel versions requires use of the MLflow Python client. After model versions are created, you can\nload them for batch inference using MLflow Python client APIs, or deploy them for real-time serving using\nDatabricks Model Serving.\n\nAll operations on registered models and model versions require USE_CATALOG permissions on the enclosing catalog\nand USE_SCHEMA permissions on the enclosing schema. In addition, the following additional privileges are\nrequired for various operations:\n\n* To create a registered model, users must additionally have the CREATE_MODEL permission on the target schema.\n* To view registered model or model version metadata, model version data files, or invoke a model version,\nusers must additionally have the EXECUTE permission on the registered model\n* To update registered model or model version tags, users must additionally have APPLY TAG permissions on the registered model\n* To update other registered model or model version metadata (comments, aliases)\ncreate a new model version, or update permissions on the registered model, users must be owners of the\nregistered model.\n\nNote: The securable type for models is FUNCTION. When using REST APIs (for example, tagging, grants) that specify\na securable type, use FUNCTION as the securable type.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "RegisteredModelInfoNameToFullNameMap" + }, + "request": { + "pascal_name": "ListRegisteredModelsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new registered model in Unity Catalog.\n\nFile storage for model versions in the registered model\nwill be located in the default location which is specified by the parent schema,\nor the parent catalog, or the Metastore.\n\nFor registered model creation to succeed, the user must satisfy the following conditions:\n- The caller must be a metastore admin, or be the owner of the parent catalog and schema,\nor have the **USE_CATALOG** privilege on the parent catalog\nand the **USE_SCHEMA** privilege on the parent schema.\n- The caller must have the **CREATE MODEL** or **CREATE FUNCTION** privilege on the parent schema.", + "summary": "Create a Registered Model.", + "path": "/api/2.1/unity-catalog/models", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateRegisteredModelRequest", + "is_object": true + }, + "response": { + "pascal_name": "RegisteredModelInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "aliases", + "description": "List of aliases associated with the registered model", + "is_request_body_field": true, + "entity": { + "pascal_name": "RegisteredModelAliasList", + "array_value": { + "pascal_name": "RegisteredModelAlias", + "is_object": true + } + } + }, + { + "name": "browse_only", + "description": "Indicates whether the principal is limited to retrieving metadata for the associated object through the BROWSE privilege when include_browse is enabled in the request.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the registered model reside", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "The comment attached to the registered model", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "created_at", + "description": "Creation timestamp of the registered model in milliseconds since the Unix epoch", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "created_by", + "description": "The identifier of the user who created the registered model", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "The unique identifier of the metastore", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the registered model", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "The identifier of the user who owns the registered model", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the registered model resides", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_location", + "description": "The storage location on the cloud under which model version data files are stored", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "updated_at", + "description": "Last-update timestamp of the registered model in milliseconds since the Unix epoch", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "updated_by", + "description": "The identifier of the user who updated the registered model last time", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a registered model and all its model versions from the specified parent catalog and schema.\n\nThe caller must be a metastore admin or an owner of the registered model.\nFor the latter case, the caller must also be the owner or have the **USE_CATALOG**\nprivilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema.", + "summary": "Delete a Registered Model.", + "path": "/api/2.1/unity-catalog/models/{full_name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteRegisteredModelRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteAlias", + "description": "Deletes a registered model alias.\n\nThe caller must be a metastore admin or an owner of the registered model.\nFor the latter case, the caller must also be the owner or have the **USE_CATALOG**\nprivilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema.", + "summary": "Delete a Registered Model Alias.", + "path": "/api/2.1/unity-catalog/models/{full_name}/aliases/{alias}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteAliasRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "alias", + "description": "The name of the alias", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "alias", + "description": "The name of the alias", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "alias", + "description": "The name of the alias", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "alias", + "description": "The name of the alias", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Get a registered model.\n\nThe caller must be a metastore admin or an owner of (or have the **EXECUTE**\nprivilege on) the registered model. For the latter case, the caller must also be the owner\nor have the **USE_CATALOG** privilege on the parent catalog and the **USE_SCHEMA** privilege\non the parent schema.", + "summary": "Get a Registered Model.", + "path": "/api/2.1/unity-catalog/models/{full_name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetRegisteredModelRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RegisteredModelInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "include_aliases", + "description": "Whether to include registered model aliases in the response", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "include_browse", + "description": "Whether to include registered models in the response for which the principal can only access selective metadata for", + "is_query": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List registered models. You can list registered models under a particular schema,\nor list all registered models in the current metastore.\n\nThe returned models are filtered based on the privileges of the calling user.\nFor example, the metastore admin is able to list all the registered models.\nA regular user needs to be the owner or have the **EXECUTE** privilege\non the registered model to receive the registered models in the response.\nFor the latter case, the caller must also be the owner or have the **USE_CATALOG**\nprivilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema.\n\nThere is no guarantee of a specific ordering of the elements in the response.\n\nPAGINATION BEHAVIOR: The API is by default paginated, a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List Registered Models.", + "path": "/api/2.1/unity-catalog/models", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListRegisteredModelsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListRegisteredModelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "catalog_name", + "description": "The identifier of the catalog under which to list registered models.\nIf specified, schema_name must be specified.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "include_browse", + "description": "Whether to include registered models in the response for which the principal can only access selective metadata for", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "max_results", + "description": "Max number of registered models to return.\n\nIf both catalog and schema are specified:\n- when max_results is not specified, the page length is set to a server configured value (10000, as of 4/2/2024).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value (10000, as of 4/2/2024);\n- when set to 0, the page length is set to a server configured value (10000, as of 4/2/2024);\n- when set to a value less than 0, an invalid parameter error is returned;\n\nIf neither schema nor catalog is specified:\n- when max_results is not specified, the page length is set to a server configured value (100, as of 4/2/2024).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value (1000, as of 4/2/2024);\n- when set to 0, the page length is set to a server configured value (100, as of 4/2/2024);\n- when set to a value less than 0, an invalid parameter error is returned;", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque token to send for the next page of results (pagination).", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The identifier of the schema under which to list registered models.\nIf specified, catalog_name must be specified.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque token to send for the next page of results (pagination).", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "SetAlias", + "description": "Set an alias on the specified registered model.\n\nThe caller must be a metastore admin or an owner of the registered model.\nFor the latter case, the caller must also be the owner or have the **USE_CATALOG**\nprivilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema.", + "summary": "Set a Registered Model Alias.", + "path": "/api/2.1/unity-catalog/models/{full_name}/aliases/{alias}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SetRegisteredModelAliasRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "alias", + "description": "The name of the alias", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_num", + "description": "The version number of the model version to which the alias points", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "alias", + "description": "The name of the alias", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "version_num", + "description": "The version number of the model version to which the alias points", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ] + }, + "response": { + "pascal_name": "RegisteredModelAlias", + "is_object": true + }, + "all_fields": [ + { + "name": "alias", + "description": "The name of the alias", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_num", + "description": "The version number of the model version to which the alias points", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "alias", + "description": "The name of the alias", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "version_num", + "description": "The version number of the model version to which the alias points", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the specified registered model.\n\nThe caller must be a metastore admin or an owner of the registered model.\nFor the latter case, the caller must also be the owner or have the **USE_CATALOG**\nprivilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema.\n\nCurrently only the name, the owner or the comment of the registered model can be updated.", + "summary": "Update a Registered Model.", + "path": "/api/2.1/unity-catalog/models/{full_name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateRegisteredModelRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RegisteredModelInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "aliases", + "description": "List of aliases associated with the registered model", + "is_request_body_field": true, + "entity": { + "pascal_name": "RegisteredModelAliasList", + "array_value": { + "pascal_name": "RegisteredModelAlias", + "is_object": true + } + } + }, + { + "name": "browse_only", + "description": "Indicates whether the principal is limited to retrieving metadata for the associated object through the BROWSE privilege when include_browse is enabled in the request.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the registered model reside", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "The comment attached to the registered model", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "created_at", + "description": "Creation timestamp of the registered model in milliseconds since the Unix epoch", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "created_by", + "description": "The identifier of the user who created the registered model", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "The unique identifier of the metastore", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the registered model", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "new_name", + "description": "New name for the registered model.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "The identifier of the user who owns the registered model", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the registered model resides", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_location", + "description": "The storage location on the cloud under which model version data files are stored", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "updated_at", + "description": "Last-update timestamp of the registered model in milliseconds since the Unix epoch", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "updated_by", + "description": "The identifier of the user who updated the registered model last time", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the registered model", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "workspace.Repos", + "name": "Repos", + "description": "The Repos API allows users to manage their git repos. Users can use the API to access all\nrepos that they have manage permissions on.\n\nDatabricks Repos is a visual Git client in Databricks. It supports common Git operations\nsuch a cloning a repository, committing and pushing, pulling, branch management, and visual\ncomparison of diffs when committing.\n\nWithin Repos you can develop code in notebooks or other files and follow data science and\nengineering code development best practices using Git for version control, collaboration,\nand CI/CD.", + "package": { + "name": "workspace" + }, + "docs_group": "workspace", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "RepoInfoPathToIdMap" + }, + "request": { + "pascal_name": "ListReposRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a repo in the workspace and links it to the remote Git repo specified.\nNote that repos created programmatically must be linked to a remote Git repo, unlike repos\ncreated in the browser.", + "summary": "Create a repo.", + "path": "/api/2.0/repos", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateRepoRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "url", + "description": "URL of the Git repository to be linked.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "provider", + "description": "Git provider. This field is case-insensitive. The available Git providers are `gitHub`,\n`bitbucketCloud`, `gitLab`, `azureDevOpsServices` (Azure DevOps Services, including\nMicrosoft Entra ID authentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket\nData Center), `gitLabEnterpriseEdition` (GitLab Self-Managed), and `awsCodeCommit`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "url", + "description": "URL of the Git repository to be linked.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "provider", + "description": "Git provider. This field is case-insensitive. The available Git providers are `gitHub`,\n`bitbucketCloud`, `gitLab`, `azureDevOpsServices` (Azure DevOps Services, including\nMicrosoft Entra ID authentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket\nData Center), `gitLabEnterpriseEdition` (GitLab Self-Managed), and `awsCodeCommit`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateRepoResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "git_credential_id", + "description": "Git credential ID to use when cloning the repository. The Git credential must be\nconfigured for the current user.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "path", + "description": "Desired path for the repo in the workspace. Almost any path in the workspace can be chosen.\nIf repo is created in `/Repos`, path must be in the format `/Repos/{folder}/{repo-name}`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "provider", + "description": "Git provider. This field is case-insensitive. The available Git providers are `gitHub`,\n`bitbucketCloud`, `gitLab`, `azureDevOpsServices` (Azure DevOps Services, including\nMicrosoft Entra ID authentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket\nData Center), `gitLabEnterpriseEdition` (GitLab Self-Managed), and `awsCodeCommit`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "sparse_checkout", + "description": "If specified, the repo will be created with sparse checkout enabled. You cannot enable/disable\nsparse checkout after the repo is created.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SparseCheckout", + "is_object": true + } + }, + { + "name": "url", + "description": "URL of the Git repository to be linked.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "url", + "description": "URL of the Git repository to be linked.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "provider", + "description": "Git provider. This field is case-insensitive. The available Git providers are `gitHub`,\n`bitbucketCloud`, `gitLab`, `azureDevOpsServices` (Azure DevOps Services, including\nMicrosoft Entra ID authentication), `gitHubEnterprise`, `bitbucketServer` (Bitbucket\nData Center), `gitLabEnterpriseEdition` (GitLab Self-Managed), and `awsCodeCommit`.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes the specified repo.", + "summary": "Delete a repo.", + "path": "/api/2.0/repos/{repo_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteRepoRequest", + "is_object": true, + "required_fields": [ + { + "name": "repo_id", + "description": "The ID for the corresponding repo to delete.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "repo_id", + "description": "The ID for the corresponding repo to delete.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteRepoResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "repo_id", + "description": "The ID for the corresponding repo to delete.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "repo_id", + "description": "The ID for the corresponding repo to delete.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "Get", + "description": "Returns the repo with the given repo ID.", + "summary": "Get a repo.", + "path": "/api/2.0/repos/{repo_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetRepoRequest", + "is_object": true, + "required_fields": [ + { + "name": "repo_id", + "description": "ID of the Git folder (repo) object in the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "repo_id", + "description": "ID of the Git folder (repo) object in the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "GetRepoResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "repo_id", + "description": "ID of the Git folder (repo) object in the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "repo_id", + "description": "ID of the Git folder (repo) object in the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get repo permission levels.", + "path": "/api/2.0/permissions/repos/{repo_id}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetRepoPermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetRepoPermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of a repo. Repos can inherit permissions from their root object.", + "summary": "Get repo permissions.", + "path": "/api/2.0/permissions/repos/{repo_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetRepoPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RepoPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Returns repos that the calling user has Manage permissions on.\nUse `next_page_token` to iterate through additional pages.\n\nDeprecated: This operation does not return a complete list of the repos in the workspace, because\nrepos with the Git CLI enabled are not included in its results. Instead, use the Repos and\nWorkspace APIs to find repos and their associated metadata in the workspace.", + "summary": "Get repos.", + "path": "/api/2.0/repos", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListReposRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListReposResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "next_page_token", + "description": "Token used to get the next page of results. If not specified, returns the first page of\nresults as well as a next page token if there are more results.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "path_prefix", + "description": "Filters repos that have paths starting with the given path prefix.\nIf not provided or when provided an effectively empty prefix (`/` or `/Workspace`)\nGit folders (repos) from `/Workspace/Repos` will be served.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "next_page_token", + "description": "Token used to get the next page of results. If not specified, returns the first page of\nresults as well as a next page token if there are more results.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set repo permissions.", + "path": "/api/2.0/permissions/repos/{repo_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RepoPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RepoPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "RepoAccessControlRequestList", + "array_value": { + "pascal_name": "RepoAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the repo to a different branch or tag, or updates the repo to the latest commit on\nthe same branch.", + "summary": "Update a repo.", + "path": "/api/2.0/repos/{repo_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateRepoRequest", + "is_object": true, + "required_fields": [ + { + "name": "repo_id", + "description": "ID of the Git folder (repo) object in the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "repo_id", + "description": "ID of the Git folder (repo) object in the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateRepoResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "branch", + "description": "Branch that the local version of the repo is checked out to.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "dangerously_force_discard_all", + "description": "WARNING: DESTRUCTIVE AND IRREVERSIBLE. If true, permanently deletes ALL uncommitted\nchanges in the Git folder — staged, unstaged, and untracked files — before updating.\nLost data CANNOT be recovered.\n\nNEVER use this on Git folders where users author or edit files. This flag is intended\nONLY for automated jobs that treat the Git folder as a read-only mirror of a remote\nbranch and need to force-sync it. If any user has uncommitted work in the Git folder,\nthat work will be permanently destroyed without warning.\n\nLocal commits that have been made but not yet pushed to the remote are preserved.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "git_credential_id", + "description": "Git credential ID to use for this update operation. The Git credential must be\nconfigured for the current user.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "repo_id", + "description": "ID of the Git folder (repo) object in the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "sparse_checkout", + "description": "If specified, update the sparse checkout settings. The update will fail if sparse checkout is\nnot enabled for the repo.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SparseCheckoutUpdate", + "is_object": true + } + }, + { + "name": "tag", + "description": "Tag that the local version of the repo is checked out to. Updating the repo to a tag puts\nthe repo in a detached HEAD state. Before committing new changes, you must update the repo to\na branch instead of the detached HEAD.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "repo_id", + "description": "ID of the Git folder (repo) object in the workspace.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on a repo. Repos can inherit permissions from their root object.", + "summary": "Update repo permissions.", + "path": "/api/2.0/permissions/repos/{repo_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RepoPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RepoPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "RepoAccessControlRequestList", + "array_value": { + "pascal_name": "RepoAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "repo_id", + "description": "The repo for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.ResourceQuotas", + "name": "ResourceQuotas", + "description": "Unity Catalog enforces resource quotas on all securable objects, which limits the number of resources that can be created. Quotas are expressed in terms of a resource type and a parent (for example, tables per metastore or schemas per catalog). The resource quota APIs enable you to monitor your current usage and limits. For more information on resource quotas see the [Unity Catalog documentation](https://docs.databricks.com/en/data-governance/unity-catalog/index.html#resource-quotas).", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListQuotasRequest" + } + }, + "methods": [ + { + "name": "GetQuota", + "description": "The GetQuota API returns usage information for a single resource quota, defined as a\nchild-parent pair. This API also refreshes the quota count if it is out of date.\nRefreshes are triggered asynchronously. The updated count might not be returned in the first call.", + "summary": "Get information for a single resource quota.", + "path": "/api/2.1/unity-catalog/resource-quotas/{parent_securable_type}/{parent_full_name}/{quota_name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetQuotaRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent_securable_type", + "description": "Securable type of the quota parent.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent_full_name", + "description": "Full name of the parent resource. Provide the metastore ID if the parent is a metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "quota_name", + "description": "Name of the quota. Follows the pattern of the quota type, with \"-quota\" added as a suffix.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent_securable_type", + "description": "Securable type of the quota parent.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent_full_name", + "description": "Full name of the parent resource. Provide the metastore ID if the parent is a metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "quota_name", + "description": "Name of the quota. Follows the pattern of the quota type, with \"-quota\" added as a suffix.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetQuotaResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "parent_full_name", + "description": "Full name of the parent resource. Provide the metastore ID if the parent is a metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent_securable_type", + "description": "Securable type of the quota parent.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "quota_name", + "description": "Name of the quota. Follows the pattern of the quota type, with \"-quota\" added as a suffix.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent_securable_type", + "description": "Securable type of the quota parent.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent_full_name", + "description": "Full name of the parent resource. Provide the metastore ID if the parent is a metastore.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "quota_name", + "description": "Name of the quota. Follows the pattern of the quota type, with \"-quota\" added as a suffix.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListQuotas", + "description": "ListQuotas returns all quota values under the metastore. There are no SLAs on the freshness of the counts\nreturned. This API does not trigger a refresh of quota counts.\n\nPAGINATION BEHAVIOR: The API is by default paginated, a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List all resource quotas under a metastore.", + "path": "/api/2.1/unity-catalog/resource-quotas/all-resource-quotas", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListQuotasRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListQuotasResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "max_results", + "description": "The number of quotas to return.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque token for the next page of results.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque token for the next page of results.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "settings.RestrictWorkspaceAdmins", + "name": "RestrictWorkspaceAdmins", + "description": "The Restrict Workspace Admins setting lets you control the capabilities of workspace admins.\nWith the setting status set to ALLOW_ALL, workspace admins can create service principal personal access\ntokens on behalf of any service principal in their workspace. Workspace admins can also change a job owner to\nany user in their workspace. And they can change the job run_as setting to any user in their workspace or to a\nservice principal on which they have the Service Principal User role. With the setting status set to RESTRICT_TOKENS_AND_JOB_RUN_AS,\nworkspace admins can only create personal access tokens on behalf of service principals they have the\nService Principal User role on. They can also only change a job owner to themselves. And they can change the job\nrun_as setting to themselves or to a service principal on which they have the Service Principal User role.", + "package": { + "name": "settings" + }, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "Delete", + "description": "Reverts the restrict workspace admins setting status for the workspace. A fresh etag needs\nto be provided in `DELETE` requests (as a query parameter). The etag can be retrieved by making a `GET` request\nbefore the DELETE request. If the setting is updated/deleted concurrently, `DELETE` fails with 409 and the\nrequest must be retried by using the fresh etag in the 409 response.", + "summary": "Delete the restrict workspace admins setting.", + "path": "/api/2.0/settings/types/restrict_workspace_admins/names/default", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteRestrictWorkspaceAdminsSettingRequest", + "is_object": true + }, + "response": { + "pascal_name": "DeleteRestrictWorkspaceAdminsSettingResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the restrict workspace admins setting.", + "summary": "Get the restrict workspace admins setting.", + "path": "/api/2.0/settings/types/restrict_workspace_admins/names/default", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetRestrictWorkspaceAdminsSettingRequest", + "is_object": true + }, + "response": { + "pascal_name": "RestrictWorkspaceAdminsSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "restrict_workspace_admins", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RestrictWorkspaceAdminsMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "restrict_workspace_admins", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RestrictWorkspaceAdminsMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the restrict workspace admins setting for the workspace. A fresh etag needs\nto be provided in `PATCH` requests (as part of the setting field). The etag can be retrieved by making a GET\nrequest before the `PATCH` request. If the setting is updated concurrently, `PATCH` fails with 409 and the\nrequest must be retried by using the fresh etag in the 409 response.", + "summary": "Update the restrict workspace admins setting.", + "path": "/api/2.0/settings/types/restrict_workspace_admins/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateRestrictWorkspaceAdminsSettingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RestrictWorkspaceAdminsSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RestrictWorkspaceAdminsSetting", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RestrictWorkspaceAdminsSetting", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "restrict_workspace_admins", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RestrictWorkspaceAdminsMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "restrict_workspace_admins", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RestrictWorkspaceAdminsMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RestrictWorkspaceAdminsSetting", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "catalog.Rfa", + "name": "Rfa", + "description": "Request for Access enables users to request access for Unity Catalog securables.\n\nThese APIs provide a standardized way for securable owners (or users with MANAGE privileges) to manage access request destinations.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "methods": [ + { + "name": "BatchCreateAccessRequests", + "description": "Creates access requests for Unity Catalog permissions for a specified principal on a securable object.\nThis Batch API can take in multiple principals, securable objects,\nand permissions as the input and returns the access request destinations for each.\nPrincipals must be unique across the API call.\n\nThe supported securable types are: \"metastore\", \"catalog\", \"schema\", \"table\",\n\"external_location\", \"connection\", \"credential\", \"function\", \"registered_model\", and \"volume\".", + "summary": "Create Access Requests.", + "path": "/api/3.0/rfa/requests", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "BatchCreateAccessRequestsRequest", + "is_object": true + }, + "response": { + "pascal_name": "BatchCreateAccessRequestsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "requests", + "description": "A list of individual access requests, where each request corresponds to\na set of permissions being requested on a list of securables for a specified principal.\n\nAt most 30 requests per API call.", + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateAccessRequestList", + "array_value": { + "pascal_name": "CreateAccessRequest", + "is_object": true + } + } + } + ] + }, + { + "name": "GetAccessRequestDestinations", + "description": "Gets an array of access request destinations for the specified securable.\nAny caller can see URL destinations or the destinations on the metastore.\nOtherwise, only those with **BROWSE** permissions on the securable can see destinations.\n\nThe supported securable types are: \"metastore\", \"catalog\", \"schema\", \"table\",\n\"external_location\", \"connection\", \"credential\", \"function\", \"registered_model\", and \"volume\".", + "summary": "Get Access Request Destinations.", + "path": "/api/3.0/rfa/destinations/{securable_type}/{full_name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetAccessRequestDestinationsRequest", + "is_object": true, + "required_fields": [ + { + "name": "securable_type", + "description": "The type of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "The full name of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "securable_type", + "description": "The type of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "The full name of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccessRequestDestinations", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "securable", + "description": "The securable for which the access request destinations are being modified or read.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Securable", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "securable", + "description": "The securable for which the access request destinations are being modified or read.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Securable", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "full_name", + "description": "The full name of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable_type", + "description": "The type of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "securable_type", + "description": "The type of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "The full name of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateAccessRequestDestinations", + "description": "Updates the access request destinations for the given securable.\nThe caller must be a metastore admin, the owner of the securable, or a user that has the **MANAGE** privilege on the securable in order to assign destinations.\nA maximum of 5 emails and 5 external notification destinations (Slack, Microsoft Teams, Generic Webhook, and Databricks App Slack/Teams destinations) can be assigned to a securable.\nIf a URL destination is assigned, no other destinations can be set.\n\nThe supported securable types are: \"metastore\", \"catalog\", \"schema\", \"table\",\n\"external_location\", \"connection\", \"credential\", \"function\", \"registered_model\", and \"volume\".", + "summary": "Update Access Request Destinations.", + "path": "/api/3.0/rfa/destinations", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateAccessRequestDestinationsRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "access_request_destinations", + "description": "The access request destinations to assign to the securable.\nFor each destination, a **destination_id** and **destination_type** must be defined.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AccessRequestDestinations", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "access_request_destinations", + "description": "The access request destinations to assign to the securable.\nFor each destination, a **destination_id** and **destination_type** must be defined.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AccessRequestDestinations", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "access_request_destinations", + "description": "The access request destinations to assign to the securable.\nFor each destination, a **destination_id** and **destination_type** must be defined.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AccessRequestDestinations", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "securable", + "description": "The securable for which the access request destinations are being modified or read.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Securable", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "securable", + "description": "The securable for which the access request destinations are being modified or read.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Securable", + "is_object": true + } + } + ] + } + }, + "response": { + "pascal_name": "AccessRequestDestinations", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "securable", + "description": "The securable for which the access request destinations are being modified or read.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Securable", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "securable", + "description": "The securable for which the access request destinations are being modified or read.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Securable", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "access_request_destinations", + "description": "The access request destinations to assign to the securable.\nFor each destination, a **destination_id** and **destination_type** must be defined.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AccessRequestDestinations", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "securable", + "description": "The securable for which the access request destinations are being modified or read.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Securable", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "securable", + "description": "The securable for which the access request destinations are being modified or read.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Securable", + "is_object": true + } + } + ] + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "are_any_destinations_hidden", + "description": "Indicates whether any destinations are hidden from the caller due to a lack of permissions.\nThis value is true if the caller does not have permission to see all destinations.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "destination_source_securable", + "description": "The source securable from which the destinations are inherited. Either the same value as securable (if destination\nis set directly on the securable) or the nearest parent securable with destinations set.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Securable", + "is_object": true + } + }, + { + "name": "destinations", + "description": "The access request destinations for the securable.", + "is_request_body_field": true, + "entity": { + "pascal_name": "NotificationDestinationList", + "array_value": { + "pascal_name": "NotificationDestination", + "is_object": true + } + } + }, + { + "name": "full_name", + "description": "The full name of the securable. Redundant with the name in the securable object, but necessary for Terraform integration", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable", + "description": "The securable for which the access request destinations are being modified or read.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Securable", + "is_object": true + } + }, + { + "name": "securable_type", + "description": "The type of the securable. Redundant with the type in the securable object, but necessary for Terraform integration", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable", + "description": "The securable for which the access request destinations are being modified or read.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Securable", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "sandbox.Sandbox", + "name": "Sandbox", + "description": "Create, manage, and control the lifecycle of sandboxes -- isolated, pre-configured, low-latency Serverless compute environments for running code.", + "package": { + "name": "sandbox" + }, + "docs_group": "sandbox", + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "list": { + "request": { + "pascal_name": "ListDirectoryContentsRequest" + } + }, + "methods": [ + { + "name": "CreateDirectory", + "description": "Creates a directory in a sandbox, including missing parents by default.", + "summary": ".", + "path": "/api/2.0/sandbox-files/{parent=sandboxes/*}/directories:make", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateDirectoryRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute UTF-8 path of the directory.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "path", + "description": "Absolute UTF-8 path of the directory.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateDirectoryResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "parents", + "description": "Defaults to true, which also succeeds when the directory already exists.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "path", + "description": "Absolute UTF-8 path of the directory.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute UTF-8 path of the directory.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateSandbox", + "description": "Creates a new Sandbox.", + "summary": "Create a sandbox.", + "path": "/api/2.0/sandboxes", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateSandboxRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "sandbox", + "description": "The sandbox to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Sandbox", + "is_object": true + } + }, + { + "name": "sandbox_id", + "description": "Client-supplied ID that becomes the final path segment of the resource name.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "sandbox_id", + "description": "Client-supplied ID that becomes the final path segment of the resource name.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "sandbox", + "description": "The sandbox to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Sandbox", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "sandbox", + "description": "The sandbox to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Sandbox", + "is_object": true + } + }, + "response": { + "pascal_name": "Sandbox", + "is_object": true + }, + "all_fields": [ + { + "name": "sandbox", + "description": "The sandbox to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Sandbox", + "is_object": true + } + }, + { + "name": "sandbox_id", + "description": "Client-supplied ID that becomes the final path segment of the resource name.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Output only. The creation time of the sandbox.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "display_name", + "description": "Human-readable display label for the sandbox. At most 256 characters.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The sandbox resource name, in the form `sandboxes/{sandbox_id}`. Derived from\n`sandbox_id`; any value supplied in a create or update request body is ignored.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "The desired configuration of the sandbox, supplied by the caller at creation time.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SandboxSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "The observed runtime state of the sandbox, populated by the server.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SandboxStatus", + "is_object": true + } + }, + { + "name": "update_time", + "description": "Output only. The last update time of the sandbox metadata and spec.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "sandbox_id", + "description": "Client-supplied ID that becomes the final path segment of the resource name.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeletePath", + "description": "Deletes a file, symlink, or empty directory, with an option for recursive deletion.\nSucceeds if the path is already absent.", + "summary": ".", + "path": "/api/2.0/sandbox-files/{parent=sandboxes/*}/paths:remove", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeletePathRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute UTF-8 path of the entry to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "path", + "description": "Absolute UTF-8 path of the entry to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeletePathResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute UTF-8 path of the entry to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "recursive", + "description": "Required for a non-empty directory.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute UTF-8 path of the entry to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteSandbox", + "description": "Deletes a Sandbox.", + "summary": "Delete a sandbox.", + "path": "/api/2.0/{name=sandboxes/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteSandboxRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ExecuteCommandSync", + "description": "Runs a command in the sandbox and blocks until it exits, returning the\ncaptured stdout, stderr and exit code in a single response.", + "summary": "Run a command in a sandbox and wait for its result.", + "path": "/api/2.0/sandbox-exec/{name=sandboxes/*}/exec-sync", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ExecuteCommandSyncRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the sandbox to run the command in, in the form\n`sandboxes/{sandbox_id}`. Bound from the URL path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "cmd", + "description": "Executable or command to run (e.g. `/bin/echo`, `python3`).", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the sandbox to run the command in, in the form\n`sandboxes/{sandbox_id}`. Bound from the URL path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "cmd", + "description": "Executable or command to run (e.g. `/bin/echo`, `python3`).", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExecuteCommandSyncResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "args", + "description": "Arguments passed to `cmd`.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "cmd", + "description": "Executable or command to run (e.g. `/bin/echo`, `python3`).", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "envs", + "description": "Extra environment variables for the command's process, merged over the\nsandbox's default environment.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "execution_timeout", + "description": "Maximum time to wait for the command to finish. When it elapses the\ncommand is terminated and the response carries status `TIMED_OUT`. The\nserver applies a default when unset and clamps to an upper bound; negative\nor otherwise invalid durations are rejected with `INVALID_ARGUMENT`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_duration": true + } + }, + { + "name": "name", + "description": "Resource name of the sandbox to run the command in, in the form\n`sandboxes/{sandbox_id}`. Bound from the URL path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the sandbox to run the command in, in the form\n`sandboxes/{sandbox_id}`. Bound from the URL path.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "cmd", + "description": "Executable or command to run (e.g. `/bin/echo`, `python3`).", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetMetadata", + "description": "Returns metadata for a path without following its final symlink.", + "summary": ".", + "path": "/api/2.0/sandbox-files/{parent=sandboxes/*}/paths:describe", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetMetadataRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute UTF-8 path of the entry to inspect.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute UTF-8 path of the entry to inspect.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetMetadataResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute UTF-8 path of the entry to inspect.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute UTF-8 path of the entry to inspect.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSandbox", + "description": "Retrieves a Sandbox by name.", + "summary": "Get a sandbox.", + "path": "/api/2.0/{name=sandboxes/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetSandboxRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Sandbox", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListCommands", + "description": "Lists the tracked command executions (running and completed) in a sandbox.", + "summary": "List the tracked command executions in a sandbox.", + "path": "/api/2.0/sandbox-exec/{parent=sandboxes/*}/commands", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListCommandsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "The sandbox whose commands to list, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "The sandbox whose commands to list, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListCommandsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Maximum number of commands to return. The server may return fewer.\nIf unspecified, the server returns all commands.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Page token returned by a previous ListCommands call. Use this to\nretrieve the next page of results.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "The sandbox whose commands to list, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "The sandbox whose commands to list, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListDirectoryContents", + "description": "Lists a directory's immediate children in UTF-8 name order. Later pages may reflect concurrent changes.", + "summary": ".", + "path": "/api/2.0/sandbox-files/{parent=sandboxes/*}/directory-entries", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListDirectoryContentsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute UTF-8 path of the directory.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute UTF-8 path of the directory.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListDirectoryContentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "Zero uses the default of 1000; values above 1000 are clamped to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "The token from a prior response. Keep parent and path unchanged between pages.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute UTF-8 path of the directory.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "Absolute UTF-8 path of the directory.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "The token from a prior response. Keep parent and path unchanged between pages.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListSandboxes", + "description": "Lists all Sandboxes.", + "summary": "List sandboxes.", + "path": "/api/2.0/sandboxes", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListSandboxesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListSandboxesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "RenamePath", + "description": "Renames a path within a sandbox. The destination must be absent and on the same filesystem.", + "summary": ".", + "path": "/api/2.0/sandbox-files/{parent=sandboxes/*}/paths:rename", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "RenamePathRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "Sandbox resource name, for example `sandboxes/my-sandbox`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "Absolute UTF-8 path to move.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "destination", + "description": "Exact absolute UTF-8 destination; it must not already exist.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Sandbox resource name, for example `sandboxes/my-sandbox`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "source", + "description": "Absolute UTF-8 path to move.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "destination", + "description": "Exact absolute UTF-8 destination; it must not already exist.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RenamePathResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "destination", + "description": "Exact absolute UTF-8 destination; it must not already exist.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Sandbox resource name, for example `sandboxes/my-sandbox`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "Absolute UTF-8 path to move.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Sandbox resource name, for example `sandboxes/my-sandbox`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "source", + "description": "Absolute UTF-8 path to move.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "destination", + "description": "Exact absolute UTF-8 destination; it must not already exist.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "StartSandbox", + "description": "Starts a previously stopped Sandbox under the same sandbox name.\nReturns NOT_FOUND if there is no stopped sandbox to start for\nthe given name.", + "summary": "Start a sandbox.", + "path": "/api/2.0/{name=sandboxes/*}/start", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "StartSandboxRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the sandbox to start, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the sandbox to start, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Sandbox", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name of the sandbox to start, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the sandbox to start, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "StopSandbox", + "description": "Stops a running Sandbox, preserving it so it can later be restarted with\na Start request.", + "summary": "Stop a sandbox.", + "path": "/api/2.0/{name=sandboxes/*}/stop", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "StopSandboxRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the sandbox to stop, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the sandbox to stop, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Sandbox", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name of the sandbox to stop, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the sandbox to stop, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateSandbox", + "description": "Updates mutable fields on an existing Sandbox. Allowlisted update_mask\npaths today: display_name, spec.compute.inactivity_timeout.\nReturns INVALID_PARAMETER_VALUE for empty masks or unknown paths;\nNOT_FOUND if the sandbox does not exist.", + "summary": "Update a sandbox.", + "path": "/api/2.0/{name=sandboxes/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateSandboxRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Resource name of the sandbox to update, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "sandbox", + "description": "The Sandbox resource carrying new field values. Only fields named in\n`update_mask` are read; unmasked fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Sandbox", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Field paths to update. Must be a non-empty subset of:\n- display_name\n- spec.compute.inactivity_timeout\nAny other path returns INVALID_PARAMETER_VALUE.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Resource name of the sandbox to update, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Field paths to update. Must be a non-empty subset of:\n- display_name\n- spec.compute.inactivity_timeout\nAny other path returns INVALID_PARAMETER_VALUE.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "sandbox", + "description": "The Sandbox resource carrying new field values. Only fields named in\n`update_mask` are read; unmasked fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Sandbox", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "sandbox", + "description": "The Sandbox resource carrying new field values. Only fields named in\n`update_mask` are read; unmasked fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Sandbox", + "is_object": true + } + }, + "response": { + "pascal_name": "Sandbox", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Resource name of the sandbox to update, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "sandbox", + "description": "The Sandbox resource carrying new field values. Only fields named in\n`update_mask` are read; unmasked fields are ignored.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Sandbox", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Field paths to update. Must be a non-empty subset of:\n- display_name\n- spec.compute.inactivity_timeout\nAny other path returns INVALID_PARAMETER_VALUE.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "create_time", + "description": "Output only. The creation time of the sandbox.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "display_name", + "description": "Human-readable display label for the sandbox. At most 256 characters.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The sandbox resource name, in the form `sandboxes/{sandbox_id}`. Derived from\n`sandbox_id`; any value supplied in a create or update request body is ignored.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spec", + "description": "The desired configuration of the sandbox, supplied by the caller at creation time.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SandboxSpec", + "is_object": true + } + }, + { + "name": "status", + "description": "The observed runtime state of the sandbox, populated by the server.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "SandboxStatus", + "is_object": true + } + }, + { + "name": "update_time", + "description": "Output only. The last update time of the sandbox metadata and spec.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Resource name of the sandbox to update, in the form `sandboxes/{sandbox_id}`.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Field paths to update. Must be a non-empty subset of:\n- display_name\n- spec.compute.inactivity_timeout\nAny other path returns INVALID_PARAMETER_VALUE.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ] + } + ] + }, + { + "id": "catalog.Schemas", + "name": "Schemas", + "description": "A schema (also called a database) is the second layer of Unity Catalog’s three-level\nnamespace. A schema organizes tables, views, and functions. To access (or list) a table or view in\na schema, users must have the USE_SCHEMA data permission on the schema and its parent catalog,\nand they must have the SELECT permission on the table or view.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListSchemasRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new schema for catalog in the Metastore.\nThe caller must be a metastore admin, or have the **CREATE_SCHEMA** privilege in the parent catalog.", + "summary": "Create a schema.", + "path": "/api/2.1/unity-catalog/schemas", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateSchema", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of schema, relative to parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "Name of parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of schema, relative to parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "Name of parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SchemaInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "catalog_name", + "description": "Name of parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "User-provided free-form text description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_max_retention_hours", + "description": "Custom maximum retention period in hours for the schema.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "name", + "description": "Name of schema, relative to parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "properties", + "description": "A map of key-value properties attached to the securable.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "storage_root", + "description": "Storage root URL for managed tables within schema.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of schema, relative to parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "Name of parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes the specified schema from the parent catalog.\nThe caller must be the owner of the schema or an owner of the parent catalog.", + "summary": "Delete a schema.", + "path": "/api/2.1/unity-catalog/schemas/{full_name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteSchemaRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "Full name of the schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "Full name of the schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "force", + "description": "Force deletion even if the schema is not empty.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "full_name", + "description": "Full name of the schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "Full name of the schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the specified schema within the metastore.\nThe caller must be a metastore admin, the owner of the schema, or a user that has the **USE_SCHEMA** privilege on the schema.", + "summary": "Get a schema.", + "path": "/api/2.1/unity-catalog/schemas/{full_name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetSchemaRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "Full name of the schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "Full name of the schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SchemaInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "Full name of the schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "include_browse", + "description": "Whether to include schemas in the response for which the principal can only access selective metadata for", + "is_query": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "Full name of the schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets an array of schemas for a catalog in the metastore.\nIf the caller is the metastore admin or the owner of the parent catalog, all schemas for the catalog will be retrieved.\nOtherwise, only schemas owned by the caller (or for which the caller has the **USE_SCHEMA** privilege) will be retrieved.\nThere is no guarantee of a specific ordering of the elements in the array.\n\nNOTE: we recommend using max_results=0 to use the paginated version of this API. Unpaginated calls will be deprecated soon.\n\nPAGINATION BEHAVIOR: When using pagination (max_results \u003e= 0), a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List schemas.", + "path": "/api/2.1/unity-catalog/schemas", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListSchemasRequest", + "is_object": true, + "required_fields": [ + { + "name": "catalog_name", + "description": "Parent catalog for schemas of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "catalog_name", + "description": "Parent catalog for schemas of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListSchemasResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "catalog_name", + "description": "Parent catalog for schemas of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "include_browse", + "description": "Whether to include schemas in the response for which the principal can only access selective metadata for", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "max_results", + "description": "Maximum number of schemas to return.\nIf not set, all the schemas are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "catalog_name", + "description": "Parent catalog for schemas of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + }, + "max_results": { + "name": "max_results", + "description": "Maximum number of schemas to return.\nIf not set, all the schemas are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "is_query": true, + "entity": { + "is_int": true + } + } + } + }, + { + "name": "Update", + "description": "Updates a schema for a catalog. The caller must be the owner of the schema or a metastore admin.\nIf the caller is a metastore admin, only the __owner__ field can be changed in the update.\nIf the __name__ field must be updated, the caller must be a metastore admin or have the **CREATE_SCHEMA** privilege on the parent catalog.", + "summary": "Update a schema.", + "path": "/api/2.1/unity-catalog/schemas/{full_name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateSchema", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "Full name of the schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "Full name of the schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SchemaInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "User-provided free-form text description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_max_retention_hours", + "description": "Custom maximum retention period in hours for the schema.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "enable_predictive_optimization", + "description": "Whether predictive optimization should be enabled for this object and objects under it.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EnablePredictiveOptimization", + "enum": [ + { + "content": "DISABLE" + }, + { + "content": "ENABLE" + }, + { + "content": "INHERIT" + } + ] + } + }, + { + "name": "full_name", + "description": "Full name of the schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "new_name", + "description": "New name for the schema.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "Username of current owner of schema.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "properties", + "description": "A map of key-value properties attached to the securable.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "Full name of the schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "workspace.Secrets", + "name": "Secrets", + "description": "The Secrets API allows you to manage secrets, secret scopes, and access permissions.\n\nSometimes accessing data requires that you authenticate to external data sources through JDBC.\nInstead of directly entering your credentials into a notebook, use Databricks secrets to store\nyour credentials and reference them in notebooks and jobs.\n\nAdministrators, secret creators, and users granted permission can read Databricks secrets.\nWhile Databricks makes an effort to redact secret values that might be displayed in notebooks,\nit is not possible to prevent such users from reading secrets.", + "package": { + "name": "workspace" + }, + "docs_group": "workspace", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListSecretsRequest" + } + }, + "methods": [ + { + "name": "CreateScope", + "description": "Creates a new secret scope.\n\nThe scope name must consist of alphanumeric characters, dashes, underscores, and\nperiods, and may not exceed 128 characters.\n\nExample request:\n\n.. code::\n\n{\n\"scope\": \"my-simple-databricks-scope\",\n\"initial_manage_principal\": \"users\"\n\"scope_backend_type\": \"databricks|azure_keyvault\",\n# below is only required if scope type is azure_keyvault\n\"backend_azure_keyvault\": {\n\"resource_id\": \"/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/xxxx/providers/Microsoft.KeyVault/vaults/xxxx\",\n\"tenant_id\": \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n\"dns_name\": \"https://xxxx.vault.azure.net/\",\n}\n}\n\nIf ``initial_manage_principal`` is specified, the initial ACL applied to the scope is\napplied to the supplied principal (user or group) with ``MANAGE`` permissions.\nThe only supported principal for this option is the group ``users``, which\ncontains all users in the workspace. If ``initial_manage_principal`` is not specified,\nthe initial ACL with ``MANAGE`` permission applied to the scope is assigned to the\nAPI request issuer's user identity.\n\nIf ``scope_backend_type`` is ``azure_keyvault``, a secret scope is created with secrets\nfrom a given Azure KeyVault. The caller must provide the keyvault_resource_id and the tenant_id\nfor the key vault. If ``scope_backend_type`` is ``databricks`` or is unspecified, an empty\nsecret scope is created and stored in Databricks's own storage.\n\nThrows ``RESOURCE_ALREADY_EXISTS`` if a scope with the given name already exists.\nThrows ``RESOURCE_LIMIT_EXCEEDED`` if maximum number of scopes in the workspace is exceeded.\nThrows ``INVALID_PARAMETER_VALUE`` if the scope name is invalid.\nThrows ``BAD_REQUEST`` if request violated constraints.\nThrows ``CUSTOMER_UNAUTHORIZED`` if normal user attempts to create a scope with name reserved for databricks internal usage.\nThrows ``UNAUTHENTICATED`` if unable to verify user access permission on Azure KeyVault", + "summary": "Create a new secret scope.", + "path": "/api/2.0/secrets/scopes/create", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateScope", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "scope", + "description": "Scope name requested by the user. Scope names are unique.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "scope", + "description": "Scope name requested by the user. Scope names are unique.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "backend_azure_keyvault", + "description": "The metadata for the secret scope if the type is ``AZURE_KEYVAULT``", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzureKeyVaultSecretScopeMetadata", + "is_object": true + } + }, + { + "name": "initial_manage_principal", + "description": "The principal that is initially granted ``MANAGE`` permission to the created scope.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "scope", + "description": "Scope name requested by the user. Scope names are unique.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "scope_backend_type", + "description": "The backend type the scope will be created with. If not specified, will default to ``DATABRICKS``", + "is_request_body_field": true, + "entity": { + "pascal_name": "ScopeBackendType", + "enum": [ + { + "content": "AZURE_KEYVAULT" + }, + { + "content": "DATABRICKS" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "scope", + "description": "Scope name requested by the user. Scope names are unique.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteAcl", + "description": "Deletes the given ACL on the given scope.\n\nUsers must have the ``MANAGE`` permission to invoke this API.\n\nExample request:\n\n.. code::\n\n{\n\"scope\": \"my-secret-scope\",\n\"principal\": \"data-scientists\"\n}\n\nThrows ``RESOURCE_DOES_NOT_EXIST`` if no such secret scope, principal, or ACL exists.\nThrows ``PERMISSION_DENIED`` if the user does not have permission to make this API call.\nThrows ``INVALID_PARAMETER_VALUE`` if the permission or principal is invalid.", + "summary": "Delete an ACL.", + "path": "/api/2.0/secrets/acls/delete", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteAcl", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "scope", + "description": "The name of the scope to remove permissions from.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal", + "description": "The principal to remove an existing ACL from.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "scope", + "description": "The name of the scope to remove permissions from.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal", + "description": "The principal to remove an existing ACL from.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "principal", + "description": "The principal to remove an existing ACL from.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "scope", + "description": "The name of the scope to remove permissions from.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "scope", + "description": "The name of the scope to remove permissions from.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal", + "description": "The principal to remove an existing ACL from.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteScope", + "description": "Deletes a secret scope.\n\nExample request:\n\n.. code::\n\n{\n\"scope\": \"my-secret-scope\"\n}\n\nThrows ``RESOURCE_DOES_NOT_EXIST`` if the scope does not exist.\nThrows ``PERMISSION_DENIED`` if the user does not have permission to make this API call.\nThrows ``BAD_REQUEST`` if system user attempts to delete internal secret scope.", + "summary": "Delete a secret scope.", + "path": "/api/2.0/secrets/scopes/delete", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteScope", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "scope", + "description": "Name of the scope to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "scope", + "description": "Name of the scope to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "scope", + "description": "Name of the scope to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "scope", + "description": "Name of the scope to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteSecret", + "description": "Deletes the secret stored in this secret scope. You must have ``WRITE`` or ``MANAGE``\npermission on the Secret Scope.\n\nExample request:\n\n.. code::\n\n{\n\"scope\": \"my-secret-scope\",\n\"key\": \"my-secret-key\"\n}\n\nThrows ``RESOURCE_DOES_NOT_EXIST`` if no such secret scope or secret exists.\nThrows ``PERMISSION_DENIED`` if the user does not have permission to make this API call.\nThrows ``BAD_REQUEST`` if system user attempts to delete an internal secret, or request is made against Azure KeyVault backed scope.", + "summary": "Delete a secret.", + "path": "/api/2.0/secrets/delete", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteSecret", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "scope", + "description": "The name of the scope that contains the secret to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the secret to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "scope", + "description": "The name of the scope that contains the secret to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the secret to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteSecretResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "key", + "description": "Name of the secret to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "scope", + "description": "The name of the scope that contains the secret to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "scope", + "description": "The name of the scope that contains the secret to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the secret to delete.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetAcl", + "description": "Describes the details about the given ACL, such as the group and permission.\n\nUsers must have the ``MANAGE`` permission to invoke this API.\n\nExample response:\n\n.. code::\n\n{\n\"principal\": \"data-scientists\",\n\"permission\": \"READ\"\n}\n\nThrows ``RESOURCE_DOES_NOT_EXIST`` if no such secret scope exists.\nThrows ``PERMISSION_DENIED`` if the user does not have permission to make this API call.\nThrows ``INVALID_PARAMETER_VALUE`` if the permission or principal is invalid.", + "summary": "Get secret ACL details.", + "path": "/api/2.0/secrets/acls/get", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAclRequest", + "is_object": true, + "required_fields": [ + { + "name": "scope", + "description": "The name of the scope to fetch ACL information from.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal", + "description": "The principal to fetch ACL information for.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "scope", + "description": "The name of the scope to fetch ACL information from.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal", + "description": "The principal to fetch ACL information for.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AclItem", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal", + "description": "The principal in which the permission is applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "permission", + "description": "The permission level applied to the principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AclPermission", + "enum": [ + { + "content": "MANAGE" + }, + { + "content": "READ" + }, + { + "content": "WRITE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "principal", + "description": "The principal in which the permission is applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "permission", + "description": "The permission level applied to the principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AclPermission", + "enum": [ + { + "content": "MANAGE" + }, + { + "content": "READ" + }, + { + "content": "WRITE" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "principal", + "description": "The principal to fetch ACL information for.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "scope", + "description": "The name of the scope to fetch ACL information from.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "scope", + "description": "The name of the scope to fetch ACL information from.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal", + "description": "The principal to fetch ACL information for.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSecret", + "description": "Gets a secret for a given key and scope. This API can only be called from the DBUtils\ninterface. Users need the READ permission to make this call.\n\nExample response:\n\n.. code::\n\n{\n\"key\": \"my-string-key\",\n\"value\": \u003cbytes of the secret value\u003e\n}\n\nNote that the secret value returned is in bytes. The interpretation of the bytes\nis determined by the caller in DBUtils and the type the data is decoded into.\n\nThrows ``RESOURCE_DOES_NOT_EXIST`` if no such secret or secret scope exists.\nThrows ``PERMISSION_DENIED`` if the user does not have permission to make this API call.\n\nNote: This is explicitly an undocumented API. It also doesn't need to be supported\nfor the /preview prefix, because it's not a customer-facing API (i.e. only used\nfor DBUtils SecretUtils to fetch secrets).\n\nThrows ``RESOURCE_DOES_NOT_EXIST`` if no such secret scope or secret exists.\nThrows ``BAD_REQUEST`` if normal user calls get secret outside of a notebook.\nAKV specific errors:\nThrows ``INVALID_PARAMETER_VALUE`` if secret name is not alphanumeric or too long.\nThrows ``PERMISSION_DENIED`` if secret manager cannot access AKV with 403 error\nThrows ``MALFORMED_REQUEST`` if secret manager cannot access AKV with any other 4xx error", + "summary": "Get a secret.", + "path": "/api/2.0/secrets/get", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetSecretRequest", + "is_object": true, + "required_fields": [ + { + "name": "scope", + "description": "The name of the scope that contains the secret.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the secret to fetch value information.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "scope", + "description": "The name of the scope that contains the secret.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the secret to fetch value information.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetSecretResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "key", + "description": "Name of the secret to fetch value information.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "scope", + "description": "The name of the scope that contains the secret.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "scope", + "description": "The name of the scope that contains the secret.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "Name of the secret to fetch value information.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListAcls", + "description": "Lists the ACLs set on the given scope.\n\nUsers must have the ``MANAGE`` permission to invoke this API.\n\nExample response:\n\n.. code::\n\n{\n\"acls\": [{\n\"principal\": \"admins\",\n\"permission\": \"MANAGE\"\n},{\n\"principal\": \"data-scientists\",\n\"permission\": \"READ\"\n}]\n}\n\nThrows ``RESOURCE_DOES_NOT_EXIST`` if no such secret scope exists.\nThrows ``PERMISSION_DENIED`` if the user does not have permission to make this API call.", + "summary": "Lists ACLs.", + "path": "/api/2.0/secrets/acls/list", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAclsRequest", + "is_object": true, + "required_fields": [ + { + "name": "scope", + "description": "The name of the scope to fetch ACL information from.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "scope", + "description": "The name of the scope to fetch ACL information from.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListAclsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "scope", + "description": "The name of the scope to fetch ACL information from.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "scope", + "description": "The name of the scope to fetch ACL information from.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": {} + }, + { + "name": "ListScopes", + "description": "Lists all secret scopes available in the workspace.\n\nExample response:\n\n.. code::\n\n{\n\"scopes\": [{\n\"name\": \"my-databricks-scope\",\n\"backend_type\": \"DATABRICKS\"\n},{\n\"name\": \"mount-points\",\n\"backend_type\": \"DATABRICKS\"\n}]\n}\n\nThrows ``PERMISSION_DENIED`` if the user does not have permission to make this API call.", + "summary": "List all scopes.", + "path": "/api/2.0/secrets/scopes/list", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListScopesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListScopesResponse", + "is_object": true + }, + "pagination": {} + }, + { + "name": "ListSecrets", + "description": "Lists the secret keys that are stored at this scope. This is a metadata-only\noperation; secret data cannot be retrieved using this API. Users need the READ\npermission to make this call.\n\nExample response:\n\n.. code::\n\n{\n\"secrets\": [\n{\n\"key\": \"my-string-key\"\",\n\"last_updated_timestamp\": \"1520467595000\"\n},\n{\n\"key\": \"my-byte-key\",\n\"last_updated_timestamp\": \"1520467595000\"\n},\n]\n}\n\nThe lastUpdatedTimestamp returned is in milliseconds since epoch.\n\nThrows ``RESOURCE_DOES_NOT_EXIST`` if no such secret scope exists.\nThrows ``PERMISSION_DENIED`` if the user does not have permission to make this API call.", + "summary": "List secret keys.", + "path": "/api/2.0/secrets/list", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListSecretsRequest", + "is_object": true, + "required_fields": [ + { + "name": "scope", + "description": "The name of the scope to list secrets within.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "scope", + "description": "The name of the scope to list secrets within.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListSecretsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "scope", + "description": "The name of the scope to list secrets within.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "scope", + "description": "The name of the scope to list secrets within.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": {} + }, + { + "name": "PutAcl", + "description": "Creates or overwrites the ACL associated with the given principal (user or group) on the\nspecified scope point. In general, a user or group will use the most powerful\npermission available to them, and permissions are ordered as follows:\n\n* ``MANAGE`` - Allowed to change ACLs, and read and write to this secret scope.\n* ``WRITE`` - Allowed to read and write to this secret scope.\n* ``READ`` - Allowed to read this secret scope and list what secrets are available.\n\nNote that in general, secret values can only be read from within a command\non a cluster (for example, through a notebook). There is no API to read the actual\nsecret value material outside of a cluster. However, the user's permission will be\napplied based on who is executing the command, and they must have at least READ permission.\n\nUsers must have the ``MANAGE`` permission to invoke this API.\n\nExample request:\n\n.. code::\n\n{\n\"scope\": \"my-secret-scope\",\n\"principal\": \"data-scientists\",\n\"permission\": \"READ\"\n}\n\nThe principal is a user or group name corresponding to an existing Databricks\nprincipal to be granted or revoked access.\n\nThrows ``RESOURCE_DOES_NOT_EXIST`` if no such secret scope exists.\nThrows ``RESOURCE_ALREADY_EXISTS`` if a permission for the principal already exists.\nThrows ``INVALID_PARAMETER_VALUE`` if the permission or principal is invalid.\nThrows ``PERMISSION_DENIED`` if the user does not have permission to make this API call.", + "summary": "Create/update an ACL.", + "path": "/api/2.0/secrets/acls/put", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "PutAcl", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "scope", + "description": "The name of the scope to apply permissions to.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal", + "description": "The principal in which the permission is applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "permission", + "description": "The permission level applied to the principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AclPermission", + "enum": [ + { + "content": "MANAGE" + }, + { + "content": "READ" + }, + { + "content": "WRITE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "scope", + "description": "The name of the scope to apply permissions to.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal", + "description": "The principal in which the permission is applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "permission", + "description": "The permission level applied to the principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AclPermission", + "enum": [ + { + "content": "MANAGE" + }, + { + "content": "READ" + }, + { + "content": "WRITE" + } + ] + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "permission", + "description": "The permission level applied to the principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AclPermission", + "enum": [ + { + "content": "MANAGE" + }, + { + "content": "READ" + }, + { + "content": "WRITE" + } + ] + } + }, + { + "name": "principal", + "description": "The principal in which the permission is applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "scope", + "description": "The name of the scope to apply permissions to.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "scope", + "description": "The name of the scope to apply permissions to.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal", + "description": "The principal in which the permission is applied.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "permission", + "description": "The permission level applied to the principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "AclPermission", + "enum": [ + { + "content": "MANAGE" + }, + { + "content": "READ" + }, + { + "content": "WRITE" + } + ] + } + } + ] + }, + { + "name": "PutSecret", + "description": "Inserts a secret under the provided scope with the given name. If a secret already\nexists with the same name, this command overwrites the existing secret's value.\nThe server encrypts the secret using the secret scope's encryption settings before\nstoring it. You must have ``WRITE`` or ``MANAGE`` permission on the secret scope.\n\nThe secret key must consist of alphanumeric characters, dashes, underscores,\nand periods, and cannot exceed 128 characters. The maximum allowed secret\nvalue size is 128 KB. The maximum number of secrets in a given scope is\n1000.\n\nExample request:\n\n.. code::\n\n{\n\"scope\": \"my-databricks-scope\",\n\"key\": \"my-string-key\",\n\"string_value\": \"foobar\"\n}\n\nThe input fields \"string_value\" or \"bytes_value\"\nspecify the type of the secret, which will determine the value returned when\nthe secret value is requested. Exactly one must be specified.\n\nThrows ``RESOURCE_DOES_NOT_EXIST`` if no such secret scope exists.\nThrows ``RESOURCE_LIMIT_EXCEEDED`` if maximum number of secrets in scope is exceeded.\nThrows ``INVALID_PARAMETER_VALUE`` if the request parameters are invalid.\nThrows ``PERMISSION_DENIED`` if the user does not have permission to make this API call.\nThrows ``MALFORMED_REQUEST`` if request is incorrectly formatted or conflicting.\nThrows ``BAD_REQUEST`` if request is made against Azure KeyVault backed scope.", + "summary": "Add a secret.", + "path": "/api/2.0/secrets/put", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "PutSecret", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "scope", + "description": "The name of the scope to which the secret will be associated with.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "A unique name to identify the secret.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "scope", + "description": "The name of the scope to which the secret will be associated with.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "A unique name to identify the secret.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "bytes_value", + "description": "If specified, value will be stored as bytes.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "A unique name to identify the secret.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "scope", + "description": "The name of the scope to which the secret will be associated with.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "string_value", + "description": "If specified, note that the value will be stored in UTF-8 (MB4) form.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "scope", + "description": "The name of the scope to which the secret will be associated with.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "key", + "description": "A unique name to identify the secret.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.SecretsUc", + "name": "SecretsUc", + "description": "A secret is a Unity Catalog securable object that stores sensitive credential data (such as passwords, tokens, and keys) within a three-level namespace (**catalog_name.schema_name.secret_name**).\n\nSecrets can be managed using standard Unity Catalog permissions and are scoped to a schema within a catalog.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListSecretsRequest" + } + }, + "methods": [ + { + "name": "CreateSecret", + "description": "Creates a new secret in Unity Catalog.\n\nYou must be the owner of the parent schema or have the **CREATE_SECRET** and **USE SCHEMA**\nprivileges on the parent schema and **USE CATALOG** on the parent catalog.\n\nThe secret is stored in the specified catalog and schema, and the **value** field\ncontains the sensitive data to be securely stored.", + "summary": "Create a secret.", + "path": "/api/2.1/unity-catalog/secrets", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateSecretRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "secret", + "description": "The secret object to create. The **name**, **catalog_name**, **schema_name**, and **value**\nfields are required.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Secret", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "secret", + "description": "The secret object to create. The **name**, **catalog_name**, **schema_name**, and **value**\nfields are required.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Secret", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "secret", + "description": "The secret object to create. The **name**, **catalog_name**, **schema_name**, and **value**\nfields are required.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Secret", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Secret", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "secret", + "description": "The secret object to create. The **name**, **catalog_name**, **schema_name**, and **value**\nfields are required.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Secret", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "User-provided free-form text description of the secret.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "The time at which this secret was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "The principal that created the secret.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_owner", + "description": "The effective owner of the secret, which may differ from the directly-set **owner** due to\ninheritance.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_value", + "description": "The secret value. Only populated in responses when you have the **READ_SECRET**\nprivilege and **include_value** is set to true in the request. The maximum size is 60 KiB.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "expire_time", + "description": "User-provided expiration time of the secret. This field indicates when the secret should no\nlonger be used and may be displayed as a warning in the UI. It is purely informational and\ndoes not trigger any automatic actions or affect the secret's lifecycle.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the secret, in the form of **catalog_name.schema_name.secret_name**.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "Unique identifier of the metastore hosting the secret.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "The owner of the secret. Defaults to the creating principal on creation. Can be updated to\ntransfer ownership of the secret to another principal.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "The time at which this secret was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "The principal that last updated the secret.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteSecret", + "description": "Deletes a secret by its three-level (fully qualified) name.\n\nYou must be the owner of the secret or a metastore admin.", + "summary": "Delete a secret.", + "path": "/api/2.1/unity-catalog/secrets/{full_name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteSecretRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the secret\n(for example, **catalog_name.schema_name.secret_name**).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the secret\n(for example, **catalog_name.schema_name.secret_name**).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the secret\n(for example, **catalog_name.schema_name.secret_name**).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the secret\n(for example, **catalog_name.schema_name.secret_name**).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSecret", + "description": "Gets a secret by its three-level (fully qualified) name.\n\nYou must be a metastore admin, the owner of the secret, or have the **MANAGE**\nprivilege on the secret.\n\nThe secret value isn't returned by default. To retrieve it, you must also have the\n**READ_SECRET** privilege and set **include_value** to true in the request.", + "summary": "Get a secret.", + "path": "/api/2.1/unity-catalog/secrets/{full_name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetSecretRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the secret\n(for example, **catalog_name.schema_name.secret_name**).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the secret\n(for example, **catalog_name.schema_name.secret_name**).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Secret", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the secret\n(for example, **catalog_name.schema_name.secret_name**).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "include_value", + "description": "Whether to include the secret value in the response. Defaults to false. Requires the\n**READ_SECRET** privilege.", + "is_query": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the secret\n(for example, **catalog_name.schema_name.secret_name**).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListSecrets", + "description": "Lists secrets in Unity Catalog.\n\nYou must be a metastore admin, the owner of the secret, or have the\n**MANAGE** privilege on the secret.\n\nBoth **catalog_name** and **schema_name** must be specified together to filter secrets within\na specific schema. Results are paginated; use the **page_token** field from the response\nto retrieve subsequent pages.", + "summary": "List secrets.", + "path": "/api/2.1/unity-catalog/secrets", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListSecretsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListSecretsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "catalog_name", + "description": "The name of the catalog under which to list secrets. Both **catalog_name** and\n**schema_name** must be specified together.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Maximum number of secrets to return.\n\n- If not specified, at most 1000 secrets are returned.\n- If set to a value greater than 0, the page length is the minimum of this value and 1000.\n- If set to 0, the page length is set to 1000.\n- If set to a value less than 0, an invalid parameter error is returned.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to the next page based on previous query. The maximum page length\nis determined by a server configured value.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema under which to list secrets. Both **catalog_name** and\n**schema_name** must be specified together.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to the next page based on previous query. The maximum page length\nis determined by a server configured value.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateSecret", + "description": "Updates an existing secret in Unity Catalog.\n\nYou must be the owner of the secret or a metastore admin. If you are a metastore\nadmin, only the **owner** field can be changed.\n\nUse the **update_mask** field to specify which fields to update. Supported updatable fields\ninclude **value**, **comment**, **owner**, and **expire_time**.", + "summary": "Update a secret.", + "path": "/api/2.1/unity-catalog/secrets/{full_name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateSecretRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the secret\n(for example, **catalog_name.schema_name.secret_name**).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "secret", + "description": "The secret object containing the fields to update. Only fields specified in **update_mask**\nwill be updated.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Secret", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The field mask specifying which fields of the secret to update.\n- If **update_mask** is **\"*\"**, all fields specified in **secret** are updated.\n- If **update_mask** specifies one or more fields, only those fields are updated.\nEach specified field must be set in **secret**.\nSupported fields: **value**, **comment**, **owner**, **expire_time**. To change the secret\nname, delete and recreate the secret.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the secret\n(for example, **catalog_name.schema_name.secret_name**).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask specifying which fields of the secret to update.\n- If **update_mask** is **\"*\"**, all fields specified in **secret** are updated.\n- If **update_mask** specifies one or more fields, only those fields are updated.\nEach specified field must be set in **secret**.\nSupported fields: **value**, **comment**, **owner**, **expire_time**. To change the secret\nname, delete and recreate the secret.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "secret", + "description": "The secret object containing the fields to update. Only fields specified in **update_mask**\nwill be updated.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Secret", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "secret", + "description": "The secret object containing the fields to update. Only fields specified in **update_mask**\nwill be updated.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Secret", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Secret", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the secret\n(for example, **catalog_name.schema_name.secret_name**).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "secret", + "description": "The secret object containing the fields to update. Only fields specified in **update_mask**\nwill be updated.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Secret", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "update_mask", + "description": "The field mask specifying which fields of the secret to update.\n- If **update_mask** is **\"*\"**, all fields specified in **secret** are updated.\n- If **update_mask** specifies one or more fields, only those fields are updated.\nEach specified field must be set in **secret**.\nSupported fields: **value**, **comment**, **owner**, **expire_time**. To change the secret\nname, delete and recreate the secret.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "User-provided free-form text description of the secret.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "The time at which this secret was created.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "created_by", + "description": "The principal that created the secret.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_owner", + "description": "The effective owner of the secret, which may differ from the directly-set **owner** due to\ninheritance.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_value", + "description": "The secret value. Only populated in responses when you have the **READ_SECRET**\nprivilege and **include_value** is set to true in the request. The maximum size is 60 KiB.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "expire_time", + "description": "User-provided expiration time of the secret. This field indicates when the secret should no\nlonger be used and may be displayed as a warning in the UI. It is purely informational and\ndoes not trigger any automatic actions or affect the secret's lifecycle.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the secret, in the form of **catalog_name.schema_name.secret_name**.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "Unique identifier of the metastore hosting the secret.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "The owner of the secret. Defaults to the creating principal on creation. Can be updated to\ntransfer ownership of the secret to another principal.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "The time at which this secret was last updated.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "updated_by", + "description": "The principal that last updated the secret.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "The three-level (fully qualified) name of the secret\n(for example, **catalog_name.schema_name.secret_name**).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask specifying which fields of the secret to update.\n- If **update_mask** is **\"*\"**, all fields specified in **secret** are updated.\n- If **update_mask** specifies one or more fields, only those fields are updated.\nEach specified field must be set in **secret**.\nSupported fields: **value**, **comment**, **owner**, **expire_time**. To change the secret\nname, delete and recreate the secret.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "name", + "description": "The name of the secret, relative to its parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the secret reside.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the secret resides.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "value", + "description": "The secret value to store. This field is input-only and is not returned in responses — use\nthe **effective_value** field (via GetSecret with **include_value** set to true) to read the\nsecret value. The maximum size is 60 KiB (pre-encryption). Accepted content includes\npasswords, tokens, keys, and other sensitive credential data.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "oauth2.ServicePrincipalFederationPolicy", + "name": "ServicePrincipalFederationPolicy", + "description": "These APIs manage service principal federation policies.\n\nService principal federation, also known as Workload Identity Federation, allows your automated workloads running outside of Databricks to securely access Databricks APIs without the need for Databricks secrets. With Workload Identity Federation, your application (or workload) authenticates to Databricks as a Databricks service principal, using tokens provided by the workload runtime.\n\nDatabricks strongly recommends using Workload Identity Federation to authenticate to Databricks from automated workloads, over alternatives such as OAuth client secrets or Personal Access Tokens, whenever possible. Workload Identity Federation is supported by many popular services, including Github Actions, Azure DevOps, GitLab, Terraform Cloud, and Kubernetes clusters, among others.\n\nWorkload identity federation is configured in your Databricks account using a service principal federation policy. A service principal federation policy specifies:\n* which IdP, or issuer, the service principal is allowed to authenticate from\n* which workload identity, or subject, is allowed to authenticate as the Databricks service principal\n\nTo configure a federation policy, you provide the following:\n* The required token __issuer__, as specified in the “iss” claim of workload identity tokens. The issuer is an https URL that identifies the workload identity provider.\n* The required token __subject__, as specified in the “sub” claim of workload identity tokens. The subject uniquely identifies the workload in the workload runtime environment.\n* The allowed token __audiences__, as specified in the “aud” claim of workload identity tokens. The audience is intended to represent the recipient of the token. As long as the audience in the token matches at least one audience in the policy, the token is considered a match. If unspecified, the default value is your Databricks account id.\n* Optionally, the public keys used to validate the signature of the workload identity tokens, in JWKS format. If unspecified (recommended), Databricks automatically fetches the public keys from the issuer’s well known endpoint. Databricks strongly recommends relying on the issuer’s well known endpoint for discovering public keys.\n\nAn example service principal federation policy, for a Github Actions workload, is:\n```\nissuer: \"https://token.actions.githubusercontent.com\"\naudiences: [\"https://github.com/my-github-org\"]\nsubject: \"repo:my-github-org/my-repo:environment:prod\"\n```\n\nAn example JWT token body that matches this policy and could be used to authenticate to Databricks is:\n```\n{\n\"iss\": \"https://token.actions.githubusercontent.com\",\n\"aud\": \"https://github.com/my-github-org\",\n\"sub\": \"repo:my-github-org/my-repo:environment:prod\"\n}\n```\n\nYou may also need to configure the workload runtime to generate tokens for your workloads.\n\nYou do not need to configure an OAuth application in Databricks to use token federation.", + "package": { + "name": "oauth2" + }, + "is_accounts": true, + "docs_group": "oauth2", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListServicePrincipalFederationPoliciesRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Create account federation policy.", + "summary": "Create service principal federation policy.", + "path": "/api/2.0/accounts/{account_id}/servicePrincipals/{service_principal_id}/federationPolicies", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateServicePrincipalFederationPolicyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + }, + "response": { + "pascal_name": "FederationPolicy", + "is_object": true + }, + "all_fields": [ + { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + }, + { + "name": "policy_id", + "description": "The identifier for the federation policy. The identifier must contain only lowercase\nalphanumeric characters, numbers, hyphens, and slashes. If unspecified, the id will be\nassigned by Databricks.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "create_time", + "description": "Creation time of the federation policy.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the federation policy.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name for the federation policy. Example values include\n`accounts/\u003caccount-id\u003e/federationPolicies/my-federation-policy` for Account Federation Policies, and\n`accounts/\u003caccount-id\u003e/servicePrincipals/\u003cservice-principal-id\u003e/federationPolicies/my-federation-policy`\nfor Service Principal Federation Policies. Typically an output parameter, which does not need to be\nspecified in create or update requests. If specified in a request, must match the value in the\nrequest URL.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "oidc_policy", + "description": "audit_mode INCLUDE is required on both this message field and its leaf fields so the OIDC\npolicy configuration is captured in create/update audit logs (see go/auditlogs).", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "OidcFederationPolicy", + "is_object": true + } + }, + { + "name": "policy_id", + "description": "The ID of the federation policy. Output only.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "The service principal ID that this federation policy applies to. Output only. Only set for service principal federation policies.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "uid", + "description": "Unique, immutable id of the federation policy.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Last update time of the federation policy.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "Delete", + "description": "Delete account federation policy.", + "summary": "Delete service principal federation policy.", + "path": "/api/2.0/accounts/{account_id}/servicePrincipals/{service_principal_id}/federationPolicies/{policy_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteServicePrincipalFederationPolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Get account federation policy.", + "summary": "Get service principal federation policy.", + "path": "/api/2.0/accounts/{account_id}/servicePrincipals/{service_principal_id}/federationPolicies/{policy_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetServicePrincipalFederationPolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "FederationPolicy", + "is_object": true + }, + "all_fields": [ + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List account federation policies.", + "summary": "List service principal federation policies.", + "path": "/api/2.0/accounts/{account_id}/servicePrincipals/{service_principal_id}/federationPolicies", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListServicePrincipalFederationPoliciesRequest", + "is_object": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "ListFederationPoliciesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Update account federation policy.", + "summary": "Update service principal federation policy.", + "path": "/api/2.0/accounts/{account_id}/servicePrincipals/{service_principal_id}/federationPolicies/{policy_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateServicePrincipalFederationPolicyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + }, + "response": { + "pascal_name": "FederationPolicy", + "is_object": true + }, + "all_fields": [ + { + "name": "policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "FederationPolicy", + "is_object": true + } + }, + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "The field mask specifies which fields of the policy to update. To specify multiple fields\nin the field mask, use comma as the separator (no space). The special value '*' indicates\nthat all fields should be updated (full replacement). If unspecified, all fields that are\nset in the policy provided in the update request will overwrite the corresponding fields\nin the existing policy. Example value: 'description,oidc_policy.audiences'.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Creation time of the federation policy.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of the federation policy.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Resource name for the federation policy. Example values include\n`accounts/\u003caccount-id\u003e/federationPolicies/my-federation-policy` for Account Federation Policies, and\n`accounts/\u003caccount-id\u003e/servicePrincipals/\u003cservice-principal-id\u003e/federationPolicies/my-federation-policy`\nfor Service Principal Federation Policies. Typically an output parameter, which does not need to be\nspecified in create or update requests. If specified in a request, must match the value in the\nrequest URL.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "oidc_policy", + "description": "audit_mode INCLUDE is required on both this message field and its leaf fields so the OIDC\npolicy configuration is captured in create/update audit logs (see go/auditlogs).", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "OidcFederationPolicy", + "is_object": true + } + }, + { + "name": "policy_id", + "description": "The ID of the federation policy. Output only.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "The service principal ID that this federation policy applies to. Output only. Only set for service principal federation policies.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "uid", + "description": "Unique, immutable id of the federation policy.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Last update time of the federation policy.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "The service principal id for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "policy_id", + "description": "The identifier for the federation policy.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "oauth2.ServicePrincipalSecrets", + "name": "ServicePrincipalSecrets", + "description": "These APIs enable administrators to manage service principal secrets.\n\nYou can use the generated secrets to obtain OAuth access tokens for a service principal, which can then be used to access Databricks Accounts and Workspace APIs. For more information, see [Authentication using OAuth tokens for service principals](https://docs.databricks.com/dev-tools/authentication-oauth.html).\n\nIn addition, the generated secrets can be used to configure the Databricks Terraform Provider to authenticate with the service principal. For more information, see [Databricks Terraform Provider](https://github.com/databricks/terraform-provider-databricks/blob/master/docs/index.md#authenticating-with-service-principal).", + "package": { + "name": "oauth2" + }, + "is_accounts": true, + "docs_group": "oauth2", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListServicePrincipalSecretsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Create a secret for the given service principal.", + "summary": "Create service principal secret.", + "path": "/api/2.0/accounts/{account_id}/servicePrincipals/{service_principal_id}/credentials/secrets", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateServicePrincipalSecretRequest", + "is_object": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateServicePrincipalSecretResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "lifetime", + "description": "The lifetime of the secret in seconds. If this parameter is not provided, the secret will have a default lifetime of 730 days (63072000s).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "scopes", + "description": "OAuth API scopes to bind to the secret; a minted token cannot exceed them.\nEmpty = unrestricted (all-apis). E.g. all-apis, sql, iam.groups:read.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Delete a secret from the given service principal.", + "summary": "Delete service principal secret.", + "path": "/api/2.0/accounts/{account_id}/servicePrincipals/{service_principal_id}/credentials/secrets/{secret_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteServicePrincipalSecretRequest", + "is_object": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "secret_id", + "description": "The secret ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "secret_id", + "description": "The secret ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "secret_id", + "description": "The secret ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "secret_id", + "description": "The secret ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List all secrets associated with the given service principal. This operation only returns information about the secrets themselves and does not include the secret values.", + "summary": "List service principal secrets.", + "path": "/api/2.0/accounts/{account_id}/servicePrincipals/{service_principal_id}/credentials/secrets", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListServicePrincipalSecretsRequest", + "is_object": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListServicePrincipalSecretsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "An opaque page token which was the `next_page_token` in the response of the previous request to list the secrets for this service principal. Provide this token to retrieve the next page of secret entries.\nWhen providing a `page_token`, all other parameters provided to the request must match the previous request.\nTo list all of the secrets for a service principal, it is necessary to continue requesting pages of entries until the response contains no `next_page_token`. Note that the number of entries returned must not be used to determine when the listing is complete.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "An opaque page token which was the `next_page_token` in the response of the previous request to list the secrets for this service principal. Provide this token to retrieve the next page of secret entries.\nWhen providing a `page_token`, all other parameters provided to the request must match the previous request.\nTo list all of the secrets for a service principal, it is necessary to continue requesting pages of entries until the response contains no `next_page_token`. Note that the number of entries returned must not be used to determine when the listing is complete.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "oauth2.ServicePrincipalSecretsProxy", + "name": "ServicePrincipalSecretsProxy", + "description": "These APIs enable administrators to manage service principal secrets at the workspace level. To use these APIs, the service principal must be first added to the current workspace.\n\nYou can use the generated secrets to obtain OAuth access tokens for a service principal, which can then be used to access Databricks Accounts and Workspace APIs. For more information, see [Authentication using OAuth tokens for service principals](https://docs.databricks.com/dev-tools/authentication-oauth.html).\n\nIn addition, the generated secrets can be used to configure the Databricks Terraform Providerto authenticate with the service principal. For more information, see [Databricks Terraform Provider](https://github.com/databricks/terraform-provider-databricks/blob/master/docs/index.md#authenticating-with-service-principal).", + "package": { + "name": "oauth2" + }, + "docs_group": "oauth2", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListServicePrincipalSecretsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Create a secret for the given service principal.", + "summary": "Create service principal secret.", + "path": "/api/2.0/accounts/servicePrincipals/{service_principal_id}/credentials/secrets", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateServicePrincipalSecretRequest", + "is_object": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateServicePrincipalSecretResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "lifetime", + "description": "The lifetime of the secret in seconds. If this parameter is not provided, the secret will have a default lifetime of 730 days (63072000s).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "scopes", + "description": "OAuth API scopes to bind to the secret; a minted token cannot exceed them.\nEmpty = unrestricted (all-apis). E.g. all-apis, sql, iam.groups:read.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Delete a secret from the given service principal.", + "summary": "Delete service principal secret.", + "path": "/api/2.0/accounts/servicePrincipals/{service_principal_id}/credentials/secrets/{secret_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteServicePrincipalSecretRequest", + "is_object": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "secret_id", + "description": "The secret ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "secret_id", + "description": "The secret ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "secret_id", + "description": "The secret ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "secret_id", + "description": "The secret ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "List all secrets associated with the given service principal. This operation only returns information about the secrets themselves and does not include the secret values.", + "summary": "List service principal secrets.", + "path": "/api/2.0/accounts/servicePrincipals/{service_principal_id}/credentials/secrets", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListServicePrincipalSecretsRequest", + "is_object": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListServicePrincipalSecretsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "An opaque page token which was the `next_page_token` in the response of the previous request to list the secrets for this service principal. Provide this token to retrieve the next page of secret entries.\nWhen providing a `page_token`, all other parameters provided to the request must match the previous request.\nTo list all of the secrets for a service principal, it is necessary to continue requesting pages of entries until the response contains no `next_page_token`. Note that the number of entries returned must not be used to determine when the listing is complete.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "The service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "An opaque page token which was the `next_page_token` in the response of the previous request to list the secrets for this service principal. Provide this token to retrieve the next page of secret entries.\nWhen providing a `page_token`, all other parameters provided to the request must match the previous request.\nTo list all of the secrets for a service principal, it is necessary to continue requesting pages of entries until the response contains no `next_page_token`. Note that the number of entries returned must not be used to determine when the listing is complete.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + } + ] + }, + { + "id": "iam.ServicePrincipalsV2", + "name": "ServicePrincipalsV2", + "description": "Identities for use with jobs, automated tools, and systems such as scripts, apps, and\nCI/CD platforms. Databricks recommends creating service principals to run production jobs\nor modify production data. If all processes that act on production data run with service\nprincipals, interactive users do not need any write, delete, or modify privileges in\nproduction. This eliminates the risk of a user overwriting production data by accident.", + "package": { + "name": "iam" + }, + "docs_group": "iam", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "request": { + "pascal_name": "ListServicePrincipalsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new service principal in the Databricks workspace.", + "summary": "Create a service principal.", + "path": "/api/2.0/preview/scim/v2/ServicePrincipals", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateServicePrincipalRequest", + "is_object": true + }, + "response": { + "pascal_name": "ServicePrincipal", + "is_object": true + }, + "all_fields": [ + { + "name": "active", + "description": "If this user is active", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "applicationId", + "description": "UUID relating to the service principal", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "displayName", + "description": "String that represents a concatenation of given and family names.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entitlements", + "description": "Entitlements assigned to the service principal. See [assigning entitlements](https://docs.databricks.com/administration-guide/users-groups/index.html#assigning-entitlements) for a full list of supported values.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "externalId", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "groups", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "id", + "description": "Databricks service principal ID.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "roles", + "description": "Corresponds to AWS instance profile/arn role.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "schemas", + "description": "The schema of the List response.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipalSchemaList", + "array_value": { + "pascal_name": "ServicePrincipalSchema", + "enum": [ + { + "content": "urn:ietf:params:scim:schemas:core:2.0:ServicePrincipal" + } + ] + } + } + } + ] + }, + { + "name": "Delete", + "description": "Delete a single service principal in the Databricks workspace.", + "summary": "Delete a service principal.", + "path": "/api/2.0/preview/scim/v2/ServicePrincipals/{id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteServicePrincipalRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the details for a single service principal define in the Databricks workspace.", + "summary": "Get service principal details.", + "path": "/api/2.0/preview/scim/v2/ServicePrincipals/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetServicePrincipalRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ServicePrincipal", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets the set of service principals associated with a Databricks workspace.", + "summary": "List service principals.", + "path": "/api/2.0/preview/scim/v2/ServicePrincipals", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListServicePrincipalsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListServicePrincipalResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "attributes", + "description": "Comma-separated list of attributes to return in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "count", + "description": "Desired number of results per page.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "excludedAttributes", + "description": "Comma-separated list of attributes to exclude in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "filter", + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortBy", + "description": "Attribute to sort the results.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortOrder", + "description": "The order to sort the results.", + "is_query": true, + "entity": { + "pascal_name": "ListSortOrder", + "enum": [ + { + "content": "ascending" + }, + { + "content": "descending" + } + ] + } + }, + { + "name": "startIndex", + "description": "Specifies the index of the first result. First item is number 1.", + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "pagination": { + "offset": { + "name": "startIndex", + "description": "Specifies the index of the first result. First item is number 1.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + "limit": { + "name": "count", + "description": "Desired number of results per page.", + "is_query": true, + "entity": { + "is_int64": true + } + } + } + }, + { + "name": "Patch", + "description": "Partially updates the details of a single service principal in the Databricks workspace.", + "summary": "Update service principal details.", + "path": "/api/2.0/preview/scim/v2/ServicePrincipals/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "PatchServicePrincipalRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "Operations", + "is_request_body_field": true, + "entity": { + "pascal_name": "PatchList", + "array_value": { + "pascal_name": "Patch", + "is_object": true + } + } + }, + { + "name": "schemas", + "description": "The schema of the patch request. Must be [\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"].", + "is_request_body_field": true, + "entity": { + "pascal_name": "PatchSchemaList", + "array_value": { + "pascal_name": "PatchSchema", + "enum": [ + { + "content": "urn:ietf:params:scim:api:messages:2.0:PatchOp" + } + ] + } + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the details of a single service principal.\n\nThis action replaces the existing service principal with the same name.", + "summary": "Replace service principal.", + "path": "/api/2.0/preview/scim/v2/ServicePrincipals/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateServicePrincipalRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Databricks service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Databricks service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "active", + "description": "If this user is active", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "applicationId", + "description": "UUID relating to the service principal", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "displayName", + "description": "String that represents a concatenation of given and family names.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entitlements", + "description": "Entitlements assigned to the service principal. See [assigning entitlements](https://docs.databricks.com/administration-guide/users-groups/index.html#assigning-entitlements) for a full list of supported values.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "externalId", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "groups", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "id", + "description": "Databricks service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "roles", + "description": "Corresponds to AWS instance profile/arn role.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "schemas", + "description": "The schema of the List response.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipalSchemaList", + "array_value": { + "pascal_name": "ServicePrincipalSchema", + "enum": [ + { + "content": "urn:ietf:params:scim:schemas:core:2.0:ServicePrincipal" + } + ] + } + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Databricks service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "iam.AccountServicePrincipalsV2", + "name": "AccountServicePrincipalsV2", + "description": "Identities for use with jobs, automated tools, and systems such as scripts, apps, and\nCI/CD platforms. Databricks recommends creating service principals to run production jobs\nor modify production data. If all processes that act on production data run with service\nprincipals, interactive users do not need any write, delete, or modify privileges in\nproduction. This eliminates the risk of a user overwriting production data by accident.", + "package": { + "name": "iam" + }, + "is_accounts": true, + "docs_group": "iam", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListAccountServicePrincipalsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new service principal in the Databricks account.", + "summary": "Create a service principal.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/ServicePrincipals", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateAccountServicePrincipalRequest", + "is_object": true + }, + "response": { + "pascal_name": "AccountServicePrincipal", + "is_object": true + }, + "all_fields": [ + { + "name": "active", + "description": "If this user is active", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "applicationId", + "description": "UUID relating to the service principal", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "displayName", + "description": "String that represents a concatenation of given and family names.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "externalId", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Databricks service principal ID.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "roles", + "description": "Indicates if the group has the admin role.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + } + ] + }, + { + "name": "Delete", + "description": "Delete a single service principal in the Databricks account.", + "summary": "Delete a service principal.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/ServicePrincipals/{id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteAccountServicePrincipalRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the details for a single service principal define in the Databricks account.", + "summary": "Get service principal details.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/ServicePrincipals/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAccountServicePrincipalRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccountServicePrincipal", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID for a service principal in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets the set of service principals associated with a Databricks account.", + "summary": "List service principals.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/ServicePrincipals", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAccountServicePrincipalsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListAccountServicePrincipalsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "attributes", + "description": "Comma-separated list of attributes to return in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "count", + "description": "Desired number of results per page. Default is 10000.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "excludedAttributes", + "description": "Comma-separated list of attributes to exclude in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "filter", + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortBy", + "description": "Attribute to sort the results.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortOrder", + "description": "The order to sort the results.", + "is_query": true, + "entity": { + "pascal_name": "ListSortOrder", + "enum": [ + { + "content": "ascending" + }, + { + "content": "descending" + } + ] + } + }, + { + "name": "startIndex", + "description": "Specifies the index of the first result. First item is number 1.", + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "pagination": { + "offset": { + "name": "startIndex", + "description": "Specifies the index of the first result. First item is number 1.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + "limit": { + "name": "count", + "description": "Desired number of results per page. Default is 10000.", + "is_query": true, + "entity": { + "is_int64": true + } + } + } + }, + { + "name": "Patch", + "description": "Partially updates the details of a single service principal in the Databricks account.", + "summary": "Update service principal details.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/ServicePrincipals/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "PatchAccountServicePrincipalRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "Operations", + "is_request_body_field": true, + "entity": { + "pascal_name": "PatchList", + "array_value": { + "pascal_name": "Patch", + "is_object": true + } + } + }, + { + "name": "schemas", + "description": "The schema of the patch request. Must be [\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"].", + "is_request_body_field": true, + "entity": { + "pascal_name": "PatchSchemaList", + "array_value": { + "pascal_name": "PatchSchema", + "enum": [ + { + "content": "urn:ietf:params:scim:api:messages:2.0:PatchOp" + } + ] + } + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the details of a single service principal.\n\nThis action replaces the existing service principal with the same name.", + "summary": "Replace service principal.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/ServicePrincipals/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateAccountServicePrincipalRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Databricks service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Databricks service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "active", + "description": "If this user is active", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "applicationId", + "description": "UUID relating to the service principal", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "displayName", + "description": "String that represents a concatenation of given and family names.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "externalId", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Databricks service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "roles", + "description": "Indicates if the group has the admin role.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Databricks service principal ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "serving.ServingEndpoints", + "name": "ServingEndpoints", + "description": "The Serving Endpoints API allows you to create, update, and delete model serving endpoints.\n\nYou can use a serving endpoint to serve models from the Databricks Model Registry or from Unity Catalog.\nEndpoints expose the underlying models as scalable REST API endpoints using serverless compute. This means\nthe endpoints and associated compute resources are fully managed by Databricks and will not appear in\nyour cloud account. A serving endpoint can consist of one or more MLflow models from the Databricks\nModel Registry, called served entities. A serving endpoint can have at most ten served entities. You can configure\ntraffic settings to define how requests should be routed to your served entities behind an endpoint.\nAdditionally, you can configure the scale of resources that should be applied to each served entity.", + "package": { + "name": "serving" + }, + "docs_group": "serving", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "is_legacy_empty_request": true, + "request": { + "pascal_name": "ListServingEndpointsRequest" + } + }, + "methods": [ + { + "name": "BuildLogs", + "description": "Retrieves the build logs associated with the provided served model.", + "summary": "Get build logs for a served model.", + "path": "/api/2.0/serving-endpoints/{name}/served-models/{served_model_name}/build-logs", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "BuildLogsRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint that the served model belongs to. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "served_model_name", + "description": "The name of the served model that build logs will be retrieved for. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint that the served model belongs to. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "served_model_name", + "description": "The name of the served model that build logs will be retrieved for. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "BuildLogsResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "logs", + "description": "The logs associated with building the served entity's environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "logs", + "description": "The logs associated with building the served entity's environment.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint that the served model belongs to. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "served_model_name", + "description": "The name of the served model that build logs will be retrieved for. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the serving endpoint that the served model belongs to. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "served_model_name", + "description": "The name of the served model that build logs will be retrieved for. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Create", + "description": "Create a new serving endpoint.", + "summary": "Create a new serving endpoint.", + "path": "/api/2.0/serving-endpoints", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateServingEndpoint", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint. This field is required and must be unique across a Databricks workspace.\nAn endpoint name can consist of alphanumeric characters, dashes, and underscores.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint. This field is required and must be unique across a Databricks workspace.\nAn endpoint name can consist of alphanumeric characters, dashes, and underscores.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ServingEndpointDetailed", + "is_object": true + }, + "all_fields": [ + { + "name": "ai_gateway", + "description": "The AI Gateway configuration for the serving endpoint. NOTE: External model, provisioned throughput, and pay-per-token endpoints are fully supported; agent endpoints currently only support inference tables.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AiGatewayConfig", + "is_object": true + } + }, + { + "name": "budget_policy_id", + "description": "The budget policy to be applied to the serving endpoint.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "config", + "description": "The core config of the serving endpoint.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EndpointCoreConfigInput", + "is_object": true + } + }, + { + "name": "description", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "email_notifications", + "description": "Email notification settings.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EmailNotifications", + "is_object": true + } + }, + { + "name": "name", + "description": "The name of the serving endpoint. This field is required and must be unique across a Databricks workspace.\nAn endpoint name can consist of alphanumeric characters, dashes, and underscores.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "rate_limits", + "description": "Rate limits to be applied to the serving endpoint. NOTE: this field is deprecated, please use AI Gateway to manage rate limits.", + "is_request_body_field": true, + "entity": { + "pascal_name": "RateLimitList", + "array_value": { + "pascal_name": "RateLimit", + "is_object": true + } + } + }, + { + "name": "route_optimized", + "description": "Enable route optimization for the serving endpoint.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "tags", + "description": "Tags to be attached to the serving endpoint and automatically propagated to billing logs.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointTagList", + "array_value": { + "pascal_name": "EndpointTag", + "is_object": true + } + } + }, + { + "name": "telemetry_config", + "description": "Configuration for persisting endpoint telemetry (logs, traces, and metrics) to Unity Catalog tables.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "TelemetryConfig", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the serving endpoint. This field is required and must be unique across a Databricks workspace.\nAn endpoint name can consist of alphanumeric characters, dashes, and underscores.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "NOT_UPDATING" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "ServingEndpointDetailed" + } + }, + "status_path": [ + { + "pascal_name": "State" + }, + { + "pascal_name": "ConfigUpdate" + } + ] + } + }, + { + "name": "CreateProvisionedThroughputEndpoint", + "description": "Create a new PT serving endpoint.", + "summary": "Create a new PT serving endpoint.", + "path": "/api/2.0/serving-endpoints/pt", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreatePtEndpointRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint. This field is required and must be unique across a Databricks workspace.\nAn endpoint name can consist of alphanumeric characters, dashes, and underscores.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "config", + "description": "The core config of the serving endpoint.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PtEndpointCoreConfig", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint. This field is required and must be unique across a Databricks workspace.\nAn endpoint name can consist of alphanumeric characters, dashes, and underscores.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "config", + "description": "The core config of the serving endpoint.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PtEndpointCoreConfig", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "ServingEndpointDetailed", + "is_object": true + }, + "all_fields": [ + { + "name": "ai_gateway", + "description": "The AI Gateway configuration for the serving endpoint.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AiGatewayConfig", + "is_object": true + } + }, + { + "name": "budget_policy_id", + "description": "The budget policy associated with the endpoint.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "config", + "description": "The core config of the serving endpoint.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PtEndpointCoreConfig", + "is_object": true + } + }, + { + "name": "email_notifications", + "description": "Email notification settings.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EmailNotifications", + "is_object": true + } + }, + { + "name": "name", + "description": "The name of the serving endpoint. This field is required and must be unique across a Databricks workspace.\nAn endpoint name can consist of alphanumeric characters, dashes, and underscores.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tags", + "description": "Tags to be attached to the serving endpoint and automatically propagated to billing logs.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointTagList", + "array_value": { + "pascal_name": "EndpointTag", + "is_object": true + } + } + } + ], + "wait": { + "success": [ + { + "content": "NOT_UPDATING" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "ServingEndpointDetailed" + } + }, + "status_path": [ + { + "pascal_name": "State" + }, + { + "pascal_name": "ConfigUpdate" + } + ] + } + }, + { + "name": "Delete", + "description": "Delete a serving endpoint.", + "summary": "Delete a serving endpoint.", + "path": "/api/2.0/serving-endpoints/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteServingEndpointRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ExportMetrics", + "description": "Retrieves the metrics associated with the provided serving endpoint in either Prometheus or OpenMetrics exposition format.", + "summary": "Get metrics of a serving endpoint.", + "path": "/api/2.0/serving-endpoints/{name}/metrics", + "is_crud_read": true, + "is_response_byte_stream": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ExportMetricsRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint to retrieve metrics for. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint to retrieve metrics for. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExportMetricsResponse", + "is_object": true + }, + "response_body_field": { + "pascal_name": "Contents" + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint to retrieve metrics for. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the serving endpoint to retrieve metrics for. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Retrieves the details for a single serving endpoint.", + "summary": "Get a single serving endpoint.", + "path": "/api/2.0/serving-endpoints/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetServingEndpointRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ServingEndpointDetailed", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the serving endpoint. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetOpenApi", + "description": "Get the query schema of the serving endpoint in OpenAPI format. The schema contains information for the supported paths, input and output format and datatypes.", + "summary": "Get the schema for a serving endpoint.", + "path": "/api/2.0/serving-endpoints/{name}/openapi", + "is_crud_read": true, + "is_response_byte_stream": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetOpenApiRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint that the served model belongs to. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint that the served model belongs to. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetOpenApiResponse", + "is_object": true + }, + "response_body_field": { + "pascal_name": "Contents" + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint that the served model belongs to. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the serving endpoint that the served model belongs to. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get serving endpoint permission levels.", + "path": "/api/2.0/permissions/serving-endpoints/{serving_endpoint_id}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetServingEndpointPermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetServingEndpointPermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of a serving endpoint. Serving endpoints can inherit permissions from their root object.", + "summary": "Get serving endpoint permissions.", + "path": "/api/2.0/permissions/serving-endpoints/{serving_endpoint_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetServingEndpointPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ServingEndpointPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "HttpRequest", + "description": "Make external services call using the credentials stored in UC Connection.", + "summary": "Make external services call using the credentials stored in UC Connection.", + "path": "/api/2.0/external-function", + "can_use_json": true, + "is_hidden_cli": true, + "is_response_byte_stream": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ExternalFunctionRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "connection_name", + "description": "The connection name to use. This is required to identify the external connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "method", + "description": "The HTTP method to use (e.g., 'GET', 'POST').", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalFunctionRequestHttpMethod", + "enum": [ + { + "content": "DELETE" + }, + { + "content": "GET" + }, + { + "content": "PATCH" + }, + { + "content": "POST" + }, + { + "content": "PUT" + } + ] + } + }, + { + "name": "path", + "description": "The relative path for the API endpoint. This is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "connection_name", + "description": "The connection name to use. This is required to identify the external connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "method", + "description": "The HTTP method to use (e.g., 'GET', 'POST').", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalFunctionRequestHttpMethod", + "enum": [ + { + "content": "DELETE" + }, + { + "content": "GET" + }, + { + "content": "PATCH" + }, + { + "content": "POST" + }, + { + "content": "PUT" + } + ] + } + }, + { + "name": "path", + "description": "The relative path for the API endpoint. This is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "HttpRequestResponse", + "is_object": true + }, + "response_body_field": { + "pascal_name": "Contents" + }, + "all_fields": [ + { + "name": "connection_name", + "description": "The connection name to use. This is required to identify the external connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "headers", + "description": "Additional headers for the request. If not provided, only auth headers from connections would be passed.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "json", + "description": "The JSON payload to send in the request body.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "method", + "description": "The HTTP method to use (e.g., 'GET', 'POST').", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalFunctionRequestHttpMethod", + "enum": [ + { + "content": "DELETE" + }, + { + "content": "GET" + }, + { + "content": "PATCH" + }, + { + "content": "POST" + }, + { + "content": "PUT" + } + ] + } + }, + { + "name": "params", + "description": "Query parameters for the request.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "path", + "description": "The relative path for the API endpoint. This is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "sub_domain", + "description": "Optional subdomain to prepend to the connection URL's host. If provided, this will be\nadded as a prefix to the connection URL's host. For example, if the connection URL is\n`https://api.example.com/v1` and `sub_domain` is `\"custom\"`, the resulting URL will be\n`https://custom.api.example.com/v1`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "connection_name", + "description": "The connection name to use. This is required to identify the external connection.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "method", + "description": "The HTTP method to use (e.g., 'GET', 'POST').", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ExternalFunctionRequestHttpMethod", + "enum": [ + { + "content": "DELETE" + }, + { + "content": "GET" + }, + { + "content": "PATCH" + }, + { + "content": "POST" + }, + { + "content": "PUT" + } + ] + } + }, + { + "name": "path", + "description": "The relative path for the API endpoint. This is required.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Get all serving endpoints.", + "summary": "Get all serving endpoints.", + "path": "/api/2.0/serving-endpoints", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListServingEndpointsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListEndpointsResponse", + "is_object": true + }, + "pagination": {} + }, + { + "name": "Logs", + "description": "Retrieves the service logs associated with the provided served model.", + "summary": "Get the latest logs for a served model.", + "path": "/api/2.0/serving-endpoints/{name}/served-models/{served_model_name}/logs", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "LogsRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint that the served model belongs to. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "served_model_name", + "description": "The name of the served model that logs will be retrieved for. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint that the served model belongs to. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "served_model_name", + "description": "The name of the served model that logs will be retrieved for. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ServerLogsResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "logs", + "description": "The most recent log lines of the model server processing invocation requests.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "logs", + "description": "The most recent log lines of the model server processing invocation requests.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint that the served model belongs to. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "served_model_name", + "description": "The name of the served model that logs will be retrieved for. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the serving endpoint that the served model belongs to. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "served_model_name", + "description": "The name of the served model that logs will be retrieved for. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Patch", + "description": "Used to batch add and delete tags from a serving endpoint with a single API call.", + "summary": "Update tags of a serving endpoint.", + "path": "/api/2.0/serving-endpoints/{name}/tags", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "PatchServingEndpointTags", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint who's tags to patch. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint who's tags to patch. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EndpointTags", + "is_object": true + }, + "all_fields": [ + { + "name": "add_tags", + "description": "List of endpoint tags to add", + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointTagList", + "array_value": { + "pascal_name": "EndpointTag", + "is_object": true + } + } + }, + { + "name": "delete_tags", + "description": "List of tag keys to delete", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "name", + "description": "The name of the serving endpoint who's tags to patch. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the serving endpoint who's tags to patch. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "PatchTelemetryConfig", + "description": "Updates the telemetry configuration of a serving endpoint.", + "summary": "Update the telemetry config of a serving endpoint.", + "path": "/api/2.0/serving-endpoints/{name}/telemetry-config", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "PatchTelemetryConfigRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint whose telemetry configuration is being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint whose telemetry configuration is being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ServingEndpointDetailed", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint whose telemetry configuration is being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "telemetry_config", + "description": "The telemetry configuration to be applied to the serving endpoint.\nCan specify either a telemetry_profile_id to use an existing profile,\nor table_names to create a new profile with the specified Unity Catalog tables.\nIf not provided, the telemetry configuration will be removed from the endpoint.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "TelemetryConfig", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the serving endpoint whose telemetry configuration is being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Put", + "description": "Deprecated: Please use AI Gateway to manage rate limits instead.", + "summary": "Update rate limits of a serving endpoint.", + "path": "/api/2.0/serving-endpoints/{name}/rate-limits", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "PutRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint whose rate limits are being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint whose rate limits are being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PutResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint whose rate limits are being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rate_limits", + "description": "The list of endpoint rate limits.", + "is_request_body_field": true, + "entity": { + "pascal_name": "RateLimitList", + "array_value": { + "pascal_name": "RateLimit", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the serving endpoint whose rate limits are being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "PutAiGateway", + "description": "Used to update the AI Gateway of a serving endpoint. NOTE: External model, provisioned throughput, and pay-per-token endpoints are fully supported; agent endpoints currently only support inference tables.", + "summary": "Update AI Gateway of a serving endpoint.", + "path": "/api/2.0/serving-endpoints/{name}/ai-gateway", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "PutAiGatewayRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint whose AI Gateway is being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint whose AI Gateway is being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PutAiGatewayResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "fallback_config", + "description": "Configuration for traffic fallback which auto fallbacks to other served entities if the request to a served\nentity fails with certain error codes, to increase availability.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "FallbackConfig", + "is_object": true + } + }, + { + "name": "guardrails", + "description": "Configuration for AI Guardrails to prevent unwanted data and unsafe data in requests and responses.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AiGatewayGuardrails", + "is_object": true + } + }, + { + "name": "inference_table_config", + "description": "Configuration for payload logging using inference tables.\nUse these tables to monitor and audit data being sent to and received from model APIs and to improve model quality.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AiGatewayInferenceTableConfig", + "is_object": true + } + }, + { + "name": "name", + "description": "The name of the serving endpoint whose AI Gateway is being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "rate_limits", + "description": "Configuration for rate limits which can be set to limit endpoint traffic.", + "is_request_body_field": true, + "entity": { + "pascal_name": "AiGatewayRateLimitList", + "array_value": { + "pascal_name": "AiGatewayRateLimit", + "is_object": true + } + } + }, + { + "name": "usage_tracking_config", + "description": "Configuration to enable usage tracking using system tables.\nThese tables allow you to monitor operational usage on endpoints and their associated costs.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AiGatewayUsageTrackingConfig", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the serving endpoint whose AI Gateway is being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Query", + "description": "Query a serving endpoint", + "summary": "Query a serving endpoint.", + "path": "/serving-endpoints/{name}/invocations", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "QueryEndpointInput", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint. This field is required and is provided via the path parameter.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint. This field is required and is provided via the path parameter.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "QueryEndpointResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "client_request_id", + "description": "Optional user-provided request identifier that will be recorded in the inference table and the usage tracking table.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "dataframe_records", + "description": "Pandas Dataframe input in the records orientation.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_any": true + } + } + }, + { + "name": "dataframe_split", + "description": "Pandas Dataframe input in the split orientation.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DataframeSplitInput", + "is_object": true + } + }, + { + "name": "extra_params", + "description": "The extra parameters field used ONLY for __completions, chat,__ and __embeddings external \u0026 foundation\nmodel__ serving endpoints. This is a map of strings and should only be used with other external/foundation\nmodel query fields.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "input", + "description": "The input string (or array of strings) field used ONLY for __embeddings external \u0026 foundation model__\nserving endpoints and is the only field (along with extra_params if needed) used by embeddings queries.", + "is_request_body_field": true, + "entity": { + "is_any": true + } + }, + { + "name": "inputs", + "description": "Tensor-based input in columnar format.", + "is_request_body_field": true, + "entity": { + "is_any": true + } + }, + { + "name": "instances", + "description": "Tensor-based input in row format.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_any": true + } + } + }, + { + "name": "max_tokens", + "description": "The max tokens field used ONLY for __completions__ and __chat external \u0026 foundation model__ serving\nendpoints. This is an integer and should only be used with other chat/completions query fields.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "messages", + "description": "The messages field used ONLY for __chat external \u0026 foundation model__ serving endpoints.\nThis is an array of ChatMessage objects and should only be used with other chat query fields.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ChatMessageList", + "array_value": { + "pascal_name": "ChatMessage", + "is_object": true + } + } + }, + { + "name": "n", + "description": "The n (number of candidates) field used ONLY for __completions__ and __chat external \u0026 foundation model__\nserving endpoints. This is an integer between 1 and 5 with a default of 1 and should only be used with\nother chat/completions query fields.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "name", + "description": "The name of the serving endpoint. This field is required and is provided via the path parameter.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "prompt", + "description": "The prompt string (or array of strings) field used ONLY for __completions external \u0026 foundation model__\nserving endpoints and should only be used with other completions query fields.", + "is_request_body_field": true, + "entity": { + "is_any": true + } + }, + { + "name": "stop", + "description": "The stop sequences field used ONLY for __completions__ and __chat external \u0026 foundation model__ serving\nendpoints. This is a list of strings and should only be used with other chat/completions query fields.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "stream", + "description": "The stream field used ONLY for __completions__ and __chat external \u0026 foundation model__ serving endpoints.\nThis is a boolean defaulting to false and should only be used with other chat/completions query fields.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "temperature", + "description": "The temperature field used ONLY for __completions__ and __chat external \u0026 foundation model__ serving\nendpoints. This is a float between 0.0 and 2.0 with a default of 1.0 and should only be used with other\nchat/completions query fields.", + "is_request_body_field": true, + "entity": { + "is_float64": true + } + }, + { + "name": "usage_context", + "description": "Optional user-provided context that will be recorded in the usage tracking table.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the serving endpoint. This field is required and is provided via the path parameter.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set serving endpoint permissions.", + "path": "/api/2.0/permissions/serving-endpoints/{serving_endpoint_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ServingEndpointPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ServingEndpointPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "ServingEndpointAccessControlRequestList", + "array_value": { + "pascal_name": "ServingEndpointAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateConfig", + "description": "Updates any combination of the serving endpoint's served entities, the compute configuration of those served entities, and the endpoint's traffic config. An endpoint that already has an update in progress can not be updated until the current update completes or fails.", + "summary": "Update config of a serving endpoint.", + "path": "/api/2.0/serving-endpoints/{name}/config", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "EndpointCoreConfigInput", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint to update. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint to update. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ServingEndpointDetailed", + "is_object": true + }, + "all_fields": [ + { + "name": "auto_capture_config", + "description": "Configuration for legacy Inference Tables which automatically log requests and responses to Unity\nCatalog.\nDeprecated: please use AI Gateway inference tables instead. See\nhttps://docs.databricks.com/aws/en/ai-gateway/inference-tables.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AutoCaptureConfigInput", + "is_object": true + } + }, + { + "name": "name", + "description": "The name of the serving endpoint to update. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "served_entities", + "description": "The list of served entities under the serving endpoint config.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ServedEntityInputList", + "array_value": { + "pascal_name": "ServedEntityInput", + "is_object": true + } + } + }, + { + "name": "served_models", + "description": "(Deprecated, use served_entities instead) The list of served models under the serving endpoint config.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ServedModelInputList", + "array_value": { + "pascal_name": "ServedModelInput", + "is_object": true + } + } + }, + { + "name": "traffic_config", + "description": "The traffic configuration associated with the serving endpoint config.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "TrafficConfig", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the serving endpoint to update. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "NOT_UPDATING" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "ServingEndpointDetailed" + } + }, + "status_path": [ + { + "pascal_name": "State" + }, + { + "pascal_name": "ConfigUpdate" + } + ] + } + }, + { + "name": "UpdateNotifications", + "description": "Updates the email and webhook notification settings for an endpoint.", + "summary": "Update the email and webhook notification settings for an endpoint.", + "path": "/api/2.0/serving-endpoints/{name}/notifications", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateInferenceEndpointNotifications", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint whose notifications are being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint whose notifications are being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateInferenceEndpointNotificationsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "email_notifications", + "description": "The email notification settings to update. Specify email addresses to notify when endpoint state changes occur.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EmailNotifications", + "is_object": true + } + }, + { + "name": "name", + "description": "The name of the serving endpoint whose notifications are being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the serving endpoint whose notifications are being updated. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on a serving endpoint. Serving endpoints can inherit permissions from their root object.", + "summary": "Update serving endpoint permissions.", + "path": "/api/2.0/permissions/serving-endpoints/{serving_endpoint_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ServingEndpointPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ServingEndpointPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "ServingEndpointAccessControlRequestList", + "array_value": { + "pascal_name": "ServingEndpointAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "serving_endpoint_id", + "description": "The serving endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateProvisionedThroughputEndpointConfig", + "description": "Updates any combination of the pt endpoint's served entities, the compute configuration of those served entities, and the endpoint's traffic config. Updates are instantaneous and endpoint should be updated instantly", + "summary": "Update config of a PT serving endpoint.", + "path": "/api/2.0/serving-endpoints/pt/{name}/config", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateProvisionedThroughputEndpointConfigRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the pt endpoint to update. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "config", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PtEndpointCoreConfig", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the pt endpoint to update. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "config", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PtEndpointCoreConfig", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "ServingEndpointDetailed", + "is_object": true + }, + "all_fields": [ + { + "name": "config", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PtEndpointCoreConfig", + "is_object": true + } + }, + { + "name": "name", + "description": "The name of the pt endpoint to update. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the pt endpoint to update. This field is required.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "NOT_UPDATING" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "ServingEndpointDetailed" + } + }, + "status_path": [ + { + "pascal_name": "State" + }, + { + "pascal_name": "ConfigUpdate" + } + ] + } + } + ] + }, + { + "id": "serving.ServingEndpointsDataPlane", + "name": "ServingEndpointsDataPlane", + "description": "Serving endpoints DataPlane provides a set of operations to interact with data plane endpoints for Serving endpoints service.", + "package": { + "name": "serving" + }, + "is_data_plane": true, + "docs_group": "serving", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Query", + "description": "Query a serving endpoint", + "summary": "Query a serving endpoint.", + "path": "/serving-endpoints/{name}/invocations", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "QueryEndpointInput", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint. This field is required and is provided via the path parameter.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the serving endpoint. This field is required and is provided via the path parameter.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "QueryEndpointResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "client_request_id", + "description": "Optional user-provided request identifier that will be recorded in the inference table and the usage tracking table.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "dataframe_records", + "description": "Pandas Dataframe input in the records orientation.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_any": true + } + } + }, + { + "name": "dataframe_split", + "description": "Pandas Dataframe input in the split orientation.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DataframeSplitInput", + "is_object": true + } + }, + { + "name": "extra_params", + "description": "The extra parameters field used ONLY for __completions, chat,__ and __embeddings external \u0026 foundation\nmodel__ serving endpoints. This is a map of strings and should only be used with other external/foundation\nmodel query fields.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "input", + "description": "The input string (or array of strings) field used ONLY for __embeddings external \u0026 foundation model__\nserving endpoints and is the only field (along with extra_params if needed) used by embeddings queries.", + "is_request_body_field": true, + "entity": { + "is_any": true + } + }, + { + "name": "inputs", + "description": "Tensor-based input in columnar format.", + "is_request_body_field": true, + "entity": { + "is_any": true + } + }, + { + "name": "instances", + "description": "Tensor-based input in row format.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_any": true + } + } + }, + { + "name": "max_tokens", + "description": "The max tokens field used ONLY for __completions__ and __chat external \u0026 foundation model__ serving\nendpoints. This is an integer and should only be used with other chat/completions query fields.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "messages", + "description": "The messages field used ONLY for __chat external \u0026 foundation model__ serving endpoints.\nThis is an array of ChatMessage objects and should only be used with other chat query fields.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ChatMessageList", + "array_value": { + "pascal_name": "ChatMessage", + "is_object": true + } + } + }, + { + "name": "n", + "description": "The n (number of candidates) field used ONLY for __completions__ and __chat external \u0026 foundation model__\nserving endpoints. This is an integer between 1 and 5 with a default of 1 and should only be used with\nother chat/completions query fields.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "name", + "description": "The name of the serving endpoint. This field is required and is provided via the path parameter.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "prompt", + "description": "The prompt string (or array of strings) field used ONLY for __completions external \u0026 foundation model__\nserving endpoints and should only be used with other completions query fields.", + "is_request_body_field": true, + "entity": { + "is_any": true + } + }, + { + "name": "stop", + "description": "The stop sequences field used ONLY for __completions__ and __chat external \u0026 foundation model__ serving\nendpoints. This is a list of strings and should only be used with other chat/completions query fields.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "stream", + "description": "The stream field used ONLY for __completions__ and __chat external \u0026 foundation model__ serving endpoints.\nThis is a boolean defaulting to false and should only be used with other chat/completions query fields.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "temperature", + "description": "The temperature field used ONLY for __completions__ and __chat external \u0026 foundation model__ serving\nendpoints. This is a float between 0.0 and 2.0 with a default of 1.0 and should only be used with other\nchat/completions query fields.", + "is_request_body_field": true, + "entity": { + "is_float64": true + } + }, + { + "name": "usage_context", + "description": "Optional user-provided context that will be recorded in the usage tracking table.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the serving endpoint. This field is required and is provided via the path parameter.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "settings.Settings", + "name": "Settings", + "description": "Workspace Settings API allows users to manage settings at the workspace level.", + "package": { + "name": "settings" + }, + "has_subservices": true, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "subservice_ids": [ + "settings.AibiDashboardEmbeddingAccessPolicy", + "settings.AibiDashboardEmbeddingApprovedDomains", + "settings.AutomaticClusterUpdate", + "settings.ComplianceSecurityProfile", + "settings.DashboardEmailSubscriptions", + "settings.DefaultNamespace", + "settings.DefaultWarehouseId", + "settings.DisableLegacyAccess", + "settings.DisableLegacyDbfs", + "settings.EnableExportNotebook", + "settings.EnableNotebookTableClipboard", + "settings.EnableResultsDownloading", + "settings.EnhancedSecurityMonitoring", + "settings.LlmProxyPartnerPoweredWorkspace", + "settings.RestrictWorkspaceAdmins", + "settings.SqlResultsDownload" + ] + }, + { + "id": "settings.AccountSettings", + "name": "AccountSettings", + "description": "Accounts Settings API allows users to manage settings at the account level.", + "package": { + "name": "settings" + }, + "is_accounts": true, + "has_subservices": true, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "subservice_ids": [ + "settings.CspEnablementAccount", + "settings.DisableLegacyFeatures", + "settings.EnableIpAccessLists", + "settings.EsmEnablementAccount", + "settings.LlmProxyPartnerPoweredAccount", + "settings.LlmProxyPartnerPoweredEnforce", + "settings.PersonalCompute" + ] + }, + { + "id": "settingsv2.AccountSettingsV2", + "name": "AccountSettingsV2", + "description": "APIs to manage account level settings", + "package": { + "name": "settingsv2" + }, + "is_accounts": true, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListAccountSettingsMetadataRequest" + } + }, + "methods": [ + { + "name": "GetPublicAccountSetting", + "description": "Get a setting value at account level. See :method:settingsv2/listaccountsettingsmetadata for list of setting available via public APIs at account level.", + "summary": "Get an account setting.", + "path": "/api/2.1/accounts/{account_id}/settings/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetPublicAccountSettingRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Setting", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPublicAccountUserPreference", + "description": "Get a user preference for a specific user.\nUser preferences are personal settings that allow individual customization without affecting other users.\nSee :method:settingsv2/listaccountuserpreferencesmetadata for list of user preferences available via public APIs.", + "summary": "Get a user preference.", + "path": "/api/2.1/accounts/{account_id}/users/{user_id}/settings/{name}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetPublicAccountUserPreferenceRequest", + "is_object": true, + "required_fields": [ + { + "name": "user_id", + "description": "User ID of the user whose setting is being retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "User Setting name.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "user_id", + "description": "User ID of the user whose setting is being retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "User Setting name.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UserPreference", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "User Setting name.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "user_id", + "description": "User ID of the user whose setting is being retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "user_id", + "description": "User ID of the user whose setting is being retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "User Setting name.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListAccountSettingsMetadata", + "description": "List valid setting keys and metadata. These settings are available to be referenced via\nGET :method:settingsv2/getpublicaccountsetting and\nPATCH :method:settingsv2/patchpublicaccountsetting APIs", + "summary": "List valid setting keys and their metadata.", + "path": "/api/2.1/accounts/{account_id}/settings-metadata", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAccountSettingsMetadataRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListAccountSettingsMetadataResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of settings to return. The service may return fewer than this value.\nIf unspecified, at most 200 settings will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListAccountSettingsMetadataRequest` call.\nProvide this to retrieve the subsequent page.\n\nWhen paginating, all other parameters provided to `ListAccountSettingsMetadataRequest` must match\nthe call that provided the page token.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListAccountSettingsMetadataRequest` call.\nProvide this to retrieve the subsequent page.\n\nWhen paginating, all other parameters provided to `ListAccountSettingsMetadataRequest` must match\nthe call that provided the page token.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListAccountUserPreferencesMetadata", + "description": "List valid user preferences and their metadata for a specific user.\nUser preferences are personal settings that allow individual customization without affecting other users.\nThese settings are available to be referenced via\nGET :method:settingsv2/getpublicaccountuserpreference and\nPATCH :method:settingsv2/patchpublicaccountuserpreference APIs", + "summary": "List user preferences and their metadata.", + "path": "/api/2.1/accounts/{account_id}/users/{user_id}/settings-metadata", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListAccountUserPreferencesMetadataRequest", + "is_object": true, + "required_fields": [ + { + "name": "user_id", + "description": "User ID of the user whose settings metadata is being retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "user_id", + "description": "User ID of the user whose settings metadata is being retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListAccountUserPreferencesMetadataResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of settings to return. The service may return fewer than this value.\nIf unspecified, at most 200 settings will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListAccountUserPreferencesMetadataRequest` call.\nProvide this to retrieve the subsequent page.\n\nWhen paginating, all other parameters provided to `ListAccountUserPreferencesMetadataRequest` must match\nthe call that provided the page token.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "user_id", + "description": "User ID of the user whose settings metadata is being retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "user_id", + "description": "User ID of the user whose settings metadata is being retrieved.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListAccountUserPreferencesMetadataRequest` call.\nProvide this to retrieve the subsequent page.\n\nWhen paginating, all other parameters provided to `ListAccountUserPreferencesMetadataRequest` must match\nthe call that provided the page token.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "PatchPublicAccountSetting", + "description": "Patch a setting value at account level. See :method:settingsv2/listaccountsettingsmetadata for list of setting available via public APIs at account level.\nTo determine the correct field to include in a patch request, refer to the type field of the setting returned in the :method:settingsv2/listaccountsettingsmetadata response.\n\nNote: Page refresh is required for changes to take effect in UI.", + "summary": "Update an account setting.", + "path": "/api/2.1/accounts/{account_id}/settings/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "PatchPublicAccountSettingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Setting", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Setting", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Setting", + "is_object": true + } + }, + "response": { + "pascal_name": "Setting", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Setting", + "is_object": true + } + }, + { + "name": "aibi_dashboard_embedding_access_policy", + "description": "Setting value for aibi_dashboard_embedding_access_policy setting. This is the setting value set by consumers, check effective_aibi_dashboard_embedding_access_policy for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingAccessPolicy", + "is_object": true + } + }, + { + "name": "aibi_dashboard_embedding_approved_domains", + "description": "Setting value for aibi_dashboard_embedding_approved_domains setting. This is the setting value set by consumers, check effective_aibi_dashboard_embedding_approved_domains for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingApprovedDomains", + "is_object": true + } + }, + { + "name": "allowed_apps_user_api_scopes", + "description": "Setting value for allowed_apps_user_api_scopes setting. This is the setting value set by consumers, check effective_allowed_apps_user_api_scopes for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AllowedAppsUserApiScopesMessage", + "is_object": true + } + }, + { + "name": "automatic_cluster_update_workspace", + "description": "Setting value for automatic_cluster_update_workspace setting. This is the setting value set by consumers, check effective_automatic_cluster_update_workspace for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ClusterAutoRestartMessage", + "is_object": true + } + }, + { + "name": "boolean_val", + "description": "Setting value for boolean type setting. This is the setting value set by consumers, check effective_boolean_val for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + }, + { + "name": "collaboration_platform_connectivity", + "description": "Setting value for collaboration_platform_connectivity setting. This is the setting value set by consumers, check effective_collaboration_platform_connectivity for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CollaborationPlatformConnectivityMessage", + "is_object": true + } + }, + { + "name": "effective_aibi_dashboard_embedding_access_policy", + "description": "Effective setting value for aibi_dashboard_embedding_access_policy setting. This is the final effective value of setting. To set a value use aibi_dashboard_embedding_access_policy.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingAccessPolicy", + "is_object": true + } + }, + { + "name": "effective_aibi_dashboard_embedding_approved_domains", + "description": "Effective setting value for aibi_dashboard_embedding_approved_domains setting. This is the final effective value of setting. To set a value use aibi_dashboard_embedding_approved_domains.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingApprovedDomains", + "is_object": true + } + }, + { + "name": "effective_allowed_apps_user_api_scopes", + "description": "Effective setting value for allowed_apps_user_api_scopes setting. This is the final effective value of setting. To set a value use allowed_apps_user_api_scopes.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AllowedAppsUserApiScopesMessage", + "is_object": true + } + }, + { + "name": "effective_automatic_cluster_update_workspace", + "description": "Effective setting value for automatic_cluster_update_workspace setting. This is the final effective value of setting. To set a value use automatic_cluster_update_workspace.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ClusterAutoRestartMessage", + "is_object": true + } + }, + { + "name": "effective_boolean_val", + "description": "Effective setting value for boolean type setting. This is the final effective value of setting. To set a value use boolean_val.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + }, + { + "name": "effective_collaboration_platform_connectivity", + "description": "Effective setting value for collaboration_platform_connectivity setting. This is the final effective value of setting. To set a value use collaboration_platform_connectivity.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CollaborationPlatformConnectivityMessage", + "is_object": true + } + }, + { + "name": "effective_integer_val", + "description": "Effective setting value for integer type setting. This is the final effective value of setting. To set a value use integer_val.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IntegerMessage", + "is_object": true + } + }, + { + "name": "effective_operational_email_custom_recipient", + "description": "Effective setting value for operational_email_custom_recipient setting. This is the final effective value of setting. To set a value use operational_email_custom_recipient.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "OperationalEmailCustomRecipientMessage", + "is_object": true + } + }, + { + "name": "effective_personal_compute", + "description": "Effective setting value for personal_compute setting. This is the final effective value of setting. To set a value use personal_compute.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PersonalComputeMessage", + "is_object": true + } + }, + { + "name": "effective_restrict_workspace_admins", + "description": "Effective setting value for restrict_workspace_admins setting. This is the final effective value of setting. To set a value use restrict_workspace_admins.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RestrictWorkspaceAdminsMessage", + "is_object": true + } + }, + { + "name": "effective_string_val", + "description": "Effective setting value for string type setting. This is the final effective value of setting. To set a value use string_val.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "StringMessage", + "is_object": true + } + }, + { + "name": "effective_workspace_label", + "description": "Effective setting value for workspace_label setting. This is the final effective value of setting. To set a value use workspace_label.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "WorkspaceLabelMessage", + "is_object": true + } + }, + { + "name": "integer_val", + "description": "Setting value for integer type setting. This is the setting value set by consumers, check effective_integer_val for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IntegerMessage", + "is_object": true + } + }, + { + "name": "name", + "description": "Name of the setting.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "operational_email_custom_recipient", + "description": "Setting value for operational_email_custom_recipient setting. This is the setting value set by consumers, check effective_operational_email_custom_recipient for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "OperationalEmailCustomRecipientMessage", + "is_object": true + } + }, + { + "name": "personal_compute", + "description": "Setting value for personal_compute setting. This is the setting value set by consumers, check effective_personal_compute for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PersonalComputeMessage", + "is_object": true + } + }, + { + "name": "restrict_workspace_admins", + "description": "Setting value for restrict_workspace_admins setting. This is the setting value set by consumers, check effective_restrict_workspace_admins for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RestrictWorkspaceAdminsMessage", + "is_object": true + } + }, + { + "name": "string_val", + "description": "Setting value for string type setting. This is the setting value set by consumers, check effective_string_val for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "StringMessage", + "is_object": true + } + }, + { + "name": "workspace_label", + "description": "Setting value for workspace_label setting. This is the setting value set by consumers, check effective_workspace_label for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "WorkspaceLabelMessage", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "PatchPublicAccountUserPreference", + "description": "Update a user preference for a specific user.\nUser preferences are personal settings that allow individual customization without affecting other users.\nSee :method:settingsv2/listaccountuserpreferencesmetadata for list of user preferences available via public APIs.\n\nNote: Page refresh is required for changes to take effect in UI.", + "summary": "Update a user preference.", + "path": "/api/2.1/accounts/{account_id}/users/{user_id}/settings/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "PatchPublicAccountUserPreferenceRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "user_id", + "description": "User ID of the user whose setting is being updated.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserPreference", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "user_id", + "description": "User ID of the user whose setting is being updated.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserPreference", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserPreference", + "is_object": true + } + }, + "response": { + "pascal_name": "UserPreference", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserPreference", + "is_object": true + } + }, + { + "name": "user_id", + "description": "User ID of the user whose setting is being updated.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "boolean_val", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + }, + { + "name": "effective_boolean_val", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + }, + { + "name": "effective_string_val", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "StringMessage", + "is_object": true + } + }, + { + "name": "name", + "description": "Name of the setting.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "string_val", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "StringMessage", + "is_object": true + } + }, + { + "name": "user_id", + "description": "User ID of the user.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "user_id", + "description": "User ID of the user whose setting is being updated.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "sharing.Shares", + "name": "Shares", + "description": "A share is a container instantiated with :method:shares/create. Once created you can\niteratively register a collection of existing data assets defined within the metastore\nusing :method:shares/update. You can register data assets under their original name,\nqualified by their original schema, or provide alternate exposed names.", + "package": { + "name": "sharing" + }, + "docs_group": "sharing", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "SharesListRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new share for data objects. Data objects can be added after creation with **update**.\nThe caller must be a metastore admin or have the **CREATE_SHARE** privilege on the metastore.", + "summary": "Create a share.", + "path": "/api/2.1/unity-catalog/shares", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateShare", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the share.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the share.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ShareInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "User-provided free-form text description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "Name of the share.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "replication_config", + "description": "Configuration for share replication.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ReplicationConfig", + "is_object": true + } + }, + { + "name": "storage_root", + "description": "Storage root URL for the share.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the share.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a data object share from the metastore. The caller must be an owner of the share.", + "summary": "Delete a share.", + "path": "/api/2.1/unity-catalog/shares/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteShareRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a data object share from the metastore. The caller must have the USE_SHARE privilege on the metastore or be the owner of the share.", + "summary": "Get a share.", + "path": "/api/2.1/unity-catalog/shares/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetShareRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ShareInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "include_shared_data", + "description": "Query for data to include in the share.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListShares", + "description": "Gets an array of data object shares from the metastore. If the caller has the USE_SHARE privilege on the metastore, all shares are returned. Otherwise, only shares owned by the caller are returned.\nThere is no guarantee of a specific ordering of the elements in the array.", + "summary": "List shares.", + "path": "/api/2.1/unity-catalog/shares", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SharesListRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListSharesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "max_results", + "description": "Maximum number of shares to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid shares are returned (not recommended).\n- Note: The number of returned shares might be less than the specified max_results size, even zero.\nThe only definitive indication that no further shares can be fetched is when the next_page_token is unset from the response.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + }, + "max_results": { + "name": "max_results", + "description": "Maximum number of shares to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid shares are returned (not recommended).\n- Note: The number of returned shares might be less than the specified max_results size, even zero.\nThe only definitive indication that no further shares can be fetched is when the next_page_token is unset from the response.", + "is_query": true, + "entity": { + "is_int": true + } + } + } + }, + { + "name": "SharePermissions", + "description": "Gets the permissions for a data share from the metastore.\nThe caller must have the USE_SHARE privilege on the metastore or be the owner of the share.", + "summary": "Get permissions.", + "path": "/api/2.1/unity-catalog/shares/{name}/permissions", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SharePermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the Recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the Recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetSharePermissionsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "max_results", + "description": "Maximum number of permissions to return.\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to a value less than 0, an invalid parameter error is returned;\n- If not set, all valid permissions are returned (not recommended).\n- Note: The number of returned permissions might be less than the specified max_results size, even zero.\nThe only definitive indication that no further permissions can be fetched is when the next_page_token is unset from the response.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "name", + "description": "The name of the Recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the Recipient.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the share with the changes and data objects in the request.\nThe caller must be the owner of the share or a metastore admin.\n\nWhen the caller is a metastore admin, only the __owner__ field can be updated.\n\nIn the case the share name is changed, **updateShare** requires that the caller is the owner of the share\nand has the CREATE_SHARE privilege.\n\nIf there are notebook files in the share, the __storage_root__ field cannot be updated.\n\nFor each table that is added through this method, the share owner must also have **SELECT** privilege on the table.\nThis privilege must be maintained indefinitely for recipients to be able to access the table.\nTypically, you should use a group as the share owner.\n\nTable removals through **update** do not require additional privileges.", + "summary": "Update a share.", + "path": "/api/2.1/unity-catalog/shares/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateShare", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ShareInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "User-provided free-form text description.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "new_name", + "description": "New name for the share.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "Username of current owner of share.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_root", + "description": "Storage root URL for the share.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "updates", + "description": "Array of shared data object updates.", + "is_request_body_field": true, + "entity": { + "pascal_name": "SharedDataObjectUpdateList", + "array_value": { + "pascal_name": "SharedDataObjectUpdate", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions for a data share in the metastore.\nThe caller must have both the USE_SHARE and SET_SHARE_PERMISSION privileges on the metastore,\nor be the owner of the share.\n\nFor new recipient grants, the user must also be the owner of the recipients.\nrecipient revocations do not require additional privileges.", + "summary": "Update permissions.", + "path": "/api/2.1/unity-catalog/shares/{name}/permissions", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateSharePermissions", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateSharePermissionsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "changes", + "description": "Array of permissions change objects.", + "is_request_body_field": true, + "entity": { + "pascal_name": "PermissionsChangeList", + "array_value": { + "pascal_name": "PermissionsChange", + "is_object": true + } + } + }, + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "omit_permissions_list", + "description": "Optional. Whether to return the latest permissions list of the share in the response.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the share.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "settings.SqlResultsDownload", + "name": "SqlResultsDownload", + "description": "Controls whether users within the workspace are allowed to download results from the SQL Editor and AI/BI Dashboards UIs. By default, this setting is enabled (set to `true`)", + "package": { + "name": "settings" + }, + "has_parent": true, + "docs_group": "settings", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "parent_service_id": "settings.Settings", + "methods": [ + { + "name": "Delete", + "description": "Reverts the SQL Results Download setting to its default value.", + "summary": "Delete the SQL Results Download setting.", + "path": "/api/2.0/settings/types/sql_results_download/names/default", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteSqlResultsDownloadRequest", + "is_object": true + }, + "response": { + "pascal_name": "DeleteSqlResultsDownloadResponse", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets the SQL Results Download setting.", + "summary": "Get the SQL Results Download setting.", + "path": "/api/2.0/settings/types/sql_results_download/names/default", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetSqlResultsDownloadRequest", + "is_object": true + }, + "response": { + "pascal_name": "SqlResultsDownload", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "etag", + "description": "etag used for versioning. The response is at least as fresh as the eTag\nprovided. This is used for optimistic concurrency control as a way to\nhelp prevent simultaneous writes of a setting overwriting each other. It\nis strongly suggested that systems make use of the etag in the read -\u003e\ndelete pattern to perform setting deletions in order to avoid race\nconditions. That is, get an etag from a GET request, and pass it with the\nDELETE request to identify the rule set version you are deleting.", + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the SQL Results Download setting.", + "summary": "Update the SQL Results Download setting.", + "path": "/api/2.0/settings/types/sql_results_download/names/default", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateSqlResultsDownloadRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SqlResultsDownload", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SqlResultsDownload", + "is_object": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SqlResultsDownload", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "boolean_val", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "This should always be set to true for Settings API. Added for AIP compliance.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "field_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SqlResultsDownload", + "is_object": true + } + } + ] + } + ] + }, + { + "id": "sql.StatementExecution", + "name": "StatementExecution", + "description": "The Databricks SQL Statement Execution API can be used to execute SQL statements on a SQL warehouse and fetch the result.\n\n**Getting started**\n\nWe suggest beginning with the [Databricks SQL Statement Execution API tutorial](https://docs.databricks.com/sql/api/sql-execution-tutorial.html).\n\n**Overview of statement execution and result fetching**\n\nStatement execution begins by issuing a :method:statementexecution/executeStatement request with a valid\nSQL statement and warehouse ID, along with optional parameters such as the data catalog and output format.\nIf no other parameters are specified, the server will wait for up to 10s before returning a response.\nIf the statement has completed within this timespan, the response will include the result data as a JSON\narray and metadata.\nOtherwise, if no result is available after the 10s timeout expired, the response will provide the\nstatement ID that can be used to poll for results by using a :method:statementexecution/getStatement\nrequest.\n\nYou can specify whether the call should behave synchronously, asynchronously\nor start synchronously with a fallback to asynchronous execution.\nThis is controlled with the `wait_timeout` and `on_wait_timeout` settings.\nIf `wait_timeout` is set between 5-50 seconds (default:\n10s), the call waits for results up to\nthe specified timeout; when set to `0s`, the call is asynchronous and responds immediately with a\nstatement ID. The `on_wait_timeout` setting specifies what should happen when the timeout is reached while\nthe statement execution has not yet finished. This can be set to either `CONTINUE`, to fallback to\nasynchronous mode, or it can be set to `CANCEL`, which cancels the statement.\n\nIn summary:\n- **Synchronous mode** (`wait_timeout=30s` and `on_wait_timeout=CANCEL`):\nThe call waits up to 30 seconds; if the statement execution finishes within this time,\nthe result data is returned directly in the response. If the execution takes longer than 30 seconds,\nthe execution is canceled and the call returns with a `CANCELED` state.\n- **Asynchronous mode** (`wait_timeout=0s` and `on_wait_timeout` is ignored):\nThe call doesn't wait for the statement to finish but returns directly with a statement ID.\nThe status of the statement execution can be polled by issuing :method:statementexecution/getStatement with the statement ID.\nOnce the execution has succeeded, this call also returns the result and metadata in the response.\n- **[Default] Hybrid mode** (`wait_timeout=10s` and `on_wait_timeout=CONTINUE`):\nThe call waits for up to 10 seconds; if the statement execution finishes within this time,\nthe result data is returned directly in the response. If the execution takes longer than 10\nseconds, a statement ID is returned. The statement ID can be used to fetch status and results in\nthe same way as in the asynchronous mode.\n\nDepending on the size, the result can be split into multiple chunks. If the statement execution is\nsuccessful, the statement response contains a manifest and the first chunk of the result. The manifest\ncontains schema information and provides metadata for each chunk in the result. Result chunks can be\nretrieved by index with :method:statementexecution/getStatementResultChunkN which may be called in any\norder and in parallel. For sequential fetching, each chunk, apart from the last, also contains a\n`next_chunk_index` and `next_chunk_internal_link` that point to the next chunk.\n\nA statement can be canceled with :method:statementexecution/cancelExecution.\n\n**Fetching result data: format and disposition**\n\nTo specify the format of the result data, use the `format` field, which can be set to one of the following\noptions: `JSON_ARRAY` (JSON), `ARROW_STREAM`\n([Apache Arrow Columnar](https://arrow.apache.org/overview/)), or `CSV`.\n\nThere are two ways to receive statement results, controlled by the `disposition` setting,\nwhich can be either `INLINE` or `EXTERNAL_LINKS`:\n\n- `INLINE`: In this mode, the result data is directly included in the response. It's best suited for smaller results.\nThis mode can only be used with the `JSON_ARRAY` format.\n\n- `EXTERNAL_LINKS`: In this mode, the response provides links that can be used to download the result data in chunks separately.\nThis approach is ideal for larger results and offers higher throughput.\nThis mode can be used with all the formats: `JSON_ARRAY`, `ARROW_STREAM`, and `CSV`.\n\nBy default, the API uses `format=JSON_ARRAY` and `disposition=INLINE`.\n\n**Limits and limitations**\n\nNote: The byte limit for INLINE disposition is based on internal storage metrics and will not exactly match the byte count of the actual payload.\n\n- Statements with `disposition=INLINE` are limited to 25 MiB and will fail when this limit is\nexceeded.\n- Statements with `disposition=EXTERNAL_LINKS` are limited to 100 GiB. Result sets larger than\nthis limit will be truncated. Truncation is indicated by the `truncated` field in the result manifest.\n- The maximum query text size is 16 MiB.\n- Cancelation might silently fail. A successful response from a cancel request indicates that the cancel request\nwas successfully received and sent to the processing engine. However, an outstanding statement\nmight have already completed execution when the cancel request arrives. Polling\nfor status until a terminal state is reached is a reliable way to determine the final state.\n- Wait timeouts are approximate, occur server-side, and cannot account for things such as caller delays and network latency from caller to service.\n- To keep a statement alive, poll for its status at least once every 15 minutes. Regular polling guarantees the statement stays alive.\n- To stop a statement you no longer need, cancel it explicitly with :method:statementexecution/cancelExecution. Stopping polling does not cancel a statement. Explicit cancellation is the only way to end statement execution on demand.\n- The results are only available for one hour after success; polling does not extend this.\n- The SQL Execution API must be used for the entire lifecycle of the statement. For example, you cannot use the Jobs API to execute the command, and then the SQL Execution API to cancel it.", + "package": { + "name": "sql" + }, + "docs_group": "sql", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "CancelExecution", + "description": "Requests that an executing statement be canceled. Callers must poll for status to see the\nterminal state. Cancel response is empty; receiving response indicates successful receipt.", + "summary": "Cancel statement execution.", + "path": "/api/2.0/sql/statements/{statement_id}/cancel", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CancelExecutionRequest", + "is_object": true, + "required_fields": [ + { + "name": "statement_id", + "description": "The statement ID is returned upon successfully submitting a SQL statement, and is a required\nreference for all subsequent calls.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "statement_id", + "description": "The statement ID is returned upon successfully submitting a SQL statement, and is a required\nreference for all subsequent calls.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "statement_id", + "description": "The statement ID is returned upon successfully submitting a SQL statement, and is a required\nreference for all subsequent calls.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "statement_id", + "description": "The statement ID is returned upon successfully submitting a SQL statement, and is a required\nreference for all subsequent calls.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ExecuteStatement", + "description": "Execute a SQL statement and optionally await its results for a specified time.\n\n**Use case: small result sets with INLINE + JSON_ARRAY**\n\nFor flows that generate small and predictable result sets (\u003c= 25 MiB), `INLINE` responses of `JSON_ARRAY` result\ndata are typically the simplest way to execute and fetch result data.\n\n**Use case: large result sets with EXTERNAL_LINKS**\n\nUsing `EXTERNAL_LINKS` to fetch result data allows you to fetch large result sets efficiently.\nThe main differences from using `INLINE` disposition are that the result data is accessed\nwith short-lived cloud-storage URLs, and\nthat there are 3 supported formats: `JSON_ARRAY`, `ARROW_STREAM` and `CSV` compared to only `JSON_ARRAY` with\n`INLINE`.\n\n**External-link URLs**\n\nExternal links point to data stored within your workspace's internal cloud storage. The URLs are valid for only a\nshort period, \u003c= 15 minutes. Alongside each `external_link` is an expiration field indicating the time at which the URL\nis no longer valid. In `EXTERNAL_LINKS` mode, chunks can be resolved and fetched multiple times and in parallel.\n\n----\n\n### **Warning: Databricks strongly recommends that you protect the URLs that are returned by the `EXTERNAL_LINKS` disposition.**\n\nWhen you use the `EXTERNAL_LINKS` disposition, a short-lived cloud-storage URL is generated to download the\nresults. The URL contains temporary access credentials, so protect it and do not set an `Authorization` header in\nthe download request.\n\nThe `EXTERNAL_LINKS` disposition can be disabled upon request by creating a [support case](https://docs.databricks.com/resources/support.html).\n\nSee also [Security best practices](https://docs.databricks.com/sql/admin/sql-execution-tutorial.html#security-best-practices).\n\n----\n\nStatementResponse contains `statement_id` and `status`; other fields might be absent or present depending on\ncontext. If the SQL warehouse fails to execute the provided statement, a 200 response is returned with\n`status.state` set to `FAILED` (in contrast to a failure when accepting the request, which results in a non-200\nresponse). Details of the error can be found at `status.error` in case of execution failures.", + "summary": "Execute a SQL statement.", + "path": "/api/2.0/sql/statements", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ExecuteStatementRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "statement", + "description": "The SQL statement to execute. The statement can optionally be parameterized, see `parameters`.\nThe maximum query text size is 16 MiB.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "Warehouse upon which to execute a statement. See also\n[What are SQL warehouses?](https://docs.databricks.com/sql/admin/warehouse-type.html)", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "statement", + "description": "The SQL statement to execute. The statement can optionally be parameterized, see `parameters`.\nThe maximum query text size is 16 MiB.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "Warehouse upon which to execute a statement. See also\n[What are SQL warehouses?](https://docs.databricks.com/sql/admin/warehouse-type.html)", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "StatementResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "byte_limit", + "description": "Applies the given byte limit to the statement's result size. Byte counts are based on internal data\nrepresentations and might not match the final size in the requested `format`. If the result was truncated due to\nthe byte limit, then `truncated` in the response is set to `true`.\nWhen using `EXTERNAL_LINKS` disposition, a default `byte_limit` of 100 GiB is applied if `byte_limit` is not\nexplicitly set.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "catalog", + "description": "Sets default catalog for statement execution, similar to\n[`USE CATALOG`](https://docs.databricks.com/sql/language-manual/sql-ref-syntax-ddl-use-catalog.html)\nin SQL.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "disposition", + "description": "The fetch disposition provides two modes of fetching results: `INLINE` and `EXTERNAL_LINKS`.\n\nStatements executed with `INLINE` disposition will return result data inline, in `JSON_ARRAY` format, in a series\nof chunks. If a given statement produces a result set with a size larger than 25 MiB,\nthat statement execution is aborted, and no result set will be available.\n\n**NOTE**\nByte limits are computed based upon internal representations of the result set data, and might not match the sizes\nvisible in JSON responses.\n\nStatements executed with `EXTERNAL_LINKS` disposition will return result data as external links: URLs that point\nto cloud storage internal to the workspace. Using `EXTERNAL_LINKS` disposition allows statements to generate\narbitrarily sized result sets for fetching up to 100 GiB. The resulting links have two important properties:\n\n1. They point to resources _external_ to the Databricks compute; therefore any associated authentication\ninformation (typically a personal access token, OAuth token, or similar) _must be removed_ when fetching from\nthese links.\n\n2. These are short-lived cloud-storage URLs\nwith a specific expiration, indicated in the response. The behavior when attempting to use an expired link is\ncloud specific.", + "is_request_body_field": true, + "entity": { + "pascal_name": "Disposition", + "enum": [ + { + "content": "EXTERNAL_LINKS" + }, + { + "content": "INLINE" + } + ] + } + }, + { + "name": "format", + "description": "Statement execution supports three result formats: `JSON_ARRAY` (default), `ARROW_STREAM`, and `CSV`.\n\nImportant: The formats `ARROW_STREAM` and `CSV` are supported only with `EXTERNAL_LINKS` disposition.\n`JSON_ARRAY` is supported in `INLINE` and `EXTERNAL_LINKS` disposition.\n\nWhen specifying `format=JSON_ARRAY`, result data will be formatted as an array of arrays of values, where each\nvalue is either the *string representation* of a value, or `null`.\nFor example, the output of `SELECT concat('id-', id) AS strCol, id AS intCol, null AS nullCol FROM range(3)` would\nlook like this:\n\n```\n[\n[ \"id-1\", \"1\", null ],\n[ \"id-2\", \"2\", null ],\n[ \"id-3\", \"3\", null ],\n]\n```\n\nWhen specifying `format=JSON_ARRAY` and `disposition=EXTERNAL_LINKS`, each chunk in the result contains compact\nJSON with no indentation or extra whitespace.\n\nWhen specifying `format=ARROW_STREAM` and `disposition=EXTERNAL_LINKS`, each chunk in the result will be formatted\nas Apache Arrow Stream. See the\n[Apache Arrow streaming format](https://arrow.apache.org/docs/format/Columnar.html#ipc-streaming-format).\n\nWhen specifying `format=CSV` and `disposition=EXTERNAL_LINKS`, each chunk in the result will be a CSV according to\n[RFC 4180](https://www.rfc-editor.org/rfc/rfc4180) standard.\nAll the columns values will have *string representation* similar to the `JSON_ARRAY` format, and `null` values will\nbe encoded as “null”.\nOnly the first chunk in the result would contain a header row with column names.\nFor example, the output of `SELECT concat('id-', id) AS strCol, id AS intCol, null as nullCol FROM range(3)` would\nlook like this:\n\n```\nstrCol,intCol,nullCol\nid-1,1,null\nid-2,2,null\nid-3,3,null\n```", + "is_request_body_field": true, + "entity": { + "pascal_name": "Format", + "enum": [ + { + "content": "ARROW_STREAM" + }, + { + "content": "CSV" + }, + { + "content": "JSON_ARRAY" + } + ] + } + }, + { + "name": "on_wait_timeout", + "description": "When `wait_timeout \u003e 0s`, the call will block up to the specified time. If the statement execution doesn't\nfinish within this time, `on_wait_timeout` determines whether the execution should continue or be canceled.\nWhen set to `CONTINUE`, the statement execution continues asynchronously and the call returns a statement ID\nwhich can be used for polling with :method:statementexecution/getStatement. When set to `CANCEL`,\nthe statement execution is canceled and the call returns with a `CANCELED` state.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ExecuteStatementRequestOnWaitTimeout", + "enum": [ + { + "content": "CANCEL" + }, + { + "content": "CONTINUE" + } + ] + } + }, + { + "name": "parameters", + "description": "A list of parameters to pass into a SQL statement containing parameter markers. A\nparameter consists of a name, a value, and optionally a type. To represent a NULL\nvalue, the `value` field may be omitted or set to `null` explicitly. If the `type` field\nis omitted, the value is interpreted as a string.\n\nIf the type is given, parameters will be checked for type correctness according\nto the given type. A value is correct if the provided string can be converted to\nthe requested type using the `cast` function. The exact semantics are described in\nthe section [`cast` function](https://docs.databricks.com/sql/language-manual/functions/cast.html) of the SQL language reference.\n\nFor example, the following statement contains two parameters, `my_name` and `my_date`:\n\n```\nSELECT * FROM my_table WHERE name = :my_name AND date = :my_date\n```\n\nThe parameters can be passed in the request body as follows:\n\n`\n{\n...,\n\"statement\": \"SELECT * FROM my_table WHERE name = :my_name AND date = :my_date\",\n\"parameters\": [\n{ \"name\": \"my_name\", \"value\": \"the name\" },\n{ \"name\": \"my_date\", \"value\": \"2020-01-01\", \"type\": \"DATE\" }\n]\n}\n`\n\nCurrently, positional parameters denoted by a `?` marker are not supported by the\nDatabricks SQL Statement Execution API.\n\nAlso see the section [Parameter markers](https://docs.databricks.com/sql/language-manual/sql-ref-parameter-marker.html) of the SQL language reference.", + "is_request_body_field": true, + "entity": { + "pascal_name": "StatementParameterListItemList", + "array_value": { + "pascal_name": "StatementParameterListItem", + "is_object": true + } + } + }, + { + "name": "query_tags", + "description": "An array of query tags to annotate a SQL statement. A query tag\nconsists of a non-empty key and, optionally, a value. To represent a NULL\nvalue, either omit the `value` field or manually set it to `null` or white space.\nRefer to the SQL language reference for the format specification of query tags.\nThere's no significance to the order of tags. Only one value per key will be recorded.\nA sequence in excess of 20 query tags will be coerced to 20.\nExample:\n\n{\n...,\n\"query_tags\": [\n{ \"key\": \"team\", \"value\": \"eng\" },\n{ \"key\": \"some key only tag\" }\n]\n}", + "is_request_body_field": true, + "entity": { + "pascal_name": "QueryTagList", + "array_value": { + "pascal_name": "QueryTag", + "is_object": true + } + } + }, + { + "name": "row_limit", + "description": "Applies the given row limit to the statement's result set, but unlike the `LIMIT` clause in SQL,\nit also sets the `truncated` field in the response to indicate whether the result was trimmed due to the limit or\nnot.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "schema", + "description": "Sets default schema for statement execution, similar to\n[`USE SCHEMA`](https://docs.databricks.com/sql/language-manual/sql-ref-syntax-ddl-use-schema.html)\nin SQL.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "statement", + "description": "The SQL statement to execute. The statement can optionally be parameterized, see `parameters`.\nThe maximum query text size is 16 MiB.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "wait_timeout", + "description": "The time in seconds the call will wait for the statement's result set as `Ns`, where `N` can be set to 0 or to a\nvalue between 5 and 50.\n\nWhen set to `0s`, the statement will execute in asynchronous mode and the call will not wait for the execution to\nfinish. In this case, the call returns directly with `PENDING` state and a statement ID which can be used for\npolling with :method:statementexecution/getStatement.\n\nWhen set between 5 and 50 seconds, the call will behave synchronously up to this timeout and wait for the statement\nexecution to finish. If the execution finishes within this time, the call returns immediately with a manifest and\nresult data (or a `FAILED` state in case of an execution error). If the statement takes longer to execute,\n`on_wait_timeout` determines what should happen after the timeout is reached.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "Warehouse upon which to execute a statement. See also\n[What are SQL warehouses?](https://docs.databricks.com/sql/admin/warehouse-type.html)", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "statement", + "description": "The SQL statement to execute. The statement can optionally be parameterized, see `parameters`.\nThe maximum query text size is 16 MiB.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "warehouse_id", + "description": "Warehouse upon which to execute a statement. See also\n[What are SQL warehouses?](https://docs.databricks.com/sql/admin/warehouse-type.html)", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetStatement", + "description": "This request can be used to poll for the statement's status. StatementResponse contains\n`statement_id` and `status`; other fields might be absent or present depending on context.\nWhen the `status.state` field is `SUCCEEDED` it will also return the result manifest and the\nfirst chunk of the result data. When the statement is in the terminal states `CANCELED`,\n`CLOSED` or `FAILED`, it returns HTTP 200 with the state set. After at least 12 hours in\nterminal state, the statement is removed from the warehouse and further calls will receive an\nHTTP 404 response.\n\n**NOTE**\nThis call currently might take up to 5 seconds to get the latest status and result.", + "summary": "Get status, manifest, and result first chunk.", + "path": "/api/2.0/sql/statements/{statement_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetStatementRequest", + "is_object": true, + "required_fields": [ + { + "name": "statement_id", + "description": "The statement ID is returned upon successfully submitting a SQL statement, and is a required\nreference for all subsequent calls.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "statement_id", + "description": "The statement ID is returned upon successfully submitting a SQL statement, and is a required\nreference for all subsequent calls.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "StatementResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "statement_id", + "description": "The statement ID is returned upon successfully submitting a SQL statement, and is a required\nreference for all subsequent calls.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "statement_id", + "description": "The statement ID is returned upon successfully submitting a SQL statement, and is a required\nreference for all subsequent calls.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetStatementResultChunkN", + "description": "After the statement execution has `SUCCEEDED`, this request can be used to fetch any chunk by\nindex. Whereas the first chunk with `chunk_index=0` is typically fetched with\n:method:statementexecution/executeStatement or :method:statementexecution/getStatement, this\nrequest can be used to fetch subsequent chunks. The response structure is identical to the\nnested `result` element described in the :method:statementexecution/getStatement request, and\nsimilarly includes the `next_chunk_index` and `next_chunk_internal_link` fields for simple\niteration through the result set. Depending on `disposition`, the response returns chunks of\ndata either inline, or as links.", + "summary": "Get result chunk by index.", + "path": "/api/2.0/sql/statements/{statement_id}/result/chunks/{chunk_index}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetStatementResultChunkNRequest", + "is_object": true, + "required_fields": [ + { + "name": "statement_id", + "description": "The statement ID is returned upon successfully submitting a SQL statement, and is a required\nreference for all subsequent calls.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "chunk_index", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + } + ], + "required_in_url_fields": [ + { + "name": "statement_id", + "description": "The statement ID is returned upon successfully submitting a SQL statement, and is a required\nreference for all subsequent calls.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "chunk_index", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + } + ] + }, + "response": { + "pascal_name": "ResultData", + "is_object": true + }, + "all_fields": [ + { + "name": "chunk_index", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + }, + { + "name": "statement_id", + "description": "The statement ID is returned upon successfully submitting a SQL statement, and is a required\nreference for all subsequent calls.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "statement_id", + "description": "The statement ID is returned upon successfully submitting a SQL statement, and is a required\nreference for all subsequent calls.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "chunk_index", + "required": true, + "is_path": true, + "entity": { + "is_int": true + } + } + ] + } + ] + }, + { + "id": "provisioning.Storage", + "name": "Storage", + "description": "These APIs manage storage configurations for this workspace. A root storage S3 bucket in\nyour account is required to store objects like cluster logs, notebook revisions, and job\nresults. You can also use the root storage S3 bucket for storage of non-production DBFS\ndata. A storage configuration encapsulates this bucket information, and its ID is used when\ncreating a new workspace.", + "package": { + "name": "provisioning" + }, + "is_accounts": true, + "docs_group": "provisioning", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Create", + "description": "Creates a Databricks storage configuration for an account.", + "summary": "Create a storage configuration.", + "path": "/api/2.0/accounts/{account_id}/storage-configurations", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateStorageConfigurationRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "storage_configuration_name", + "description": "The human-readable name of the storage configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "root_bucket_info", + "description": "Root S3 bucket information.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RootBucketInfo", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "storage_configuration_name", + "description": "The human-readable name of the storage configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "root_bucket_info", + "description": "Root S3 bucket information.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RootBucketInfo", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "StorageConfiguration", + "is_object": true + }, + "all_fields": [ + { + "name": "role_arn", + "description": "Optional IAM role that is used to access the workspace catalog which is created during workspace creation\nfor UC by Default. If a storage configuration with this field populated is used to create a workspace,\nthen a workspace catalog is created together with the workspace. The workspace catalog shares the root\nbucket with internal workspace storage (including DBFS root) but uses a dedicated bucket path prefix.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "root_bucket_info", + "description": "Root S3 bucket information.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "RootBucketInfo", + "is_object": true + } + }, + { + "name": "storage_configuration_name", + "description": "The human-readable name of the storage configuration.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a Databricks storage configuration. You cannot delete a storage configuration that is associated with any workspace.", + "summary": "Delete a storage configuration.", + "path": "/api/2.0/accounts/{account_id}/storage-configurations/{storage_configuration_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteStorageRequest", + "is_object": true, + "required_fields": [ + { + "name": "storage_configuration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "storage_configuration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "StorageConfiguration", + "is_object": true + }, + "all_fields": [ + { + "name": "storage_configuration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "storage_configuration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a Databricks storage configuration for an account, both specified by ID.", + "summary": "Get a storage configuration.", + "path": "/api/2.0/accounts/{account_id}/storage-configurations/{storage_configuration_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetStorageRequest", + "is_object": true, + "required_fields": [ + { + "name": "storage_configuration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "storage_configuration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "StorageConfiguration", + "is_object": true + }, + "all_fields": [ + { + "name": "storage_configuration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "storage_configuration_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Lists Databricks storage configurations for an account, specified by ID.", + "summary": "List storage configurations.", + "path": "/api/2.0/accounts/{account_id}/storage-configurations", + "is_legacy_empty_request": true, + "is_crud_read": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListStorageRequest", + "is_object": true + }, + "response": { + "pascal_name": "StorageConfigurationList", + "array_value": { + "pascal_name": "StorageConfiguration", + "is_object": true + } + } + } + ] + }, + { + "id": "catalog.StorageCredentials", + "name": "StorageCredentials", + "description": "A storage credential represents an authentication and authorization mechanism for accessing\ndata stored on your cloud tenant. Each storage credential is subject to\nUnity Catalog access-control policies that control which users and groups can access\nthe credential. If a user does not have access to a storage credential in Unity Catalog,\nthe request fails and Unity Catalog does not attempt to authenticate to your cloud tenant\non the user’s behalf.\n\nDatabricks recommends using external locations rather than using storage credentials\ndirectly.\n\nTo create storage credentials, you must be a Databricks account admin. The account admin\nwho creates the storage credential can delegate ownership to another user or group to\nmanage permissions on it.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListStorageCredentialsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new storage credential.\n\nThe caller must be a metastore admin or have the **CREATE_STORAGE_CREDENTIAL** privilege on the metastore.", + "summary": "Create a storage credential.", + "path": "/api/2.1/unity-catalog/storage-credentials", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateStorageCredential", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The credential name. The name must be unique among storage and service\ncredentials within the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "The credential name. The name must be unique among storage and service\ncredentials within the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "StorageCredentialInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "aws_iam_role", + "description": "The AWS IAM role configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AwsIamRoleRequest", + "is_object": true + } + }, + { + "name": "azure_managed_identity", + "description": "The Azure managed identity configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzureManagedIdentityRequest", + "is_object": true + } + }, + { + "name": "azure_service_principal", + "description": "The Azure service principal configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzureServicePrincipal", + "is_object": true + } + }, + { + "name": "cloudflare_api_token", + "description": "The Cloudflare API token configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CloudflareApiToken", + "is_object": true + } + }, + { + "name": "comment", + "description": "Comment associated with the credential.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "databricks_gcp_service_account", + "description": "The Databricks managed GCP service account configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DatabricksGcpServiceAccountRequest", + "is_object": true + } + }, + { + "name": "name", + "description": "The credential name. The name must be unique among storage and service\ncredentials within the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "read_only", + "description": "Whether the credential is usable only for read operations. Only applicable\nwhen purpose is **STORAGE**.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "skip_validation", + "description": "Supplying true to this argument skips validation of the created credential.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The credential name. The name must be unique among storage and service\ncredentials within the metastore.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a storage credential from the metastore. The caller must be an owner of the storage credential.", + "summary": "Delete a credential.", + "path": "/api/2.1/unity-catalog/storage-credentials/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteStorageCredentialRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "force", + "description": "Force an update even if there are dependent external locations or external\ntables (when purpose is **STORAGE**) or dependent services (when purpose is\n**SERVICE**).", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a storage credential from the metastore.\nThe caller must be a metastore admin, the owner of the storage credential, or have some permission on the storage credential.", + "summary": "Get a credential.", + "path": "/api/2.1/unity-catalog/storage-credentials/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetStorageCredentialRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "StorageCredentialInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets an array of storage credentials (as __StorageCredentialInfo__ objects).\nThe array is limited to only those storage credentials the caller has permission to access.\nIf the caller is a metastore admin, retrieval of credentials is unrestricted.\nThere is no guarantee of a specific ordering of the elements in the array.\n\nNOTE: we recommend using max_results=0 to use the paginated version of this API. Unpaginated calls will be deprecated soon.\n\nPAGINATION BEHAVIOR: When using pagination (max_results \u003e= 0), a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List credentials.", + "path": "/api/2.1/unity-catalog/storage-credentials", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListStorageCredentialsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListStorageCredentialsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "include_unbound", + "description": "Whether to include credentials not bound to the workspace.\nEffective only if the user has permission to update the credential–workspace binding.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "max_results", + "description": "Maximum number of storage credentials to return.\nIf not set, all the storage credentials are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of\nthis value and a server configured value;\n- when set to 0, the page length is set to a server configured value\n(recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + }, + "max_results": { + "name": "max_results", + "description": "Maximum number of storage credentials to return.\nIf not set, all the storage credentials are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of\nthis value and a server configured value;\n- when set to 0, the page length is set to a server configured value\n(recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "is_query": true, + "entity": { + "is_int": true + } + } + } + }, + { + "name": "Update", + "description": "Updates a storage credential on the metastore.\n\nThe caller must be the owner of the storage credential or a metastore admin.\nIf the caller is a metastore admin, only the **owner** field can be changed.", + "summary": "Update a credential.", + "path": "/api/2.1/unity-catalog/storage-credentials/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateStorageCredential", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "StorageCredentialInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "aws_iam_role", + "description": "The AWS IAM role configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AwsIamRoleRequest", + "is_object": true + } + }, + { + "name": "azure_managed_identity", + "description": "The Azure managed identity configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzureManagedIdentityResponse", + "is_object": true + } + }, + { + "name": "azure_service_principal", + "description": "The Azure service principal configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzureServicePrincipal", + "is_object": true + } + }, + { + "name": "cloudflare_api_token", + "description": "The Cloudflare API token configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CloudflareApiToken", + "is_object": true + } + }, + { + "name": "comment", + "description": "Comment associated with the credential.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "databricks_gcp_service_account", + "description": "The Databricks managed GCP service account configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DatabricksGcpServiceAccountRequest", + "is_object": true + } + }, + { + "name": "force", + "description": "Force update even if there are dependent external locations or external\ntables.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "isolation_mode", + "description": "Whether the current securable is accessible from all workspaces or a\nspecific set of workspaces.", + "is_request_body_field": true, + "entity": { + "pascal_name": "IsolationMode", + "enum": [ + { + "content": "ISOLATION_MODE_ISOLATED" + }, + { + "content": "ISOLATION_MODE_OPEN" + } + ] + } + }, + { + "name": "name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "new_name", + "description": "New name for the storage credential.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "Username of current owner of credential.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "read_only", + "description": "Whether the credential is usable only for read operations. Only applicable\nwhen purpose is **STORAGE**.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "skip_validation", + "description": "Supplying true to this argument skips validation of the updated credential.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Validate", + "description": "Validates a storage credential.\nAt least one of __external_location_name__ and __url__ need to be provided. If only one of them is\nprovided, it will be used for validation. And if both are provided, the __url__ will be used for\nvalidation, and __external_location_name__ will be ignored when checking overlapping urls.\n\nEither the __storage_credential_name__ or the cloud-specific credential must be provided.\n\nThe caller must be a metastore admin or the storage credential owner or\nhave the **CREATE_EXTERNAL_LOCATION** privilege on the metastore and the storage credential.", + "summary": "Validate a storage credential.", + "path": "/api/2.1/unity-catalog/validate-storage-credentials", + "can_use_json": true, + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ValidateStorageCredential", + "is_object": true + }, + "response": { + "pascal_name": "ValidateStorageCredentialResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "aws_iam_role", + "description": "The AWS IAM role configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AwsIamRoleRequest", + "is_object": true + } + }, + { + "name": "azure_managed_identity", + "description": "The Azure managed identity configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzureManagedIdentityRequest", + "is_object": true + } + }, + { + "name": "azure_service_principal", + "description": "The Azure service principal configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzureServicePrincipal", + "is_object": true + } + }, + { + "name": "cloudflare_api_token", + "description": "The Cloudflare API token configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CloudflareApiToken", + "is_object": true + } + }, + { + "name": "databricks_gcp_service_account", + "description": "The Databricks created GCP service account configuration.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DatabricksGcpServiceAccountRequest", + "is_object": true + } + }, + { + "name": "external_location_name", + "description": "The name of an existing external location to validate.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "read_only", + "description": "Whether the storage credential is only usable for read operations.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "storage_credential_name", + "description": "Required. The name of an existing credential or long-lived cloud\ncredential to validate.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "url", + "description": "The external location url to validate.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.AccountStorageCredentials", + "name": "AccountStorageCredentials", + "description": "These APIs manage storage credentials for a particular metastore.", + "package": { + "name": "catalog" + }, + "is_accounts": true, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListAccountStorageCredentialsRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new storage credential. The request object is specific to the cloud:\n- **AwsIamRole** for AWS credentials\n- **AzureServicePrincipal** for Azure credentials\n- **GcpServiceAccountKey** for GCP credentials\n\nThe caller must be a metastore admin and have the `CREATE_STORAGE_CREDENTIAL` privilege on the metastore.", + "summary": "Create a storage credential.", + "path": "/api/2.0/accounts/{account_id}/metastores/{metastore_id}/storage-credentials", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "AccountsCreateStorageCredential", + "is_object": true, + "required_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccountsCreateStorageCredentialInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "credential_info", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CreateAccountsStorageCredential", + "is_object": true + } + }, + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "skip_validation", + "description": "Optional, default false.\nSupplying true to this argument skips validation of the created set of credentials.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a storage credential from the metastore. The caller must be an owner of the storage credential.", + "summary": "Delete a storage credential.", + "path": "/api/2.0/accounts/{account_id}/metastores/{metastore_id}/storage-credentials/{storage_credential_name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteAccountStorageCredentialRequest", + "is_object": true, + "required_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_credential_name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_credential_name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccountsDeleteStorageCredentialResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "force", + "description": "Force deletion even if the Storage Credential is not empty. Default is false.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_credential_name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_credential_name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a storage credential from the metastore. The caller must be a metastore admin, the owner of the\nstorage credential, or have a level of privilege on the storage credential.", + "summary": "Gets the named storage credential.", + "path": "/api/2.0/accounts/{account_id}/metastores/{metastore_id}/storage-credentials/{storage_credential_name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAccountStorageCredentialRequest", + "is_object": true, + "required_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_credential_name", + "description": "Required. Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_credential_name", + "description": "Required. Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccountsStorageCredentialInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_credential_name", + "description": "Required. Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_credential_name", + "description": "Required. Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets a list of all storage credentials that have been assigned to given metastore.", + "summary": "Get all storage credentials assigned to a metastore.", + "path": "/api/2.0/accounts/{account_id}/metastores/{metastore_id}/storage-credentials", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAccountStorageCredentialsRequest", + "is_object": true, + "required_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListAccountStorageCredentialsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": {} + }, + { + "name": "Update", + "description": "Updates a storage credential on the metastore. The caller must be the owner of the storage credential.\nIf the caller is a metastore admin, only the **owner** credential can be changed.", + "summary": "Updates a storage credential.", + "path": "/api/2.0/accounts/{account_id}/metastores/{metastore_id}/storage-credentials/{storage_credential_name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "AccountsUpdateStorageCredential", + "is_object": true, + "required_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_credential_name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_credential_name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccountsUpdateStorageCredentialResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "credential_info", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "UpdateAccountsStorageCredential", + "is_object": true + } + }, + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "skip_validation", + "description": "Optional. Supplying true to this argument skips validation of the updated set of credentials.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "storage_credential_name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "metastore_id", + "description": "Unity Catalog metastore ID", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_credential_name", + "description": "Name of the storage credential.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "supervisoragents.SupervisorAgents", + "name": "SupervisorAgents", + "description": "Manage legacy Supervisor Agents and related resources.", + "package": { + "name": "supervisoragents" + }, + "docs_group": "agentbricks", + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "list": { + "request": { + "pascal_name": "ListExamplesRequest" + } + }, + "methods": [ + { + "name": "CreateExample", + "description": "Creates an example for a Supervisor Agent.", + "summary": "Create an example for a Supervisor Agent.", + "path": "/api/2.1/{parent=supervisor-agents/*}/examples", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateExampleRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "Parent resource where this example will be created.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "example", + "description": "The example to create under the parent Supervisor Agent.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Parent resource where this example will be created.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "example", + "description": "The example to create under the parent Supervisor Agent.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "example", + "description": "The example to create under the parent Supervisor Agent.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_request_body_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + } + }, + "response": { + "pascal_name": "Example", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_request_body_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + }, + "all_fields": [ + { + "name": "example", + "description": "The example to create under the parent Supervisor Agent.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_request_body_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + } + }, + { + "name": "parent", + "description": "Parent resource where this example will be created.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "example_id", + "description": "The universally unique identifier (UUID) of the example.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "name", + "description": "Full resource name:\nsupervisor-agents/{supervisor_agent_id}/examples/{example_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Parent resource where this example will be created.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + }, + { + "name": "CreateSupervisorAgent", + "description": "Creates a new Supervisor Agent.", + "summary": "Create a Supervisor Agent.", + "path": "/api/2.1/supervisor-agents", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateSupervisorAgentRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "supervisor_agent", + "description": "The Supervisor Agent to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SupervisorAgent", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "supervisor_agent", + "description": "The Supervisor Agent to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SupervisorAgent", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "supervisor_agent", + "description": "The Supervisor Agent to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SupervisorAgent", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "SupervisorAgent", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "supervisor_agent", + "description": "The Supervisor Agent to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SupervisorAgent", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "create_time", + "description": "Creation timestamp.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "creator", + "description": "The creator of the Supervisor Agent.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_name", + "description": "The name of the supervisor agent's serving endpoint.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "experiment_id", + "description": "The MLflow experiment ID.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Deprecated: Use supervisor_agent_id instead.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instructions", + "description": "Optional natural-language instructions for the supervisor agent.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The resource name of the SupervisorAgent.\nFormat: supervisor-agents/{supervisor_agent_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "supervisor_agent_id", + "description": "The universally unique identifier (UUID) of the Supervisor Agent.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateTool", + "description": "Creates a Tool under a Supervisor Agent. Specify one of \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"app\", \"volume\", \"dashboard\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\" in the request body. The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "summary": "Create a Tool.", + "path": "/api/2.1/{parent=supervisor-agents/*}/tools", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateToolRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "parent", + "description": "Parent resource where this tool will be created.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tool", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Tool", + "is_object": true + } + }, + { + "name": "tool_id", + "description": "The ID to use for the tool, which will become the final component of\nthe tool's resource name.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Parent resource where this tool will be created.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tool_id", + "description": "The ID to use for the tool, which will become the final component of\nthe tool's resource name.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tool", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Tool", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "tool", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Tool", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Tool", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "parent", + "description": "Parent resource where this tool will be created.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tool", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Tool", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "tool_id", + "description": "The ID to use for the tool, which will become the final component of\nthe tool's resource name.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "app", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "App", + "is_object": true + } + }, + { + "name": "description", + "description": "Description of what this tool does (user-facing).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "genie_space", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GenieSpace", + "is_object": true + } + }, + { + "name": "id", + "description": "Deprecated: Use tool_id instead.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "knowledge_assistant", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "KnowledgeAssistant", + "is_object": true + } + }, + { + "name": "name", + "description": "Full resource name:\nsupervisor-agents/{supervisor_agent_id}/tools/{tool_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tool_id", + "description": "User specified id of the Tool.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "uc_connection", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "UcConnection", + "is_object": true + } + }, + { + "name": "uc_function", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "UcFunction", + "is_object": true + } + }, + { + "name": "volume", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Volume", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Parent resource where this tool will be created.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tool_id", + "description": "The ID to use for the tool, which will become the final component of\nthe tool's resource name.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteExample", + "description": "Deletes an example from a Supervisor Agent.", + "summary": "Delete an example from a Supervisor Agent.", + "path": "/api/2.1/{name=supervisor-agents/*/examples/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteExampleRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the example to delete.\nFormat: supervisor-agents/{supervisor_agent_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the example to delete.\nFormat: supervisor-agents/{supervisor_agent_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the example to delete.\nFormat: supervisor-agents/{supervisor_agent_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the example to delete.\nFormat: supervisor-agents/{supervisor_agent_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteSupervisorAgent", + "description": "Deletes a Supervisor Agent.", + "summary": "Delete a Supervisor Agent.", + "path": "/api/2.1/{name=supervisor-agents/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteSupervisorAgentRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the Supervisor Agent.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the Supervisor Agent.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the Supervisor Agent.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the Supervisor Agent.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteTool", + "description": "Deletes a Tool.", + "summary": "Delete a Tool.", + "path": "/api/2.1/{name=supervisor-agents/*/tools/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteToolRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the Tool.\nFormat: supervisor-agents/{supervisor_agent_id}/tools/{tool_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the Tool.\nFormat: supervisor-agents/{supervisor_agent_id}/tools/{tool_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the Tool.\nFormat: supervisor-agents/{supervisor_agent_id}/tools/{tool_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the Tool.\nFormat: supervisor-agents/{supervisor_agent_id}/tools/{tool_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetExample", + "description": "Gets an example from a Supervisor Agent.", + "summary": "Get an example from a Supervisor Agent.", + "path": "/api/2.1/{name=supervisor-agents/*/examples/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetExampleRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the example.\nFormat: supervisor-agents/{supervisor_agent_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the example.\nFormat: supervisor-agents/{supervisor_agent_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Example", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_request_body_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the example.\nFormat: supervisor-agents/{supervisor_agent_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the example.\nFormat: supervisor-agents/{supervisor_agent_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get supervisor agent permission levels.", + "path": "/api/2.0/permissions/supervisor-agents/{supervisor_agent_id}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetSupervisorAgentPermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetSupervisorAgentPermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of a supervisor agent. Supervisor agents can inherit permissions from their root object.", + "summary": "Get supervisor agent permissions.", + "path": "/api/2.0/permissions/supervisor-agents/{supervisor_agent_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetSupervisorAgentPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SupervisorAgentPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetSupervisorAgent", + "description": "Gets a Supervisor Agent.", + "summary": "Get a Supervisor Agent.", + "path": "/api/2.1/{name=supervisor-agents/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetSupervisorAgentRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the Supervisor Agent.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the Supervisor Agent.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SupervisorAgent", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the Supervisor Agent.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the Supervisor Agent.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetTool", + "description": "Gets a Tool.", + "summary": "Get a Tool.", + "path": "/api/2.1/{name=supervisor-agents/*/tools/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetToolRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the Tool.\nFormat: supervisor-agents/{supervisor_agent_id}/tools/{tool_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the Tool.\nFormat: supervisor-agents/{supervisor_agent_id}/tools/{tool_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Tool", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the Tool.\nFormat: supervisor-agents/{supervisor_agent_id}/tools/{tool_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the Tool.\nFormat: supervisor-agents/{supervisor_agent_id}/tools/{tool_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListExamples", + "description": "Lists examples under a Supervisor Agent.", + "summary": "List examples for a Supervisor Agent.", + "path": "/api/2.1/{parent=supervisor-agents/*}/examples", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListExamplesRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListExamplesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of examples to return.\nIf unspecified, at most 100 examples will be returned.\nThe maximum value is 100; values above 100 will be coerced to 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListExamples` call.\nProvide this to retrieve the subsequent page.\nIf unspecified, the first page will be returned.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListExamples` call.\nProvide this to retrieve the subsequent page.\nIf unspecified, the first page will be returned.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListSupervisorAgents", + "description": "Lists Supervisor Agents.", + "summary": "List Supervisor Agents.", + "path": "/api/2.1/supervisor-agents", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListSupervisorAgentsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListSupervisorAgentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of supervisor agents to return.\nIf unspecified, at most 100 supervisor agents will be returned.\nThe maximum value is 100; values above 100 will be coerced to 100.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListSupervisorAgents` call.\nProvide this to retrieve the subsequent page.\nIf unspecified, the first page will be returned.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListSupervisorAgents` call.\nProvide this to retrieve the subsequent page.\nIf unspecified, the first page will be returned.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListTools", + "description": "Lists Tools under a Supervisor Agent.", + "summary": "List Tools.", + "path": "/api/2.1/{parent=supervisor-agents/*}/tools", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListToolsRequest", + "is_object": true, + "required_fields": [ + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListToolsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "parent", + "description": "Parent resource to list from.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set supervisor agent permissions.", + "path": "/api/2.0/permissions/supervisor-agents/{supervisor_agent_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "SupervisorAgentPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SupervisorAgentPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "SupervisorAgentAccessControlRequestList", + "array_value": { + "pascal_name": "SupervisorAgentAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateExample", + "description": "Updates an example in a Supervisor Agent.", + "summary": "Update an example in a Supervisor Agent.", + "path": "/api/2.1/{name=supervisor-agents/*/examples/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateExampleRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the example to update.\nFormat: supervisor-agents/{supervisor_agent_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "example", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the example.\nAllowed values: `question`, `guidelines`.\nExamples:\n- `question`\n- `question,guidelines`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the example to update.\nFormat: supervisor-agents/{supervisor_agent_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the example.\nAllowed values: `question`, `guidelines`.\nExamples:\n- `question`\n- `question,guidelines`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "example", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "example", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_request_body_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + } + }, + "response": { + "pascal_name": "Example", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_request_body_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + }, + "all_fields": [ + { + "name": "example", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Example", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_request_body_fields": [ + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + } + }, + { + "name": "name", + "description": "The resource name of the example to update.\nFormat: supervisor-agents/{supervisor_agent_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the example.\nAllowed values: `question`, `guidelines`.\nExamples:\n- `question`\n- `question,guidelines`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "example_id", + "description": "The universally unique identifier (UUID) of the example.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "name", + "description": "Full resource name:\nsupervisor-agents/{supervisor_agent_id}/examples/{example_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the example to update.\nFormat: supervisor-agents/{supervisor_agent_id}/examples/{example_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Comma-delimited list of fields to update on the example.\nAllowed values: `question`, `guidelines`.\nExamples:\n- `question`\n- `question,guidelines`", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "question", + "description": "The example question.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "guidelines", + "description": "Guidelines for answering the question.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on a supervisor agent. Supervisor agents can inherit permissions from their root object.", + "summary": "Update supervisor agent permissions.", + "path": "/api/2.0/permissions/supervisor-agents/{supervisor_agent_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "SupervisorAgentPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SupervisorAgentPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "SupervisorAgentAccessControlRequestList", + "array_value": { + "pascal_name": "SupervisorAgentAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "supervisor_agent_id", + "description": "The supervisor agent for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateSupervisorAgent", + "description": "Updates a Supervisor Agent. The fields that are required depend on the paths specified in `update_mask`.\nOnly fields included in the mask will be updated.", + "summary": "Update a Supervisor Agent.", + "path": "/api/2.1/{name=supervisor-agents/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateSupervisorAgentRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the SupervisorAgent.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "supervisor_agent", + "description": "The SupervisorAgent to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SupervisorAgent", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Field mask for fields to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the SupervisorAgent.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Field mask for fields to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "supervisor_agent", + "description": "The SupervisorAgent to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SupervisorAgent", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "supervisor_agent", + "description": "The SupervisorAgent to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SupervisorAgent", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "SupervisorAgent", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "The resource name of the SupervisorAgent.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "supervisor_agent", + "description": "The SupervisorAgent to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "SupervisorAgent", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "update_mask", + "description": "Field mask for fields to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "create_time", + "description": "Creation timestamp.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "is_timestamp": true + } + }, + { + "name": "creator", + "description": "The creator of the Supervisor Agent.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "description": "Description of what this agent can do (user-facing).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_name", + "description": "The name of the supervisor agent's serving endpoint.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "experiment_id", + "description": "The MLflow experiment ID.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Deprecated: Use supervisor_agent_id instead.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instructions", + "description": "Optional natural-language instructions for the supervisor agent.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The resource name of the SupervisorAgent.\nFormat: supervisor-agents/{supervisor_agent_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "supervisor_agent_id", + "description": "The universally unique identifier (UUID) of the Supervisor Agent.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the SupervisorAgent.\nFormat: supervisor-agents/{supervisor_agent_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Field mask for fields to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "display_name", + "description": "The display name of the Supervisor Agent, unique at workspace level.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateTool", + "description": "Updates a Tool. Only the `description` field can be updated.\nTo change immutable fields such as tool type, spec, or tool ID, delete the tool and recreate it.", + "summary": "Update a Tool.", + "path": "/api/2.1/{name=supervisor-agents/*/tools/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateToolRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Full resource name:\nsupervisor-agents/{supervisor_agent_id}/tools/{tool_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tool", + "description": "The Tool to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Tool", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Field mask for fields to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Full resource name:\nsupervisor-agents/{supervisor_agent_id}/tools/{tool_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Field mask for fields to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tool", + "description": "The Tool to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Tool", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "tool", + "description": "The Tool to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Tool", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "Tool", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Full resource name:\nsupervisor-agents/{supervisor_agent_id}/tools/{tool_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tool", + "description": "The Tool to update.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Tool", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "update_mask", + "description": "Field mask for fields to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "app", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "App", + "is_object": true + } + }, + { + "name": "description", + "description": "Description of what this tool does (user-facing).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "genie_space", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GenieSpace", + "is_object": true + } + }, + { + "name": "id", + "description": "Deprecated: Use tool_id instead.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "knowledge_assistant", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "KnowledgeAssistant", + "is_object": true + } + }, + { + "name": "name", + "description": "Full resource name:\nsupervisor-agents/{supervisor_agent_id}/tools/{tool_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tool_id", + "description": "User specified id of the Tool.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "uc_connection", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "UcConnection", + "is_object": true + } + }, + { + "name": "uc_function", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "UcFunction", + "is_object": true + } + }, + { + "name": "volume", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Volume", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Full resource name:\nsupervisor-agents/{supervisor_agent_id}/tools/{tool_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Field mask for fields to be updated.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "tool_type", + "description": "Tool type. Must be one of: \"genie_space\", \"knowledge_assistant\", \"uc_function\", \"uc_connection\", \"uc_mcp\", \"app\", \"volume\", \"dashboard\", \"serving_endpoint\", \"table\", \"vector_search_index\", \"catalog\", \"schema\", \"supervisor_agent\", \"databricks_web_search\", \"skill\". The legacy values \"lakeview_dashboard\", \"uc_table\", and \"web_search\" are also accepted and remain equivalent to \"dashboard\", \"table\", and \"databricks_web_search\" respectively. The \"databricks_web_search\" tool_type maps to the `web_search` spec field.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.SystemSchemas", + "name": "SystemSchemas", + "description": "A system schema is a schema that lives within the system catalog. A system schema may contain\ninformation about customer usage of Unity Catalog such as audit logs, billing logs,\nand lineage information.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "request": { + "pascal_name": "ListSystemSchemasRequest" + } + }, + "methods": [ + { + "name": "Disable", + "description": "Disables the system schema and removes it from the system catalog.\nThe caller must be an account admin or a metastore admin.", + "summary": "Disable a system schema.", + "path": "/api/2.1/unity-catalog/metastores/{metastore_id}/systemschemas/{schema_name}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DisableRequest", + "is_object": true, + "required_fields": [ + { + "name": "metastore_id", + "description": "The metastore ID under which the system schema lives.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Full name of the system schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "metastore_id", + "description": "The metastore ID under which the system schema lives.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Full name of the system schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DisableResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "metastore_id", + "description": "The metastore ID under which the system schema lives.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Full name of the system schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "metastore_id", + "description": "The metastore ID under which the system schema lives.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Full name of the system schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Enable", + "description": "Enables the system schema and adds it to the system catalog.\nThe caller must be an account admin or a metastore admin.", + "summary": "Enable a system schema.", + "path": "/api/2.1/unity-catalog/metastores/{metastore_id}/systemschemas/{schema_name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "EnableRequest", + "is_object": true, + "required_fields": [ + { + "name": "metastore_id", + "description": "The metastore ID under which the system schema lives.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Full name of the system schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "metastore_id", + "description": "The metastore ID under which the system schema lives.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Full name of the system schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EnableResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "catalog_name", + "description": "the catalog for which the system schema is to enabled in", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "metastore_id", + "description": "The metastore ID under which the system schema lives.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Full name of the system schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "metastore_id", + "description": "The metastore ID under which the system schema lives.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Full name of the system schema.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets an array of system schemas for a metastore.\nThe caller must be an account admin or a metastore admin.\n\nNOTE: we recommend using max_results=0 to use the paginated version of this API. Unpaginated calls will be deprecated soon.\n\nPAGINATION BEHAVIOR: When using pagination (max_results \u003e= 0), a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List system schemas.", + "path": "/api/2.1/unity-catalog/metastores/{metastore_id}/systemschemas", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListSystemSchemasRequest", + "is_object": true, + "required_fields": [ + { + "name": "metastore_id", + "description": "The ID for the metastore in which the system schema resides.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "metastore_id", + "description": "The ID for the metastore in which the system schema resides.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListSystemSchemasResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "max_results", + "description": "Maximum number of schemas to return.\n- When set to 0, the page length is set to a server configured value (recommended);\n- When set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- When set to a value less than 0, an invalid parameter error is returned;\n- If not set, all the schemas are returned (not recommended).", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "metastore_id", + "description": "The ID for the metastore in which the system schema resides.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "metastore_id", + "description": "The ID for the metastore in which the system schema resides.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + }, + "max_results": { + "name": "max_results", + "description": "Maximum number of schemas to return.\n- When set to 0, the page length is set to a server configured value (recommended);\n- When set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- When set to a value less than 0, an invalid parameter error is returned;\n- If not set, all the schemas are returned (not recommended).", + "is_query": true, + "entity": { + "is_int": true + } + } + } + } + ] + }, + { + "id": "catalog.TableConstraints", + "name": "TableConstraints", + "description": "Primary key and foreign key constraints encode relationships between fields in tables.\n\nPrimary and foreign keys are informational only and are not enforced. Foreign keys must reference a primary key in another table.\nThis primary key is the parent constraint of the foreign key, and the table this primary key is on is the parent table of the foreign key.\nSimilarly, the foreign key is the child constraint of its referenced primary key. The table of the foreign key is the child table of the primary key.\n\nYou can declare primary keys and foreign keys as part of the table specification during table creation.\nYou can also add or drop constraints on existing tables.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Create", + "description": "Creates a new table constraint.\n\nFor the table constraint creation to succeed, the user must satisfy both of these conditions:\n- the user must have the **USE_CATALOG** privilege on the table's parent catalog,\nthe **USE_SCHEMA** privilege on the table's parent schema, and be the owner of the table.\n- if the new constraint is a __ForeignKeyConstraint__,\nthe user must have the **USE_CATALOG** privilege on the referenced parent table's catalog,\nthe **USE_SCHEMA** privilege on the referenced parent table's schema,\nand be the owner of the referenced parent table.", + "summary": "Create a table constraint.", + "path": "/api/2.1/unity-catalog/constraints", + "can_use_json": true, + "must_use_json": true, + "is_crud_create": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateTableConstraint", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "full_name_arg", + "description": "The full name of the table referenced by the constraint.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "constraint", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TableConstraint", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "full_name_arg", + "description": "The full name of the table referenced by the constraint.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "constraint", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TableConstraint", + "is_object": true + } + } + ] + }, + "response": { + "pascal_name": "TableConstraint", + "is_object": true + }, + "all_fields": [ + { + "name": "constraint", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TableConstraint", + "is_object": true + } + }, + { + "name": "full_name_arg", + "description": "The full name of the table referenced by the constraint.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a table constraint.\n\nFor the table constraint deletion to succeed, the user must satisfy both of these conditions:\n- the user must have the **USE_CATALOG** privilege on the table's parent catalog,\nthe **USE_SCHEMA** privilege on the table's parent schema, and be the owner of the table.\n- if __cascade__ argument is **true**, the user must have the following permissions on all of the child tables:\nthe **USE_CATALOG** privilege on the table's catalog,\nthe **USE_SCHEMA** privilege on the table's schema,\nand be the owner of the table.", + "summary": "Delete a table constraint.", + "path": "/api/2.1/unity-catalog/constraints/{full_name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteTableConstraintRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "Full name of the table referenced by the constraint.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "constraint_name", + "description": "The name of the constraint to delete.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "cascade", + "description": "If true, try deleting all child constraints of the current constraint.\nIf false, reject this operation if the current constraint has any child constraints.", + "required": true, + "is_query": true, + "entity": { + "is_bool": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "Full name of the table referenced by the constraint.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "constraint_name", + "description": "The name of the constraint to delete.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "cascade", + "description": "If true, try deleting all child constraints of the current constraint.\nIf false, reject this operation if the current constraint has any child constraints.", + "required": true, + "is_query": true, + "entity": { + "is_bool": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteTableConstraintResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "cascade", + "description": "If true, try deleting all child constraints of the current constraint.\nIf false, reject this operation if the current constraint has any child constraints.", + "required": true, + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "constraint_name", + "description": "The name of the constraint to delete.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "description": "Full name of the table referenced by the constraint.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "Full name of the table referenced by the constraint.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "constraint_name", + "description": "The name of the constraint to delete.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "cascade", + "description": "If true, try deleting all child constraints of the current constraint.\nIf false, reject this operation if the current constraint has any child constraints.", + "required": true, + "is_query": true, + "entity": { + "is_bool": true + } + } + ] + } + ] + }, + { + "id": "catalog.Tables", + "name": "Tables", + "description": "A table resides in the third layer of Unity Catalog’s three-level namespace. It contains\nrows of data. To create a table, users must have CREATE_TABLE and USE_SCHEMA permissions on the schema,\nand they must have the USE_CATALOG permission on its parent catalog. To query a table, users must\nhave the SELECT permission on the table, and they must have the USE_CATALOG permission on its\nparent catalog and the USE_SCHEMA permission on its parent schema.\n\nA table can be managed or external.\nFrom an API perspective, a __VIEW__ is a particular kind of table (rather than a managed or external table).", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListTablesRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new table in the specified catalog and schema.\n\nTo create an external delta table, the caller must have the **EXTERNAL_USE_SCHEMA** privilege on the parent schema\nand the **EXTERNAL_USE_LOCATION** privilege on the external location. These privileges must always be granted explicitly,\nand cannot be inherited through ownership or **ALL_PRIVILEGES**.\n\nStandard UC permissions needed to create tables still apply: **USE_CATALOG** on the parent catalog (or ownership of\nthe parent catalog), **CREATE_TABLE** and **USE_SCHEMA** on the parent schema (or ownership of the parent schema),\nand **CREATE_EXTERNAL_TABLE** on external location.\n\nThe **columns** field needs to be in a Spark compatible format, so we recommend you use Spark to create these tables.\nThe API itself does not validate the correctness of the column spec. If the spec is not Spark compatible,\nthe tables may not be readable by Databricks Runtime.\n\nNOTE: The Create Table API for external clients only supports creating **external delta tables**. The values shown\nin the respective enums are all values supported by Databricks, however for this specific Create Table API,\nonly **table_type** **EXTERNAL** and **data_source_format** **DELTA** are supported. Additionally, column masks\nare not supported when creating tables through this API.", + "summary": "Create a table.", + "path": "/api/2.1/unity-catalog/tables", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateTableRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of table, relative to parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "Name of parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Name of parent schema relative to its parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TableType", + "enum": [ + { + "content": "EXTERNAL" + }, + { + "content": "EXTERNAL_SHALLOW_CLONE" + }, + { + "content": "FOREIGN" + }, + { + "content": "MANAGED" + }, + { + "content": "MANAGED_SHALLOW_CLONE" + }, + { + "content": "MATERIALIZED_VIEW" + }, + { + "content": "METRIC_VIEW" + }, + { + "content": "STREAMING_TABLE" + }, + { + "content": "VIEW" + } + ] + } + }, + { + "name": "data_source_format", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSourceFormat", + "enum": [ + { + "content": "AVRO" + }, + { + "content": "BIGQUERY_FORMAT" + }, + { + "content": "CSV" + }, + { + "content": "DATABRICKS_FORMAT" + }, + { + "content": "DATABRICKS_ROW_STORE_FORMAT" + }, + { + "content": "DELTA" + }, + { + "content": "DELTASHARING" + }, + { + "content": "DELTA_UNIFORM_HUDI" + }, + { + "content": "DELTA_UNIFORM_ICEBERG" + }, + { + "content": "HIVE" + }, + { + "content": "ICEBERG" + }, + { + "content": "JSON" + }, + { + "content": "MONGODB_FORMAT" + }, + { + "content": "MYSQL_FORMAT" + }, + { + "content": "NETSUITE_FORMAT" + }, + { + "content": "ORACLE_FORMAT" + }, + { + "content": "ORC" + }, + { + "content": "PARQUET" + }, + { + "content": "POSTGRESQL_FORMAT" + }, + { + "content": "REDSHIFT_FORMAT" + }, + { + "content": "SALESFORCE_DATA_CLOUD_FORMAT" + }, + { + "content": "SALESFORCE_FORMAT" + }, + { + "content": "SNOWFLAKE_FORMAT" + }, + { + "content": "SQLDW_FORMAT" + }, + { + "content": "SQLSERVER_FORMAT" + }, + { + "content": "TERADATA_FORMAT" + }, + { + "content": "TEXT" + }, + { + "content": "UNITY_CATALOG" + }, + { + "content": "VECTOR_INDEX_FORMAT" + }, + { + "content": "WORKDAY_RAAS_FORMAT" + } + ] + } + }, + { + "name": "storage_location", + "description": "Storage root URL for table (for **MANAGED**, **EXTERNAL** tables).", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of table, relative to parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "Name of parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Name of parent schema relative to its parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TableType", + "enum": [ + { + "content": "EXTERNAL" + }, + { + "content": "EXTERNAL_SHALLOW_CLONE" + }, + { + "content": "FOREIGN" + }, + { + "content": "MANAGED" + }, + { + "content": "MANAGED_SHALLOW_CLONE" + }, + { + "content": "MATERIALIZED_VIEW" + }, + { + "content": "METRIC_VIEW" + }, + { + "content": "STREAMING_TABLE" + }, + { + "content": "VIEW" + } + ] + } + }, + { + "name": "data_source_format", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSourceFormat", + "enum": [ + { + "content": "AVRO" + }, + { + "content": "BIGQUERY_FORMAT" + }, + { + "content": "CSV" + }, + { + "content": "DATABRICKS_FORMAT" + }, + { + "content": "DATABRICKS_ROW_STORE_FORMAT" + }, + { + "content": "DELTA" + }, + { + "content": "DELTASHARING" + }, + { + "content": "DELTA_UNIFORM_HUDI" + }, + { + "content": "DELTA_UNIFORM_ICEBERG" + }, + { + "content": "HIVE" + }, + { + "content": "ICEBERG" + }, + { + "content": "JSON" + }, + { + "content": "MONGODB_FORMAT" + }, + { + "content": "MYSQL_FORMAT" + }, + { + "content": "NETSUITE_FORMAT" + }, + { + "content": "ORACLE_FORMAT" + }, + { + "content": "ORC" + }, + { + "content": "PARQUET" + }, + { + "content": "POSTGRESQL_FORMAT" + }, + { + "content": "REDSHIFT_FORMAT" + }, + { + "content": "SALESFORCE_DATA_CLOUD_FORMAT" + }, + { + "content": "SALESFORCE_FORMAT" + }, + { + "content": "SNOWFLAKE_FORMAT" + }, + { + "content": "SQLDW_FORMAT" + }, + { + "content": "SQLSERVER_FORMAT" + }, + { + "content": "TERADATA_FORMAT" + }, + { + "content": "TEXT" + }, + { + "content": "UNITY_CATALOG" + }, + { + "content": "VECTOR_INDEX_FORMAT" + }, + { + "content": "WORKDAY_RAAS_FORMAT" + } + ] + } + }, + { + "name": "storage_location", + "description": "Storage root URL for table (for **MANAGED**, **EXTERNAL** tables).", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "TableInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "catalog_name", + "description": "Name of parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "columns", + "description": "The array of __ColumnInfo__ definitions of the table's columns.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ColumnInfoList", + "array_value": { + "pascal_name": "ColumnInfo", + "is_object": true + } + } + }, + { + "name": "data_source_format", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSourceFormat", + "enum": [ + { + "content": "AVRO" + }, + { + "content": "BIGQUERY_FORMAT" + }, + { + "content": "CSV" + }, + { + "content": "DATABRICKS_FORMAT" + }, + { + "content": "DATABRICKS_ROW_STORE_FORMAT" + }, + { + "content": "DELTA" + }, + { + "content": "DELTASHARING" + }, + { + "content": "DELTA_UNIFORM_HUDI" + }, + { + "content": "DELTA_UNIFORM_ICEBERG" + }, + { + "content": "HIVE" + }, + { + "content": "ICEBERG" + }, + { + "content": "JSON" + }, + { + "content": "MONGODB_FORMAT" + }, + { + "content": "MYSQL_FORMAT" + }, + { + "content": "NETSUITE_FORMAT" + }, + { + "content": "ORACLE_FORMAT" + }, + { + "content": "ORC" + }, + { + "content": "PARQUET" + }, + { + "content": "POSTGRESQL_FORMAT" + }, + { + "content": "REDSHIFT_FORMAT" + }, + { + "content": "SALESFORCE_DATA_CLOUD_FORMAT" + }, + { + "content": "SALESFORCE_FORMAT" + }, + { + "content": "SNOWFLAKE_FORMAT" + }, + { + "content": "SQLDW_FORMAT" + }, + { + "content": "SQLSERVER_FORMAT" + }, + { + "content": "TERADATA_FORMAT" + }, + { + "content": "TEXT" + }, + { + "content": "UNITY_CATALOG" + }, + { + "content": "VECTOR_INDEX_FORMAT" + }, + { + "content": "WORKDAY_RAAS_FORMAT" + } + ] + } + }, + { + "name": "name", + "description": "Name of table, relative to parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "properties", + "description": "A map of key-value properties attached to the securable.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "schema_name", + "description": "Name of parent schema relative to its parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_location", + "description": "Storage root URL for table (for **MANAGED**, **EXTERNAL** tables).", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TableType", + "enum": [ + { + "content": "EXTERNAL" + }, + { + "content": "EXTERNAL_SHALLOW_CLONE" + }, + { + "content": "FOREIGN" + }, + { + "content": "MANAGED" + }, + { + "content": "MANAGED_SHALLOW_CLONE" + }, + { + "content": "MATERIALIZED_VIEW" + }, + { + "content": "METRIC_VIEW" + }, + { + "content": "STREAMING_TABLE" + }, + { + "content": "VIEW" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of table, relative to parent schema.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "catalog_name", + "description": "Name of parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Name of parent schema relative to its parent catalog.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TableType", + "enum": [ + { + "content": "EXTERNAL" + }, + { + "content": "EXTERNAL_SHALLOW_CLONE" + }, + { + "content": "FOREIGN" + }, + { + "content": "MANAGED" + }, + { + "content": "MANAGED_SHALLOW_CLONE" + }, + { + "content": "MATERIALIZED_VIEW" + }, + { + "content": "METRIC_VIEW" + }, + { + "content": "STREAMING_TABLE" + }, + { + "content": "VIEW" + } + ] + } + }, + { + "name": "data_source_format", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DataSourceFormat", + "enum": [ + { + "content": "AVRO" + }, + { + "content": "BIGQUERY_FORMAT" + }, + { + "content": "CSV" + }, + { + "content": "DATABRICKS_FORMAT" + }, + { + "content": "DATABRICKS_ROW_STORE_FORMAT" + }, + { + "content": "DELTA" + }, + { + "content": "DELTASHARING" + }, + { + "content": "DELTA_UNIFORM_HUDI" + }, + { + "content": "DELTA_UNIFORM_ICEBERG" + }, + { + "content": "HIVE" + }, + { + "content": "ICEBERG" + }, + { + "content": "JSON" + }, + { + "content": "MONGODB_FORMAT" + }, + { + "content": "MYSQL_FORMAT" + }, + { + "content": "NETSUITE_FORMAT" + }, + { + "content": "ORACLE_FORMAT" + }, + { + "content": "ORC" + }, + { + "content": "PARQUET" + }, + { + "content": "POSTGRESQL_FORMAT" + }, + { + "content": "REDSHIFT_FORMAT" + }, + { + "content": "SALESFORCE_DATA_CLOUD_FORMAT" + }, + { + "content": "SALESFORCE_FORMAT" + }, + { + "content": "SNOWFLAKE_FORMAT" + }, + { + "content": "SQLDW_FORMAT" + }, + { + "content": "SQLSERVER_FORMAT" + }, + { + "content": "TERADATA_FORMAT" + }, + { + "content": "TEXT" + }, + { + "content": "UNITY_CATALOG" + }, + { + "content": "VECTOR_INDEX_FORMAT" + }, + { + "content": "WORKDAY_RAAS_FORMAT" + } + ] + } + }, + { + "name": "storage_location", + "description": "Storage root URL for table (for **MANAGED**, **EXTERNAL** tables).", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a table from the specified parent catalog and schema.\nThe caller must be the owner of the parent catalog, have the **USE_CATALOG** privilege on the parent catalog and be the owner of the parent schema,\nor be the owner of the table and have the **USE_CATALOG** privilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema.", + "summary": "Delete a table.", + "path": "/api/2.1/unity-catalog/tables/{full_name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteTableRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Exists", + "description": "Gets if a table exists in the metastore for a specific catalog and schema.\nThe caller must satisfy one of the following requirements:\n* Be a metastore admin\n* Be the owner of the parent catalog\n* Be the owner of the parent schema and have the **USE_CATALOG** privilege on the parent catalog\n* Have the **USE_CATALOG** privilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema,\nand either be the table owner or have the **SELECT** privilege on the table.\n* Have **BROWSE** privilege on the parent catalog\n* Have **BROWSE** privilege on the parent schema", + "summary": "Get boolean reflecting if table exists.", + "path": "/api/2.1/unity-catalog/tables/{full_name}/exists", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ExistsRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "TableExistsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a table from the metastore for a specific catalog and schema.\nThe caller must satisfy one of the following requirements:\n* Be a metastore admin\n* Be the owner of the parent catalog\n* Be the owner of the parent schema and have the **USE_CATALOG** privilege on the parent catalog\n* Have the **USE_CATALOG** privilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema,\nand either be the table owner or have the **SELECT** privilege on the table.", + "summary": "Get a table.", + "path": "/api/2.1/unity-catalog/tables/{full_name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetTableRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "TableInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "include_browse", + "description": "Whether to include tables in the response for which the principal can only access selective metadata for.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "include_delta_metadata", + "description": "Whether delta metadata should be included in the response.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "include_manifest_capabilities", + "description": "Whether to include a manifest containing table capabilities in the response.", + "is_query": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets an array of all tables for the current metastore under the parent catalog and schema.\nThe caller must be a metastore admin or an owner of (or have the **SELECT** privilege on) the table.\nFor the latter case, the caller must also be the owner or have the **USE_CATALOG** privilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema.\nThere is no guarantee of a specific ordering of the elements in the array.\n\nNOTE: **view_dependencies** and **table_constraints** are not returned by ListTables queries.\n\nNOTE: we recommend using max_results=0 to use the paginated version of this API. Unpaginated calls will be deprecated soon.\n\nPAGINATION BEHAVIOR: When using pagination (max_results \u003e= 0), a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List tables.", + "path": "/api/2.1/unity-catalog/tables", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListTablesRequest", + "is_object": true, + "required_fields": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for tables of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Parent schema of tables.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for tables of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Parent schema of tables.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListTablesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for tables of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "include_browse", + "description": "Whether to include tables in the response for which the principal can only access selective metadata for.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "include_manifest_capabilities", + "description": "Whether to include a manifest containing table capabilities in the response.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "max_results", + "description": "Maximum number of tables to return.\nIf not set, all the tables are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "omit_columns", + "description": "Whether to omit the columns of the table from the response or not.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "omit_properties", + "description": "Whether to omit the properties of the table from the response or not.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "omit_username", + "description": "Whether to omit the username of the table (e.g. owner, updated_by, created_by) from the response or not.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "page_token", + "description": "Opaque token to send for the next page of results (pagination).", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Parent schema of tables.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for tables of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "Parent schema of tables.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque token to send for the next page of results (pagination).", + "is_query": true, + "entity": { + "is_string": true + } + } + }, + "max_results": { + "name": "max_results", + "description": "Maximum number of tables to return.\nIf not set, all the tables are returned (not recommended).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- when set to 0, the page length is set to a server configured value (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "is_query": true, + "entity": { + "is_int": true + } + } + } + }, + { + "name": "ListSummaries", + "description": "Gets an array of summaries for tables for a schema and catalog within the metastore. The table summaries returned are either:\n\n* summaries for tables (within the current metastore and parent catalog and schema), when the user is a metastore admin, or:\n* summaries for tables and schemas (within the current metastore and parent catalog)\nfor which the user has ownership or the **SELECT** privilege on the table and ownership or **USE_SCHEMA** privilege on the schema,\nprovided that the user also has ownership or the **USE_CATALOG** privilege on the parent catalog.\n\nThere is no guarantee of a specific ordering of the elements in the array.\n\nPAGINATION BEHAVIOR: The API is by default paginated, a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List table summaries.", + "path": "/api/2.1/unity-catalog/table-summaries", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListSummariesRequest", + "is_object": true, + "required_fields": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for tables of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for tables of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListTableSummariesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for tables of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "include_manifest_capabilities", + "description": "Whether to include a manifest containing table capabilities in the response.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "max_results", + "description": "Maximum number of summaries for tables to return.\nIf not set, the page length is set to a server configured value (10000, as of 1/5/2024).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value (10000, as of 1/5/2024);\n- when set to 0, the page length is set to a server configured value (10000, as of 1/5/2024) (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name_pattern", + "description": "A sql LIKE pattern (% and _) for schema names.\nAll schemas will be returned if not set or empty.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "table_name_pattern", + "description": "A sql LIKE pattern (% and _) for table names.\nAll tables will be returned if not set or empty.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "catalog_name", + "description": "Name of parent catalog for tables of interest.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Update", + "description": "Change the owner of the table.\nThe caller must be the owner of the parent catalog, have the **USE_CATALOG** privilege on the parent catalog and be the owner of the parent schema,\nor be the owner of the table and have the **USE_CATALOG** privilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema.", + "summary": "Update a table owner.", + "path": "/api/2.1/unity-catalog/tables/{full_name}", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateTableRequest", + "is_object": true, + "required_fields": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "Username of current owner of table.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "full_name", + "description": "Full name of the table.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "tags.TagPolicies", + "name": "TagPolicies", + "description": "The Tag Policy API allows you to manage policies for governed tags in Databricks. For Terraform usage, see the [Tag Policy Terraform documentation](https://registry.terraform.io/providers/databricks/databricks/latest/docs/resources/tag_policy). Permissions for tag policies can be managed using the [Account Access Control Proxy API](https://docs.databricks.com/api/workspace/accountaccesscontrolproxy).", + "package": { + "name": "tags" + }, + "docs_group": "tags", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListTagPoliciesRequest" + } + }, + "methods": [ + { + "name": "CreateTagPolicy", + "description": "Creates a new tag policy, making the associated tag key governed. For Terraform usage, see the [Tag Policy Terraform documentation](https://registry.terraform.io/providers/databricks/databricks/latest/docs/resources/tag_policy). To manage permissions for tag policies, use the [Account Access Control Proxy API](https://docs.databricks.com/api/workspace/accountaccesscontrolproxy).", + "summary": "Create a new tag policy.", + "path": "/api/2.1/tag-policies", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateTagPolicyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagPolicy", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagPolicy", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "tag_policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagPolicy", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "TagPolicy", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "tag_policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagPolicy", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "create_time", + "description": "Timestamp when the tag policy was created", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Timestamp when the tag policy was last updated", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "values", + "is_request_body_field": true, + "entity": { + "pascal_name": "ValueList", + "array_value": { + "pascal_name": "Value", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteTagPolicy", + "description": "Deletes a tag policy by its associated governed tag's key, leaving that tag key ungoverned. For Terraform usage, see the [Tag Policy Terraform documentation](https://registry.terraform.io/providers/databricks/databricks/latest/docs/resources/tag_policy).", + "summary": "Delete a tag policy.", + "path": "/api/2.1/tag-policies/{tag_key}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteTagPolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "tag_key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "tag_key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "tag_key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "tag_key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetTagPolicy", + "description": "Gets a single tag policy by its associated governed tag's key. For Terraform usage, see the [Tag Policy Terraform documentation](https://registry.terraform.io/providers/databricks/databricks/latest/docs/data-sources/tag_policy). To list granted permissions for tag policies, use the [Account Access Control Proxy API](https://docs.databricks.com/api/workspace/accountaccesscontrolproxy).", + "summary": "Get a tag policy.", + "path": "/api/2.1/tag-policies/{tag_key}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetTagPolicyRequest", + "is_object": true, + "required_fields": [ + { + "name": "tag_key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "tag_key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "TagPolicy", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "tag_key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "tag_key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListTagPolicies", + "description": "Lists the tag policies for all governed tags in the account. For Terraform usage, see the [Tag Policy Terraform documentation](https://registry.terraform.io/providers/databricks/databricks/latest/docs/data-sources/tag_policies). To list granted permissions for tag policies, use the [Account Access Control Proxy API](https://docs.databricks.com/api/workspace/accountaccesscontrolproxy).", + "summary": "List tag policies.", + "path": "/api/2.1/tag-policies", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListTagPoliciesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListTagPoliciesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of results to return in this request. Fewer results may be returned than requested. If\nunspecified or set to 0, this defaults to 1000. The maximum value is 1000; values above 1000 will be coerced down\nto 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "An optional page token received from a previous list tag policies call.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "An optional page token received from a previous list tag policies call.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateTagPolicy", + "description": "Updates an existing tag policy for a single governed tag. For Terraform usage, see the [Tag Policy Terraform documentation](https://registry.terraform.io/providers/databricks/databricks/latest/docs/resources/tag_policy). To manage permissions for tag policies, use the [Account Access Control Proxy API](https://docs.databricks.com/api/workspace/accountaccesscontrolproxy).", + "summary": "Update an existing tag policy.", + "path": "/api/2.1/tag-policies/{tag_key}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateTagPolicyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagPolicy", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "tag_key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagPolicy", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "tag_policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagPolicy", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "TagPolicy", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "tag_key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_policy", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagPolicy", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "create_time", + "description": "Timestamp when the tag policy was created", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "description", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_time", + "description": "Timestamp when the tag policy was last updated", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "values", + "is_request_body_field": true, + "entity": { + "pascal_name": "ValueList", + "array_value": { + "pascal_name": "Value", + "is_object": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "tag_key", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.TemporaryPathCredentials", + "name": "TemporaryPathCredentials", + "description": "Temporary Path Credentials are short-lived, downscoped credentials used to access external cloud storage locations registered in Databricks. These credentials provide secure and time-limited access to data in cloud environments such as AWS, Azure, and Google Cloud. Each cloud provider has its own type of credentials: AWS uses temporary session tokens through AWS Security Token Service (STS), Azure uses Shared Access Signatures (SAS) for its data storage services, and Google Cloud supports temporary credentials through OAuth 2.0.\n\nTemporary path credentials ensure that data access is limited in scope and duration, reducing the risk of unauthorized access or misuse. To use the temporary path credentials API, a metastore admin must enable the external_access_enabled flag (off by default) at the metastore level. A user must be granted the EXTERNAL USE LOCATION permission by the external location owner. For requests on existing external tables and external volumes, the user must also be granted the EXTERNAL USE SCHEMA permission at the schema level by the catalog owner.\n\nNote that EXTERNAL USE SCHEMA is a schema level permission that can only be granted by the catalog owner explicitly and is not included in schema ownership or ALL PRIVILEGES on the schema for security reasons. Similarly, EXTERNAL USE LOCATION is an external location level permission that can only be granted by the external location owner explicitly and is not included in external location ownership or ALL PRIVILEGES on the external location for security reasons.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "GenerateTemporaryPathCredentials", + "description": "Get a short-lived credential for directly accessing cloud storage locations registered in Databricks.\nThe Generate Temporary Path Credentials API is only supported for external storage paths, specifically external\nlocations and external tables. Managed tables are not supported by this API.\nThe metastore must have **external_access_enabled** flag set to true (default false).\nThe caller must have the **EXTERNAL_USE_LOCATION** privilege on the external location; this privilege can only be granted\nby external location owners.\nFor requests on existing external tables, the caller must also have the **EXTERNAL_USE_SCHEMA** privilege on the parent schema;\nthis privilege can only be granted by catalog owners.", + "summary": "Generate a temporary path credential.", + "path": "/api/2.0/unity-catalog/temporary-path-credentials", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenerateTemporaryPathCredentialRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "url", + "description": "URL for path-based access.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "operation", + "description": "The operation being performed on the path.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PathOperation", + "enum": [ + { + "content": "PATH_CREATE_TABLE" + }, + { + "content": "PATH_READ" + }, + { + "content": "PATH_READ_WRITE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "url", + "description": "URL for path-based access.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "operation", + "description": "The operation being performed on the path.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PathOperation", + "enum": [ + { + "content": "PATH_CREATE_TABLE" + }, + { + "content": "PATH_READ" + }, + { + "content": "PATH_READ_WRITE" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "GenerateTemporaryPathCredentialResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "dry_run", + "description": "Optional. When set to true, the service will not validate that the generated\ncredentials can perform write operations, therefore no new paths will be created\nand the response will not contain valid credentials. Defaults to false.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "operation", + "description": "The operation being performed on the path.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PathOperation", + "enum": [ + { + "content": "PATH_CREATE_TABLE" + }, + { + "content": "PATH_READ" + }, + { + "content": "PATH_READ_WRITE" + } + ] + } + }, + { + "name": "url", + "description": "URL for path-based access.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "url", + "description": "URL for path-based access.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "operation", + "description": "The operation being performed on the path.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PathOperation", + "enum": [ + { + "content": "PATH_CREATE_TABLE" + }, + { + "content": "PATH_READ" + }, + { + "content": "PATH_READ_WRITE" + } + ] + } + } + ] + } + ] + }, + { + "id": "catalog.TemporaryTableCredentials", + "name": "TemporaryTableCredentials", + "description": "Temporary Table Credentials are short-lived, downscoped credentials used to access cloud storage locations where table data is stored in Databricks. These credentials provide secure and time-limited access to data in cloud environments such as AWS, Azure, and Google Cloud. Each cloud provider has its own type of credentials: AWS uses temporary session tokens through AWS Security Token Service (STS), Azure uses Shared Access Signatures (SAS) for its data storage services, and Google Cloud supports temporary credentials through OAuth 2.0.\n\nTemporary table credentials ensure that data access is limited in scope and duration, reducing the risk of unauthorized access or misuse. To use the temporary table credentials API, a metastore admin must enable the external_access_enabled flag (off by default) at the metastore level, and the user must be granted the EXTERNAL USE SCHEMA permission at the schema level by the catalog owner. Note that EXTERNAL USE SCHEMA is a schema level permission that can only be granted by the catalog owner explicitly and is not included in schema ownership or ALL PRIVILEGES on the schema for security reasons.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "GenerateTemporaryTableCredentials", + "description": "Get a short-lived credential for directly accessing the table data on cloud storage.\nThe metastore must have **external_access_enabled** flag set to true (default false).\nThe caller must have the **EXTERNAL_USE_SCHEMA** privilege on the parent schema and this privilege can only be granted\nby catalog owners.", + "summary": "Generate a temporary table credential.", + "path": "/api/2.0/unity-catalog/temporary-table-credentials", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GenerateTemporaryTableCredentialRequest", + "is_object": true + }, + "response": { + "pascal_name": "GenerateTemporaryTableCredentialResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "operation", + "description": "The operation performed against the table data, either READ or READ_WRITE. If READ_WRITE is specified,\nthe credentials returned will have write permissions, otherwise, it will be read only.", + "is_request_body_field": true, + "entity": { + "pascal_name": "TableOperation", + "enum": [ + { + "content": "READ" + }, + { + "content": "READ_WRITE" + } + ] + } + }, + { + "name": "table_id", + "description": "UUID of the table to read or write.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.TemporaryVolumeCredentials", + "name": "TemporaryVolumeCredentials", + "description": "Temporary Volume Credentials are short-lived, downscoped credentials used to access cloud storage locations where volume data is stored in Databricks. These credentials provide secure and time-limited access to data in cloud environments such as AWS, Azure, and Google Cloud. Each cloud provider has its own type of credentials: AWS uses temporary session tokens through AWS Security Token Service (STS), Azure uses Shared Access Signatures (SAS) for its data storage services, and Google Cloud supports temporary credentials through OAuth 2.0.\n\nTemporary volume credentials ensure that data access is limited in scope and duration, reducing the risk of unauthorized access or misuse. To use the temporary volume credentials API, a metastore admin must enable the external_access_enabled flag (off by default) at the metastore level, and the user must be granted the EXTERNAL USE SCHEMA permission at the schema level by the catalog owner. Note that EXTERNAL USE SCHEMA is a schema level permission that can only be granted by the catalog owner explicitly and is not included in schema ownership or ALL PRIVILEGES on the schema for security reasons.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "methods": [ + { + "name": "GenerateTemporaryVolumeCredentials", + "description": "Get a short-lived credential for directly accessing the volume data on cloud storage.\nThe metastore must have **external_access_enabled** flag set to true (default false).\nThe caller must have the **EXTERNAL_USE_SCHEMA** privilege on the parent schema and this privilege can only be granted\nby catalog owners.", + "summary": "Generate a temporary volume credential.", + "path": "/api/2.0/unity-catalog/temporary-volume-credentials", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GenerateTemporaryVolumeCredentialRequest", + "is_object": true + }, + "response": { + "pascal_name": "GenerateTemporaryVolumeCredentialResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "operation", + "description": "The operation performed against the volume data, either READ_VOLUME or WRITE_VOLUME. If WRITE_VOLUME is specified,\nthe credentials returned will have write permissions, otherwise, it will be read only.", + "is_request_body_field": true, + "entity": { + "pascal_name": "VolumeOperation", + "enum": [ + { + "content": "READ_VOLUME" + }, + { + "content": "WRITE_VOLUME" + } + ] + } + }, + { + "name": "volume_id", + "description": "Id of the volume to read or write.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "settings.TokenManagement", + "name": "TokenManagement", + "description": "Enables administrators to get all tokens and delete tokens for other users. Admins can\neither get every token, get a specific token by ID, or get all tokens for a particular user.", + "package": { + "name": "settings" + }, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "TokenInfoCommentToTokenIdMap" + }, + "request": { + "pascal_name": "ListTokenManagementRequest" + } + }, + "methods": [ + { + "name": "CreateOboToken", + "description": "Creates a token on behalf of a service principal.", + "summary": "Create on-behalf token.", + "path": "/api/2.0/token-management/on-behalf-of/tokens", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateOboTokenRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "application_id", + "description": "Application ID of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "application_id", + "description": "Application ID of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "CreateOboTokenResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "application_id", + "description": "Application ID of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "autoscope_enabled", + "description": "Whether to enable autoscoping for this token.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "comment", + "description": "Comment that describes the purpose of the token.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "lifetime_seconds", + "description": "The number of seconds before the token expires.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "scopes", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "application_id", + "description": "Application ID of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a token, specified by its ID.", + "summary": "Delete a token.", + "path": "/api/2.0/token-management/tokens/{token_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteTokenManagementRequest", + "is_object": true, + "required_fields": [ + { + "name": "token_id", + "description": "The ID of the token to revoke.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "token_id", + "description": "The ID of the token to revoke.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "token_id", + "description": "The ID of the token to revoke.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "token_id", + "description": "The ID of the token to revoke.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets information about a token, specified by its ID.", + "summary": "Get token info.", + "path": "/api/2.0/token-management/tokens/{token_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetTokenManagementRequest", + "is_object": true, + "required_fields": [ + { + "name": "token_id", + "description": "The ID of the token to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "token_id", + "description": "The ID of the token to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetTokenResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "token_id", + "description": "The ID of the token to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "token_id", + "description": "The ID of the token to get.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get token permission levels.", + "path": "/api/2.0/permissions/authorization/tokens/permissionLevels", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetTokenPermissionLevelsRequest", + "is_object": true + }, + "response": { + "pascal_name": "GetTokenPermissionLevelsResponse", + "is_object": true + } + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of all tokens. Tokens can inherit permissions from their root object.", + "summary": "Get token permissions.", + "path": "/api/2.0/permissions/authorization/tokens", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetTokenPermissionsRequest", + "is_object": true + }, + "response": { + "pascal_name": "TokenPermissions", + "is_object": true + } + }, + { + "name": "List", + "description": "Lists all tokens associated with the specified workspace or user.", + "summary": "List all tokens.", + "path": "/api/2.0/token-management/tokens", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListTokenManagementRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListTokensResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "created_by_id", + "description": "User ID of the user that created the token.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "created_by_username", + "description": "Username of the user that created the token.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": {} + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set token permissions.", + "path": "/api/2.0/permissions/authorization/tokens", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "TokenPermissionsRequest", + "is_object": true + }, + "response": { + "pascal_name": "TokenPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "TokenAccessControlRequestList", + "array_value": { + "pascal_name": "TokenAccessControlRequest", + "is_object": true + } + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on all tokens. Tokens can inherit permissions from their root object.", + "summary": "Update token permissions.", + "path": "/api/2.0/permissions/authorization/tokens", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "TokenPermissionsRequest", + "is_object": true + }, + "response": { + "pascal_name": "TokenPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "TokenAccessControlRequestList", + "array_value": { + "pascal_name": "TokenAccessControlRequest", + "is_object": true + } + } + } + ] + }, + { + "name": "UpdateTokenManagement", + "description": "Updates a token, specified by its ID.", + "summary": "Update an on-behalf token.", + "path": "/api/2.0/token-management/tokens/{token_id}", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateTokenManagementRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "token_id", + "description": "ID of the token.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "token", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TokenInfo", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "A list of field name under token, For example, {\"update_mask\": \"comment,scopes\"}\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "token_id", + "description": "ID of the token.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "token", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TokenInfo", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "A list of field name under token, For example, {\"update_mask\": \"comment,scopes\"}\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_field_mask": true + } + } + ] + }, + "response": { + "pascal_name": "TokenInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "token", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TokenInfo", + "is_object": true + } + }, + { + "name": "token_id", + "description": "ID of the token.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "A list of field name under token, For example, {\"update_mask\": \"comment,scopes\"}\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_positional_arguments": [ + { + "name": "token_id", + "description": "ID of the token.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "settings.Tokens", + "name": "Tokens", + "description": "The Token API allows you to create, list, and revoke tokens that can be used to authenticate and access Databricks REST APIs.", + "package": { + "name": "settings" + }, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "PublicTokenInfoCommentToTokenIdMap" + }, + "is_legacy_empty_request": true, + "request": { + "pascal_name": "ListTokens" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates and returns a token for a user. If this call is made through token authentication, it creates\na token with the same client ID as the authenticated token. If the user's token quota is exceeded, this call\nreturns an error **QUOTA_EXCEEDED**.", + "summary": "Create a user token.", + "path": "/api/2.0/token/create", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateTokenRequest", + "is_object": true + }, + "response": { + "pascal_name": "CreateTokenResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "autoscope_enabled", + "description": "Whether to enable autoscoping for this token. When true, the token will\nautomatically collect inferred API path scopes as it is used.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "comment", + "description": "Optional description to attach to the token.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "lifetime_seconds", + "description": "The lifetime of the token, in seconds.\n\nIf the lifetime is not specified, this token remains valid for 2 years.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "scopes", + "description": "Optional scopes of the token.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + }, + { + "name": "Delete", + "description": "Revokes an access token.\n\nIf a token with the specified ID is not valid, this call returns an error **RESOURCE_DOES_NOT_EXIST**.", + "summary": "Revoke token.", + "path": "/api/2.0/token/delete", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RevokeTokenRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "token_id", + "description": "The ID of the token to be revoked.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "token_id", + "description": "The ID of the token to be revoked.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RevokeTokenResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "token_id", + "description": "The ID of the token to be revoked.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "token_id", + "description": "The ID of the token to be revoked.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Lists all the valid tokens for a user-workspace pair.", + "summary": "List tokens.", + "path": "/api/2.0/token/list", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListTokens", + "is_object": true + }, + "response": { + "pascal_name": "ListPublicTokensResponse", + "is_object": true + }, + "pagination": {} + }, + { + "name": "Update", + "description": "Updates the comment or scopes of a token.\n\nIf a token with the specified ID is not valid, this call returns an error **NOT_FOUND**.", + "summary": "Update a user token.", + "path": "/api/2.0/token/{token_id}", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateTokenRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "token_id", + "description": "The SHA-256 hash of the token to be updated.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "token", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PublicTokenInfo", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "A list of field name under token, For example, {\"update_mask\": \"comment,scopes\"}\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "token_id", + "description": "The SHA-256 hash of the token to be updated.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "token", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PublicTokenInfo", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "A list of field name under token, For example, {\"update_mask\": \"comment,scopes\"}\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_field_mask": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateTokenResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "token", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PublicTokenInfo", + "is_object": true + } + }, + { + "name": "token_id", + "description": "The SHA-256 hash of the token to be updated.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "A list of field name under token, For example, {\"update_mask\": \"comment,scopes\"}\n\nThe field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_positional_arguments": [ + { + "name": "token_id", + "description": "The SHA-256 hash of the token to be updated.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "billing.UsageDashboards", + "name": "UsageDashboards", + "description": "These APIs manage usage dashboards for this account. Usage dashboards enable you to gain insights into your usage with pre-built dashboards: visualize breakdowns, analyze tag attributions, and identify cost drivers.", + "package": { + "name": "billing" + }, + "is_accounts": true, + "docs_group": "billing", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Create", + "description": "Create a usage dashboard specified by workspaceId, accountId, and dashboard type.", + "summary": "Create new usage dashboard.", + "path": "/api/2.0/accounts/{account_id}/dashboard", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateBillingUsageDashboardRequest", + "is_object": true + }, + "response": { + "pascal_name": "CreateBillingUsageDashboardResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "dashboard_type", + "description": "Workspace level usage dashboard shows usage data for the specified workspace ID. Global level usage dashboard shows usage data for all workspaces in the account.", + "is_request_body_field": true, + "entity": { + "pascal_name": "UsageDashboardType", + "enum": [ + { + "content": "USAGE_DASHBOARD_TYPE_GLOBAL" + }, + { + "content": "USAGE_DASHBOARD_TYPE_WORKSPACE" + } + ] + } + }, + { + "name": "major_version", + "description": "The major version of the usage dashboard template to use. Defaults to VERSION_1.", + "is_request_body_field": true, + "entity": { + "pascal_name": "UsageDashboardMajorVersion", + "enum": [ + { + "content": "USAGE_DASHBOARD_MAJOR_VERSION_1" + }, + { + "content": "USAGE_DASHBOARD_MAJOR_VERSION_2" + } + ] + } + }, + { + "name": "workspace_id", + "description": "The workspace ID of the workspace in which the usage dashboard is created.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "Get", + "description": "Get a usage dashboard specified by workspaceId, accountId, and dashboard type.", + "summary": "Get usage dashboard.", + "path": "/api/2.0/accounts/{account_id}/dashboard", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetBillingUsageDashboardRequest", + "is_object": true + }, + "response": { + "pascal_name": "GetBillingUsageDashboardResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "dashboard_type", + "description": "Workspace level usage dashboard shows usage data for the specified workspace ID. Global level usage dashboard shows usage data for all workspaces in the account.", + "is_query": true, + "entity": { + "pascal_name": "UsageDashboardType", + "enum": [ + { + "content": "USAGE_DASHBOARD_TYPE_GLOBAL" + }, + { + "content": "USAGE_DASHBOARD_TYPE_WORKSPACE" + } + ] + } + }, + { + "name": "workspace_id", + "description": "The workspace ID of the workspace in which the usage dashboard is created.", + "is_query": true, + "entity": { + "is_int64": true + } + } + ] + } + ] + }, + { + "id": "iam.UsersV2", + "name": "UsersV2", + "description": "User identities recognized by Databricks and represented by email addresses.\n\nDatabricks recommends using SCIM provisioning to sync users and groups automatically from\nyour identity provider to your Databricks workspace. SCIM streamlines onboarding a new\nemployee or team by using your identity provider to create users and groups in Databricks workspace\nand give them the proper level of access. When a user leaves your organization or no longer\nneeds access to Databricks workspace, admins can terminate the user in your identity provider and that\nuser’s account will also be removed from Databricks workspace. This ensures a consistent offboarding\nprocess and prevents unauthorized users from accessing sensitive data.", + "package": { + "name": "iam" + }, + "docs_group": "iam", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "list": { + "request": { + "pascal_name": "ListUsersRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new user in the Databricks workspace. This new user will also be added to the Databricks account.", + "summary": "Create a new user.", + "path": "/api/2.0/preview/scim/v2/Users", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "CreateUserRequest", + "is_object": true + }, + "response": { + "pascal_name": "User", + "is_object": true + }, + "all_fields": [ + { + "name": "active", + "description": "If this user is active", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "displayName", + "description": "String that represents a concatenation of given and family names. For example `John Smith`. This field cannot be updated through the Workspace SCIM APIs when [identity federation is enabled](https://docs.databricks.com/administration-guide/users-groups/best-practices.html#enable-identity-federation). Use Account SCIM APIs to update `displayName`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "emails", + "description": "All the emails associated with the Databricks user.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "entitlements", + "description": "Entitlements assigned to the user. See [assigning entitlements](https://docs.databricks.com/administration-guide/users-groups/index.html#assigning-entitlements) for a full list of supported values.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "externalId", + "description": "External ID is not currently supported. It is reserved for future use.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "groups", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "id", + "description": "Databricks user ID.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Name", + "is_object": true + } + }, + { + "name": "roles", + "description": "Corresponds to AWS instance profile/arn role.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "schemas", + "description": "The schema of the user.", + "is_request_body_field": true, + "entity": { + "pascal_name": "UserSchemaList", + "array_value": { + "pascal_name": "UserSchema", + "enum": [ + { + "content": "urn:ietf:params:scim:schemas:core:2.0:User" + }, + { + "content": "urn:ietf:params:scim:schemas:extension:workspace:2.0:User" + } + ] + } + } + }, + { + "name": "userName", + "description": "Email address of the Databricks user.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a user. Deleting a user from a Databricks workspace also removes objects associated with the user.", + "summary": "Delete a user.", + "path": "/api/2.0/preview/scim/v2/Users/{id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "DeleteUserRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID for a user in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID for a user in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID for a user in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID for a user in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets information for a specific user in Databricks workspace.", + "summary": "Get user details.", + "path": "/api/2.0/preview/scim/v2/Users/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetUserRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID for a user in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID for a user in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "User", + "is_object": true + }, + "all_fields": [ + { + "name": "attributes", + "description": "Comma-separated list of attributes to return in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "count", + "description": "Desired number of results per page.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "excludedAttributes", + "description": "Comma-separated list of attributes to exclude in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "filter", + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Unique ID for a user in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortBy", + "description": "Attribute to sort the results. Multi-part paths are supported. For example, `userName`, `name.givenName`, and `emails`.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortOrder", + "description": "The order to sort the results.", + "is_query": true, + "entity": { + "pascal_name": "GetSortOrder", + "enum": [ + { + "content": "ascending" + }, + { + "content": "descending" + } + ] + } + }, + { + "name": "startIndex", + "description": "Specifies the index of the first result. First item is number 1.", + "is_query": true, + "entity": { + "is_int": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID for a user in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get password permission levels.", + "path": "/api/2.0/permissions/authorization/passwords/permissionLevels", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetPasswordPermissionLevelsRequest", + "is_object": true + }, + "response": { + "pascal_name": "GetPasswordPermissionLevelsResponse", + "is_object": true + } + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of all passwords. Passwords can inherit permissions from their root object.", + "summary": "Get password permissions.", + "path": "/api/2.0/permissions/authorization/passwords", + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "GetPasswordPermissionsRequest", + "is_object": true + }, + "response": { + "pascal_name": "PasswordPermissions", + "is_object": true + } + }, + { + "name": "List", + "description": "Gets details for all the users associated with a Databricks workspace.", + "summary": "List users.", + "path": "/api/2.0/preview/scim/v2/Users", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "ListUsersRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListUsersResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "attributes", + "description": "Comma-separated list of attributes to return in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "count", + "description": "Desired number of results per page.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "excludedAttributes", + "description": "Comma-separated list of attributes to exclude in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "filter", + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortBy", + "description": "Attribute to sort the results. Multi-part paths are supported. For example, `userName`, `name.givenName`, and `emails`.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortOrder", + "description": "The order to sort the results.", + "is_query": true, + "entity": { + "pascal_name": "ListSortOrder", + "enum": [ + { + "content": "ascending" + }, + { + "content": "descending" + } + ] + } + }, + { + "name": "startIndex", + "description": "Specifies the index of the first result. First item is number 1.", + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "pagination": { + "offset": { + "name": "startIndex", + "description": "Specifies the index of the first result. First item is number 1.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + "limit": { + "name": "count", + "description": "Desired number of results per page.", + "is_query": true, + "entity": { + "is_int64": true + } + } + } + }, + { + "name": "Patch", + "description": "Partially updates a user resource by applying the supplied operations on specific user attributes.\nThe `userName` and `emails` attributes cannot be updated through this API; any supplied changes to them are ignored (no-op).", + "summary": "Update user details.", + "path": "/api/2.0/preview/scim/v2/Users/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "PatchUserRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "Operations", + "is_request_body_field": true, + "entity": { + "pascal_name": "PatchList", + "array_value": { + "pascal_name": "Patch", + "is_object": true + } + } + }, + { + "name": "schemas", + "description": "The schema of the patch request. Must be [\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"].", + "is_request_body_field": true, + "entity": { + "pascal_name": "PatchSchemaList", + "array_value": { + "pascal_name": "PatchSchema", + "enum": [ + { + "content": "urn:ietf:params:scim:api:messages:2.0:PatchOp" + } + ] + } + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set password permissions.", + "path": "/api/2.0/permissions/authorization/passwords", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "PasswordPermissionsRequest", + "is_object": true + }, + "response": { + "pascal_name": "PasswordPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "PasswordAccessControlRequestList", + "array_value": { + "pascal_name": "PasswordAccessControlRequest", + "is_object": true + } + } + } + ] + }, + { + "name": "Update", + "description": "Replaces a user's information with the data supplied in request.\nThe `userName` and `emails` attributes cannot be updated through this API; any supplied changes to them are ignored (no-op).", + "summary": "Replace a user.", + "path": "/api/2.0/preview/scim/v2/Users/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "UpdateUserRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Databricks user ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Databricks user ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "active", + "description": "If this user is active", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "displayName", + "description": "String that represents a concatenation of given and family names. For example `John Smith`. This field cannot be updated through the Workspace SCIM APIs when [identity federation is enabled](https://docs.databricks.com/administration-guide/users-groups/best-practices.html#enable-identity-federation). Use Account SCIM APIs to update `displayName`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "emails", + "description": "All the emails associated with the Databricks user. This attribute cannot be updated through the SCIM PATCH or PUT APIs; any supplied change is ignored.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "entitlements", + "description": "Entitlements assigned to the user. See [assigning entitlements](https://docs.databricks.com/administration-guide/users-groups/index.html#assigning-entitlements) for a full list of supported values.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "externalId", + "description": "External ID is not currently supported. It is reserved for future use.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "groups", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "id", + "description": "Databricks user ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Name", + "is_object": true + } + }, + { + "name": "roles", + "description": "Corresponds to AWS instance profile/arn role.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "schemas", + "description": "The schema of the user.", + "is_request_body_field": true, + "entity": { + "pascal_name": "UserSchemaList", + "array_value": { + "pascal_name": "UserSchema", + "enum": [ + { + "content": "urn:ietf:params:scim:schemas:core:2.0:User" + }, + { + "content": "urn:ietf:params:scim:schemas:extension:workspace:2.0:User" + } + ] + } + } + }, + { + "name": "userName", + "description": "Email address of the Databricks user. This attribute cannot be updated through the SCIM PATCH or PUT APIs; any supplied change is ignored.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Databricks user ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on all passwords. Passwords can inherit permissions from their root object.", + "summary": "Update password permissions.", + "path": "/api/2.0/permissions/authorization/passwords", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "PasswordPermissionsRequest", + "is_object": true + }, + "response": { + "pascal_name": "PasswordPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "PasswordAccessControlRequestList", + "array_value": { + "pascal_name": "PasswordAccessControlRequest", + "is_object": true + } + } + } + ] + } + ] + }, + { + "id": "iam.AccountUsersV2", + "name": "AccountUsersV2", + "description": "User identities recognized by Databricks and represented by email addresses.\n\nDatabricks recommends using SCIM provisioning to sync users and groups automatically from\nyour identity provider to your Databricks account. SCIM streamlines onboarding a new\nemployee or team by using your identity provider to create users and groups in Databricks account\nand give them the proper level of access. When a user leaves your organization or no longer\nneeds access to Databricks account, admins can terminate the user in your identity provider and that\nuser’s account will also be removed from Databricks account. This ensures a consistent offboarding\nprocess and prevents unauthorized users from accessing sensitive data.", + "package": { + "name": "iam" + }, + "is_accounts": true, + "docs_group": "iam", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListAccountUsersRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new user in the Databricks account. This new user will also be added to the Databricks account.", + "summary": "Create a new user.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/Users", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateAccountUserRequest", + "is_object": true + }, + "response": { + "pascal_name": "AccountUser", + "is_object": true + }, + "all_fields": [ + { + "name": "active", + "description": "If this user is active", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "displayName", + "description": "String that represents a concatenation of given and family names. For example `John Smith`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "emails", + "description": "All the emails associated with the Databricks user.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "externalId", + "description": "External ID is not currently supported. It is reserved for future use.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Databricks user ID.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Name", + "is_object": true + } + }, + { + "name": "roles", + "description": "Indicates if the group has the admin role.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "userName", + "description": "Email address of the Databricks user.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a user. Deleting a user from a Databricks account also removes objects associated with the user.", + "summary": "Delete a user.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/Users/{id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteAccountUserRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID for a user in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID for a user in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID for a user in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID for a user in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets information for a specific user in Databricks account.", + "summary": "Get user details.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/Users/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetAccountUserRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID for a user in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID for a user in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "AccountUser", + "is_object": true + }, + "all_fields": [ + { + "name": "attributes", + "description": "Comma-separated list of attributes to return in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "count", + "description": "Desired number of results per page. Default is 10000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "excludedAttributes", + "description": "Comma-separated list of attributes to exclude in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "filter", + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Unique ID for a user in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortBy", + "description": "Attribute to sort the results. Multi-part paths are supported. For example, `userName`, `name.givenName`, and `emails`.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortOrder", + "description": "The order to sort the results.", + "is_query": true, + "entity": { + "pascal_name": "GetSortOrder", + "enum": [ + { + "content": "ascending" + }, + { + "content": "descending" + } + ] + } + }, + { + "name": "startIndex", + "description": "Specifies the index of the first result. First item is number 1.", + "is_query": true, + "entity": { + "is_int": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID for a user in the Databricks account.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets details for all the users associated with a Databricks account.", + "summary": "List users.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/Users", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListAccountUsersRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListAccountUsersResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "attributes", + "description": "Comma-separated list of attributes to return in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "count", + "description": "Desired number of results per page. Default is 10000.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "excludedAttributes", + "description": "Comma-separated list of attributes to exclude in response.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "filter", + "description": "Query by which the results have to be filtered. Supported operators are equals(`eq`), contains(`co`), starts with(`sw`) and not equals(`ne`). Additionally, simple expressions can be formed using logical operators - `and` and `or`. The [SCIM RFC](https://tools.ietf.org/html/rfc7644#section-3.4.2.2) has more details but we currently only support simple expressions.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortBy", + "description": "Attribute to sort the results. Multi-part paths are supported. For example, `userName`, `name.givenName`, and `emails`.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "sortOrder", + "description": "The order to sort the results.", + "is_query": true, + "entity": { + "pascal_name": "ListSortOrder", + "enum": [ + { + "content": "ascending" + }, + { + "content": "descending" + } + ] + } + }, + { + "name": "startIndex", + "description": "Specifies the index of the first result. First item is number 1.", + "is_query": true, + "entity": { + "is_int64": true + } + } + ], + "pagination": { + "offset": { + "name": "startIndex", + "description": "Specifies the index of the first result. First item is number 1.", + "is_query": true, + "entity": { + "is_int64": true + } + }, + "limit": { + "name": "count", + "description": "Desired number of results per page. Default is 10000.", + "is_query": true, + "entity": { + "is_int64": true + } + } + } + }, + { + "name": "Patch", + "description": "Partially updates a user resource by applying the supplied operations on specific user attributes.\nThe `userName` and `emails` attributes cannot be updated through this API; any supplied changes to them are ignored (no-op).", + "summary": "Update user details.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/Users/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "PatchAccountUserRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "Operations", + "is_request_body_field": true, + "entity": { + "pascal_name": "PatchList", + "array_value": { + "pascal_name": "Patch", + "is_object": true + } + } + }, + { + "name": "schemas", + "description": "The schema of the patch request. Must be [\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"].", + "is_request_body_field": true, + "entity": { + "pascal_name": "PatchSchemaList", + "array_value": { + "pascal_name": "PatchSchema", + "enum": [ + { + "content": "urn:ietf:params:scim:api:messages:2.0:PatchOp" + } + ] + } + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Unique ID in the Databricks workspace.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Replaces a user's information with the data supplied in request.\nThe `userName` and `emails` attributes cannot be updated through this API; any supplied changes to them are ignored (no-op).", + "summary": "Replace a user.", + "path": "/api/2.0/accounts/{account_id}/scim/v2/Users/{id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateAccountUserRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Databricks user ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Databricks user ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "active", + "description": "If this user is active", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "displayName", + "description": "String that represents a concatenation of given and family names. For example `John Smith`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "emails", + "description": "All the emails associated with the Databricks user. This attribute cannot be updated through the SCIM PATCH or PUT APIs; any supplied change is ignored.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "externalId", + "description": "External ID is not currently supported. It is reserved for future use.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "id", + "description": "Databricks user ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Name", + "is_object": true + } + }, + { + "name": "roles", + "description": "Indicates if the group has the admin role.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ComplexValueList", + "array_value": { + "pascal_name": "ComplexValue", + "is_object": true + } + } + }, + { + "name": "userName", + "description": "Email address of the Databricks user. This attribute cannot be updated through the SCIM PATCH or PUT APIs; any supplied change is ignored.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Databricks user ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "vectorsearch.VectorSearchEndpoints", + "name": "VectorSearchEndpoints", + "description": "**Endpoint**: Represents the compute resources to host AI Search indexes.", + "package": { + "name": "vectorsearch" + }, + "docs_group": "vectorsearch", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListEndpointsRequest" + } + }, + "methods": [ + { + "name": "CreateEndpoint", + "description": "Create a new endpoint.", + "summary": "Create an endpoint.", + "path": "/api/2.0/vector-search/endpoints", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateEndpoint", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_type", + "description": "Type of endpoint", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_type", + "description": "Type of endpoint", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "EndpointInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "budget_policy_id", + "description": "The budget policy id to be applied", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_type", + "description": "Type of endpoint", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + }, + { + "name": "name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "target_qps", + "description": "Target QPS for the endpoint. Mutually exclusive with num_replicas.\nThe actual replica count is calculated at index creation/sync time based on this value.\nBest-effort target; the system does not guarantee this QPS will be achieved.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "usage_policy_id", + "description": "The usage policy id to be applied once we've migrated to usage policies", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_type", + "description": "Type of endpoint", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointType", + "enum": [ + { + "content": "STANDARD" + }, + { + "content": "STORAGE_OPTIMIZED" + } + ] + } + } + ], + "wait": { + "success": [ + { + "content": "ONLINE" + } + ], + "timeout": 20, + "complex_message_path": true, + "poll": { + "response": { + "pascal_name": "EndpointInfo" + } + }, + "status_path": [ + { + "pascal_name": "EndpointStatus" + }, + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "EndpointStatus" + }, + { + "pascal_name": "Message" + } + ], + "message_path_head": { + "pascal_name": "EndpointStatus" + } + } + }, + { + "name": "DeleteEndpoint", + "description": "Delete an AI Search endpoint.", + "summary": "Delete an endpoint.", + "path": "/api/2.0/vector-search/endpoints/{endpoint_name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteEndpointRequest", + "is_object": true, + "required_fields": [ + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteEndpointResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetEndpoint", + "description": "Get details for a single AI Search endpoint.", + "summary": "Get an endpoint.", + "path": "/api/2.0/vector-search/endpoints/{endpoint_name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetEndpointRequest", + "is_object": true, + "required_fields": [ + { + "name": "endpoint_name", + "description": "Name of the endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "endpoint_name", + "description": "Name of the endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EndpointInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "endpoint_name", + "description": "Name of the endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "endpoint_name", + "description": "Name of the endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get vector search endpoint permission levels.", + "path": "/api/2.0/permissions/vector-search-endpoints/{endpoint_id}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetVectorSearchEndpointPermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetVectorSearchEndpointPermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of a vector search endpoint. Vector search endpoints can inherit permissions from their root object.", + "summary": "Get vector search endpoint permissions.", + "path": "/api/2.0/permissions/vector-search-endpoints/{endpoint_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetVectorSearchEndpointPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "VectorSearchEndpointPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListEndpoints", + "description": "List all AI Search endpoints in the workspace.", + "summary": "List all endpoints.", + "path": "/api/2.0/vector-search/endpoints", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListEndpointsRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListEndpointResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_token", + "description": "Token for pagination", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Token for pagination", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "PatchEndpoint", + "description": "Update an endpoint", + "summary": "Update an endpoint.", + "path": "/api/2.0/vector-search/endpoints/{endpoint_name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "PatchEndpointRequest", + "is_object": true, + "required_fields": [ + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EndpointInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "target_qps", + "description": "Target QPS for the endpoint. Best-effort; the system does not guarantee this QPS\nwill be achieved.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "RetrieveUserVisibleMetrics", + "description": "Retrieve user-visible metrics for an endpoint", + "summary": "Retrieve user-visible metrics for an endpoint.", + "path": "/api/2.0/vector-search/endpoints/{name}/metrics", + "can_use_json": true, + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "RetrieveUserVisibleMetricsRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "AI Search endpoint name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "AI Search endpoint name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "RetrieveUserVisibleMetricsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "end_time", + "description": "End time for metrics query", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "granularity_in_seconds", + "description": "Granularity in seconds", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "metrics", + "description": "List of metrics to retrieve", + "is_request_body_field": true, + "entity": { + "pascal_name": "MetricList", + "array_value": { + "pascal_name": "Metric", + "is_object": true + } + } + }, + { + "name": "name", + "description": "AI Search endpoint name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_token", + "description": "Token for pagination", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "start_time", + "description": "Start time for metrics query", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "AI Search endpoint name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set vector search endpoint permissions.", + "path": "/api/2.0/permissions/vector-search-endpoints/{endpoint_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "VectorSearchEndpointPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "VectorSearchEndpointPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "VectorSearchEndpointAccessControlRequestList", + "array_value": { + "pascal_name": "VectorSearchEndpointAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateEndpointBudgetPolicy", + "description": "Update the budget policy of an endpoint", + "summary": "Update the budget policy of an endpoint.", + "path": "/api/2.0/vector-search/endpoints/{endpoint_name}/budget-policy", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_PREVIEW", + "cli_launch_stage_label": "*Public Preview*", + "cli_launch_stage_banner": "This command is in Public Preview and may change without notice.", + "cli_launch_stage_display": "Public Preview", + "request": { + "pascal_name": "PatchEndpointBudgetPolicyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "budget_policy_id", + "description": "The budget policy id to be applied", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "budget_policy_id", + "description": "The budget policy id to be applied", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "PatchEndpointBudgetPolicyResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "budget_policy_id", + "description": "The budget policy id to be applied", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "budget_policy_id", + "description": "The budget policy id to be applied", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateEndpointCustomTags", + "description": "Update the custom tags of an endpoint.", + "summary": "Update the custom tags of an endpoint.", + "path": "/api/2.0/vector-search/endpoints/{endpoint_name}/tags", + "can_use_json": true, + "must_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateEndpointCustomTagsRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_tags", + "description": "The new custom tags for the AI Search endpoint", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTagList", + "array_value": { + "pascal_name": "CustomTag", + "is_object": true + } + } + } + ], + "required_in_url_fields": [ + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "custom_tags", + "description": "The new custom tags for the AI Search endpoint", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTagList", + "array_value": { + "pascal_name": "CustomTag", + "is_object": true + } + } + } + ] + }, + "response": { + "pascal_name": "UpdateEndpointCustomTagsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "custom_tags", + "description": "The new custom tags for the AI Search endpoint", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomTagList", + "array_value": { + "pascal_name": "CustomTag", + "is_object": true + } + } + }, + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "endpoint_name", + "description": "Name of the AI Search endpoint", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on a vector search endpoint. Vector search endpoints can inherit permissions from their root object.", + "summary": "Update vector search endpoint permissions.", + "path": "/api/2.0/permissions/vector-search-endpoints/{endpoint_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "VectorSearchEndpointPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "VectorSearchEndpointPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "VectorSearchEndpointAccessControlRequestList", + "array_value": { + "pascal_name": "VectorSearchEndpointAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "endpoint_id", + "description": "The vector search endpoint for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "vectorsearch.VectorSearchIndexes", + "name": "VectorSearchIndexes", + "description": "**Index**: An efficient representation of your embedding vectors that supports real-time and\nefficient approximate nearest neighbor (ANN) search queries.\n\nThere are 2 types of AI Search indexes:\n- **Delta Sync Index**: An index that automatically syncs with a source Delta Table, automatically\nand incrementally updating the index as the underlying data in the Delta Table changes.\n- **Direct Vector Access Index**: An index that supports direct read and write of vectors and metadata\nthrough our REST and SDK APIs. With this model, the user manages index updates.", + "package": { + "name": "vectorsearch" + }, + "docs_group": "vectorsearch", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListIndexesRequest" + } + }, + "methods": [ + { + "name": "CreateIndex", + "description": "Create a new index.", + "summary": "Create an index.", + "path": "/api/2.0/vector-search/indexes", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateVectorIndexRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the index", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_name", + "description": "Name of the endpoint to be used for serving the index", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "primary_key", + "description": "Primary key of the index", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VectorIndexType", + "enum": [ + { + "content": "DELTA_SYNC" + }, + { + "content": "DIRECT_ACCESS" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "name", + "description": "Name of the index", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_name", + "description": "Name of the endpoint to be used for serving the index", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "primary_key", + "description": "Primary key of the index", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VectorIndexType", + "enum": [ + { + "content": "DELTA_SYNC" + }, + { + "content": "DIRECT_ACCESS" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "VectorIndex", + "is_object": true + }, + "all_fields": [ + { + "name": "delta_sync_index_spec", + "description": "Specification for Delta Sync Index. Required if `index_type` is `DELTA_SYNC`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DeltaSyncVectorIndexSpecRequest", + "is_object": true + } + }, + { + "name": "direct_access_index_spec", + "description": "Specification for Direct Vector Access Index. Required if `index_type` is `DIRECT_ACCESS`.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "DirectAccessVectorIndexSpec", + "is_object": true + } + }, + { + "name": "endpoint_name", + "description": "Name of the endpoint to be used for serving the index", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_subtype", + "description": "The subtype of the index. Use `HYBRID` or `FULL_TEXT`. `VECTOR` is not supported.", + "is_request_body_field": true, + "entity": { + "pascal_name": "IndexSubtype", + "enum": [ + { + "content": "FULL_TEXT" + }, + { + "content": "HYBRID" + }, + { + "content": "VECTOR" + } + ] + } + }, + { + "name": "index_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VectorIndexType", + "enum": [ + { + "content": "DELTA_SYNC" + }, + { + "content": "DIRECT_ACCESS" + } + ] + } + }, + { + "name": "name", + "description": "Name of the index", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "primary_key", + "description": "Primary key of the index", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the index", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "endpoint_name", + "description": "Name of the endpoint to be used for serving the index", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "primary_key", + "description": "Primary key of the index", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_type", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VectorIndexType", + "enum": [ + { + "content": "DELTA_SYNC" + }, + { + "content": "DIRECT_ACCESS" + } + ] + } + } + ] + }, + { + "name": "DeleteDataVectorIndex", + "description": "Handles the deletion of data from a specified vector index.", + "summary": "Delete data from index.", + "path": "/api/2.0/vector-search/indexes/{index_name}/delete-data", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteDataVectorIndexRequest", + "is_object": true, + "required_fields": [ + { + "name": "index_name", + "description": "Name of the vector index where data is to be deleted. Must be a Direct Vector Access Index.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "primary_keys", + "description": "List of primary keys for the data to be deleted.", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_in_url_fields": [ + { + "name": "index_name", + "description": "Name of the vector index where data is to be deleted. Must be a Direct Vector Access Index.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "primary_keys", + "description": "List of primary keys for the data to be deleted.", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + }, + "response": { + "pascal_name": "DeleteDataVectorIndexResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "index_name", + "description": "Name of the vector index where data is to be deleted. Must be a Direct Vector Access Index.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "primary_keys", + "description": "List of primary keys for the data to be deleted.", + "required": true, + "is_query": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "index_name", + "description": "Name of the vector index where data is to be deleted. Must be a Direct Vector Access Index.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteIndex", + "description": "Delete an index.", + "summary": "Delete an index.", + "path": "/api/2.0/vector-search/indexes/{index_name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteIndexRequest", + "is_object": true, + "required_fields": [ + { + "name": "index_name", + "description": "Name of the index", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "index_name", + "description": "Name of the index", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteIndexResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "index_name", + "description": "Name of the index", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "index_name", + "description": "Name of the index", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetIndex", + "description": "Get an index.", + "summary": "Get an index.", + "path": "/api/2.0/vector-search/indexes/{index_name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetIndexRequest", + "is_object": true, + "required_fields": [ + { + "name": "index_name", + "description": "Name of the index", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "index_name", + "description": "Name of the index", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "VectorIndex", + "is_object": true + }, + "all_fields": [ + { + "name": "ensure_reranker_compatible", + "description": "If true, the URL returned for the index is guaranteed to be compatible with the reranker.\nCurrently this means we return the CP URL regardless of how the index is being accessed.\nIf not set or set to false, the URL may still be compatible with the reranker depending on\nwhat URL we return.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "index_name", + "description": "Name of the index", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "index_name", + "description": "Name of the index", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListIndexes", + "description": "List all indexes in the given endpoint.", + "summary": "List indexes.", + "path": "/api/2.0/vector-search/indexes", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListIndexesRequest", + "is_object": true, + "required_fields": [ + { + "name": "endpoint_name", + "description": "Name of the endpoint", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "endpoint_name", + "description": "Name of the endpoint", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListVectorIndexesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "endpoint_name", + "description": "Name of the endpoint", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_token", + "description": "Token for pagination", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "endpoint_name", + "description": "Name of the endpoint", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Token for pagination", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "QueryIndex", + "description": "Query the specified vector index.", + "summary": "Query an index.", + "path": "/api/2.0/vector-search/indexes/{index_name}/query", + "can_use_json": true, + "must_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "QueryVectorIndexRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "index_name", + "description": "Name of the vector index to query.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "columns", + "description": "List of column names to include in the response.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_in_url_fields": [ + { + "name": "index_name", + "description": "Name of the vector index to query.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "columns", + "description": "List of column names to include in the response.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ] + }, + "response": { + "pascal_name": "QueryVectorIndexResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "columns", + "description": "List of column names to include in the response.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "columns_to_rerank", + "description": "Column names used to retrieve data to send to the reranker.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "facets", + "description": "Facets to compute over the matched results. Each entry has one of these forms:\n`\"\u003ccolumn\u003e\"` - top 10 distinct values by count\n`\"\u003ccolumn\u003e TOP \u003cn\u003e\"` - top n distinct values, where n \u003e 0\n`\"\u003ccolumn\u003e BUCKETS [[from,to],...]\"` - inclusive numeric ranges\n`TOP` and `BUCKETS` are case-insensitive. A column may appear at most once.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "filters_json", + "description": "JSON string representing query filters.\n\nExample filters:\n\n- `{\"id \u003c\": 5}`: Filter for id less than 5.\n- `{\"id \u003e\": 5}`: Filter for id greater than 5.\n- `{\"id \u003c=\": 5}`: Filter for id less than equal to 5.\n- `{\"id \u003e=\": 5}`: Filter for id greater than equal to 5.\n- `{\"id\": 5}`: Filter for id equal to 5.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_name", + "description": "Name of the vector index to query.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "num_results", + "description": "Number of results to return. Defaults to 10.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "query_columns", + "description": "Text columns to search for `query_text`. When empty, all text columns are searched.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + }, + { + "name": "query_text", + "description": "Query text. Required for Delta Sync Index using model endpoint.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_type", + "description": "The query type to use. Choices are `ANN` and `HYBRID` and `FULL_TEXT`. Defaults to `ANN`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "query_vector", + "description": "Query vector. Required for Direct Vector Access Index and Delta Sync Index using self-managed vectors.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_float64": true + } + } + }, + { + "name": "reranker", + "description": "If set, the top 50 results are reranked with the Databricks Reranker model before returning the `num_results` results to the user.\nThe setting `columns_to_rerank` selects which columns are used for reranking. For each datapoint, the columns selected are concatenated before\nbeing sent to the reranking model. See https://docs.databricks.com/aws/en/vector-search/query-vector-search#rerank for more information.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RerankerConfig", + "is_object": true + } + }, + { + "name": "score_threshold", + "description": "Threshold for the approximate nearest neighbor search. Defaults to 0.0.", + "is_request_body_field": true, + "entity": { + "is_float64": true + } + }, + { + "name": "sort_columns", + "description": "Sort results by column values instead of the default relevance ordering.\nEach clause has the form `\"\u003ccolumn\u003e ASC\"` or `\"\u003ccolumn\u003e DESC\"`, for example\n`[\"rating DESC\", \"price ASC\"]`.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_string": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "index_name", + "description": "Name of the vector index to query.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "QueryNextPage", + "description": "Use `next_page_token` returned from previous `QueryVectorIndex` or `QueryVectorIndexNextPage` request to fetch next page of results.", + "summary": "Query next page.", + "path": "/api/2.0/vector-search/indexes/{index_name}/query-next-page", + "can_use_json": true, + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "QueryVectorIndexNextPageRequest", + "is_object": true, + "required_fields": [ + { + "name": "index_name", + "description": "Name of the vector index to query.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "index_name", + "description": "Name of the vector index to query.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "QueryVectorIndexResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "endpoint_name", + "description": "Name of the endpoint.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "index_name", + "description": "Name of the vector index to query.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_token", + "description": "Page token returned from previous `QueryVectorIndex` or `QueryVectorIndexNextPage` API.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "index_name", + "description": "Name of the vector index to query.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ScanIndex", + "description": "Scan the specified vector index and return the first `num_results` entries after the exclusive `primary_key`.", + "summary": "Scan an index.", + "path": "/api/2.0/vector-search/indexes/{index_name}/scan", + "can_use_json": true, + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ScanVectorIndexRequest", + "is_object": true, + "required_fields": [ + { + "name": "index_name", + "description": "Name of the vector index to scan.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "index_name", + "description": "Name of the vector index to scan.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ScanVectorIndexResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "index_name", + "description": "Name of the vector index to scan.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "last_primary_key", + "description": "Primary key of the last entry returned in the previous scan.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "num_results", + "description": "Number of results to return. Defaults to 10.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + } + ], + "required_positional_arguments": [ + { + "name": "index_name", + "description": "Name of the vector index to scan.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SyncIndex", + "description": "Triggers a synchronization process for a specified vector index.", + "summary": "Synchronize an index.", + "path": "/api/2.0/vector-search/indexes/{index_name}/sync", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SyncIndexRequest", + "is_object": true, + "required_fields": [ + { + "name": "index_name", + "description": "Name of the vector index to synchronize. Must be a Delta Sync Index.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "index_name", + "description": "Name of the vector index to synchronize. Must be a Delta Sync Index.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "SyncIndexResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "index_name", + "description": "Name of the vector index to synchronize. Must be a Delta Sync Index.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "index_name", + "description": "Name of the vector index to synchronize. Must be a Delta Sync Index.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpsertDataVectorIndex", + "description": "Handles the upserting of data into a specified vector index.", + "summary": "Upsert data into an index.", + "path": "/api/2.0/vector-search/indexes/{index_name}/upsert-data", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpsertDataVectorIndexRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "index_name", + "description": "Name of the vector index where data is to be upserted. Must be a Direct Vector Access Index.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "inputs_json", + "description": "JSON string representing the data to be upserted.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "index_name", + "description": "Name of the vector index where data is to be upserted. Must be a Direct Vector Access Index.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "inputs_json", + "description": "JSON string representing the data to be upserted.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpsertDataVectorIndexResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "index_name", + "description": "Name of the vector index where data is to be upserted. Must be a Direct Vector Access Index.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "inputs_json", + "description": "JSON string representing the data to be upserted.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "index_name", + "description": "Name of the vector index where data is to be upserted. Must be a Direct Vector Access Index.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "inputs_json", + "description": "JSON string representing the data to be upserted.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "catalog.Volumes", + "name": "Volumes", + "description": "Volumes are a Unity Catalog (UC) capability for accessing, storing, governing,\norganizing, and processing files. Use cases include running machine learning\non unstructured data such as image, audio, video, or PDF files, organizing data sets\nduring the data exploration stages in data science, working with libraries\nthat require access to the local file system on cluster machines, storing library\nand config files of arbitrary formats such as .whl or .txt centrally\nand providing secure access to those files across workspaces,\nor transforming and querying non-tabular data files in ETL.", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "VolumeInfoNameToVolumeIdMap" + }, + "request": { + "pascal_name": "ListVolumesRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new volume.\n\nThe user could create either an external volume or a managed volume. An external volume\nwill be created in the specified external location, while a managed volume\nwill be located in the default location which is specified by the parent schema,\nor the parent catalog, or the Metastore.\n\nFor the volume creation to succeed, the user must satisfy following conditions:\n- The caller must be a metastore admin, or be the owner of the parent catalog and schema,\nor have the **USE_CATALOG** privilege on the parent catalog\nand the **USE_SCHEMA** privilege on the parent schema.\n- The caller must have **CREATE VOLUME** privilege on the parent schema.\n\nFor an external volume, following conditions also need to satisfy\n- The caller must have **CREATE EXTERNAL VOLUME** privilege on the external location.\n- There are no other tables, nor volumes existing in the specified storage location.\n- The specified storage location is not under the location of other tables, nor volumes,\nor catalogs or schemas.", + "summary": "Create a Volume.", + "path": "/api/2.1/unity-catalog/volumes", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateVolumeRequestContent", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the volume are", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the volume is", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the volume", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "volume_type", + "description": "The type of the volume. An external volume is located in the specified external location.\nA managed volume is located in the default location which is specified by the parent schema, or the parent catalog, or the Metastore.\n[Learn more](https://docs.databricks.com/aws/en/volumes/managed-vs-external)", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VolumeType", + "enum": [ + { + "content": "EXTERNAL" + }, + { + "content": "MANAGED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the volume are", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the volume is", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the volume", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "volume_type", + "description": "The type of the volume. An external volume is located in the specified external location.\nA managed volume is located in the default location which is specified by the parent schema, or the parent catalog, or the Metastore.\n[Learn more](https://docs.databricks.com/aws/en/volumes/managed-vs-external)", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VolumeType", + "enum": [ + { + "content": "EXTERNAL" + }, + { + "content": "MANAGED" + } + ] + } + } + ] + }, + "response": { + "pascal_name": "VolumeInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the volume are", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "comment", + "description": "The comment attached to the volume", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the volume", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the volume is", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_location", + "description": "The storage location on the cloud", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "volume_type", + "description": "The type of the volume. An external volume is located in the specified external location.\nA managed volume is located in the default location which is specified by the parent schema, or the parent catalog, or the Metastore.\n[Learn more](https://docs.databricks.com/aws/en/volumes/managed-vs-external)", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VolumeType", + "enum": [ + { + "content": "EXTERNAL" + }, + { + "content": "MANAGED" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "catalog_name", + "description": "The name of the catalog where the schema and the volume are", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The name of the schema where the volume is", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The name of the volume", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "volume_type", + "description": "The type of the volume. An external volume is located in the specified external location.\nA managed volume is located in the default location which is specified by the parent schema, or the parent catalog, or the Metastore.\n[Learn more](https://docs.databricks.com/aws/en/volumes/managed-vs-external)", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "VolumeType", + "enum": [ + { + "content": "EXTERNAL" + }, + { + "content": "MANAGED" + } + ] + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a volume from the specified parent catalog and schema.\n\nThe caller must be a metastore admin or an owner of the volume.\nFor the latter case, the caller must also be the owner or have the **USE_CATALOG**\nprivilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema.", + "summary": "Delete a Volume.", + "path": "/api/2.1/unity-catalog/volumes/{name}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteVolumeRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The three-level (fully qualified) name of the volume", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The three-level (fully qualified) name of the volume", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "The three-level (fully qualified) name of the volume", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The three-level (fully qualified) name of the volume", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Gets an array of volumes for the current metastore\nunder the parent catalog and schema.\n\nThe returned volumes are filtered based on the privileges of the calling user.\nFor example, the metastore admin is able to list all the volumes.\nA regular user needs to be the owner or have the **READ VOLUME** privilege\non the volume to receive the volumes in the response.\nFor the latter case, the caller must also be the owner or have the **USE_CATALOG**\nprivilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema.\n\nThere is no guarantee of a specific ordering of the elements in the array.\n\nPAGINATION BEHAVIOR: The API is by default paginated, a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "List Volumes.", + "path": "/api/2.1/unity-catalog/volumes", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListVolumesRequest", + "is_object": true, + "required_fields": [ + { + "name": "catalog_name", + "description": "The identifier of the catalog", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The identifier of the schema", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "catalog_name", + "description": "The identifier of the catalog", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The identifier of the schema", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListVolumesResponseContent", + "is_object": true + }, + "all_fields": [ + { + "name": "catalog_name", + "description": "The identifier of the catalog", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "include_browse", + "description": "Whether to include volumes in the response for which the principal can only access selective metadata for", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "max_results", + "description": "Maximum number of volumes to return (page length).\n\nIf not set, the page length is set to a server configured value (10000, as of 1/29/2024).\n- when set to a value greater than 0, the page length is the minimum of this value and a server configured value (10000, as of 1/29/2024);\n- when set to 0, the page length is set to a server configured value (10000, as of 1/29/2024) (recommended);\n- when set to a value less than 0, an invalid parameter error is returned;\n\nNote: this parameter controls only the maximum number of volumes to return. The actual number of volumes returned in a page\nmay be smaller than this value, including 0, even if there are more pages.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque token returned by a previous request. It must be included in the request to retrieve the next page of results (pagination).", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The identifier of the schema", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "catalog_name", + "description": "The identifier of the catalog", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "schema_name", + "description": "The identifier of the schema", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque token returned by a previous request. It must be included in the request to retrieve the next page of results (pagination).", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "Read", + "description": "Gets a volume from the metastore for a specific catalog and schema.\n\nThe caller must be a metastore admin or an owner of (or have the **READ VOLUME**\nprivilege on) the volume.\nFor the latter case, the caller must also be the owner or have the **USE_CATALOG**\nprivilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema.", + "summary": "Get a Volume.", + "path": "/api/2.1/unity-catalog/volumes/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ReadVolumeRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The three-level (fully qualified) name of the volume", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The three-level (fully qualified) name of the volume", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "VolumeInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "include_browse", + "description": "Whether to include volumes in the response for which the principal can only access selective metadata for", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "name", + "description": "The three-level (fully qualified) name of the volume", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The three-level (fully qualified) name of the volume", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Update", + "description": "Updates the specified volume under the specified parent catalog and schema.\n\nThe caller must be a metastore admin or an owner of the volume.\nFor the latter case, the caller must also be the owner or have the **USE_CATALOG**\nprivilege on the parent catalog and the **USE_SCHEMA** privilege on the parent schema.\n\nCurrently only the name, the owner or the comment of the volume could be updated.", + "summary": "Update a Volume.", + "path": "/api/2.1/unity-catalog/volumes/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateVolumeRequestContent", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The three-level (fully qualified) name of the volume", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The three-level (fully qualified) name of the volume", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "VolumeInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "comment", + "description": "The comment attached to the volume", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The three-level (fully qualified) name of the volume", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "new_name", + "description": "New name for the volume.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "owner", + "description": "The identifier of the user who owns the volume", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The three-level (fully qualified) name of the volume", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "provisioning.VpcEndpoints", + "name": "VpcEndpoints", + "description": "These APIs manage VPC endpoint configurations for this account.", + "package": { + "name": "provisioning" + }, + "is_accounts": true, + "docs_group": "provisioning", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Create", + "description": "Creates a VPC endpoint configuration, which represents a\n[VPC endpoint](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints.html)\nobject in AWS used to communicate privately with Databricks over\n[AWS PrivateLink](https://aws.amazon.com/privatelink).\n\nAfter you create the VPC endpoint configuration, the Databricks\n[endpoint service](https://docs.aws.amazon.com/vpc/latest/privatelink/privatelink-share-your-services.html)\nautomatically accepts the VPC endpoint.\n\nBefore configuring PrivateLink, read the\n[Databricks article about PrivateLink](https://docs.databricks.com/administration-guide/cloud-configurations/aws/privatelink.html).", + "summary": "Create a VPC endpoint configuration.", + "path": "/api/2.0/accounts/{account_id}/vpc-endpoints", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateVpcEndpointRequest", + "is_object": true + }, + "response": { + "pascal_name": "VpcEndpoint", + "is_object": true + }, + "all_fields": [ + { + "name": "aws_vpc_endpoint_id", + "description": "The ID of the VPC endpoint object in AWS.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "gcp_vpc_endpoint_info", + "description": "The cloud info of this vpc endpoint.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GcpVpcEndpointInfo", + "is_object": true + } + }, + { + "name": "region", + "description": "The region in which this VPC endpoint object exists.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "vpc_endpoint_name", + "description": "The human-readable name of the storage configuration.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a Databricks VPC endpoint configuration. You cannot delete a VPC endpoint configuration that is associated with any workspace.", + "summary": "Delete a VPC endpoint configuration.", + "path": "/api/2.0/accounts/{account_id}/vpc-endpoints/{vpc_endpoint_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteVpcEndpointRequest", + "is_object": true, + "required_fields": [ + { + "name": "vpc_endpoint_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "vpc_endpoint_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "VpcEndpoint", + "is_object": true + }, + "all_fields": [ + { + "name": "vpc_endpoint_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "vpc_endpoint_id", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets a VPC endpoint configuration, which represents\na [VPC endpoint](https://docs.aws.amazon.com/vpc/latest/privatelink/concepts.html)\nobject in AWS used to communicate privately with Databricks over\n[AWS PrivateLink](https://aws.amazon.com/privatelink).", + "summary": "Get a VPC endpoint configuration.", + "path": "/api/2.0/accounts/{account_id}/vpc-endpoints/{vpc_endpoint_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetVpcEndpointRequest", + "is_object": true, + "required_fields": [ + { + "name": "vpc_endpoint_id", + "description": "Databricks VPC endpoint ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "vpc_endpoint_id", + "description": "Databricks VPC endpoint ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "VpcEndpoint", + "is_object": true + }, + "all_fields": [ + { + "name": "vpc_endpoint_id", + "description": "Databricks VPC endpoint ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "vpc_endpoint_id", + "description": "Databricks VPC endpoint ID.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Lists Databricks VPC endpoint configurations for an account.", + "summary": "List VPC endpoint configurations.", + "path": "/api/2.0/accounts/{account_id}/vpc-endpoints", + "is_legacy_empty_request": true, + "is_crud_read": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListVpcEndpointsRequest", + "is_object": true + }, + "response": { + "pascal_name": "VpcEndpointList", + "array_value": { + "pascal_name": "VpcEndpoint", + "is_object": true + } + } + } + ] + }, + { + "id": "sql.Warehouses", + "name": "Warehouses", + "description": "A SQL warehouse is a compute resource that lets you run SQL commands on data objects within Databricks SQL. Compute resources are infrastructure resources that provide processing capabilities in the cloud.", + "package": { + "name": "sql" + }, + "docs_group": "sql", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "EndpointInfoNameToIdMap" + }, + "request": { + "pascal_name": "ListWarehousesRequest" + } + }, + "methods": [ + { + "name": "Create", + "description": "Creates a new SQL warehouse.", + "summary": "Create a warehouse.", + "path": "/api/2.0/sql/warehouses", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateWarehouseRequest", + "is_object": true + }, + "response": { + "pascal_name": "CreateWarehouseResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "auto_stop_mins", + "description": "The amount of time in minutes that a SQL warehouse must be idle (i.e., no\nRUNNING queries) before it is automatically stopped.\n\nSupported values:\n- Must be == 0 or \u003e= 10 mins\n- 0 indicates no autostop.\n\nDefaults to 120 mins", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "channel", + "description": "Channel Details", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Channel", + "is_object": true + } + }, + { + "name": "cluster_size", + "description": "Size of the clusters allocated for this warehouse.\nIncreasing the size of a spark cluster allows you to run larger queries on\nit. If you want to increase the number of concurrent queries, please tune\nmax_num_clusters.\n\nSupported values:\n- 2X-Small\n- X-Small\n- Small\n- Medium\n- Large\n- X-Large\n- 2X-Large\n- 3X-Large\n- 4X-Large\n- 5X-Large", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "creator_name", + "description": "warehouse creator name", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "enable_photon", + "description": "Configures whether the warehouse should use Photon optimized clusters.\n\nDefaults to true.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "enable_serverless_compute", + "description": "Configures whether the warehouse should use serverless compute", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "instance_profile_arn", + "description": "Deprecated. Instance profile used to pass IAM role to the cluster", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_num_clusters", + "description": "Maximum number of clusters that the autoscaler will create to handle\nconcurrent queries.\n\nSupported values:\n- Must be \u003e= min_num_clusters\n- Must be \u003c= 40.\n\nDefaults to min_clusters if unset.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "min_num_clusters", + "description": "Minimum number of available clusters that will be maintained for this SQL\nwarehouse. Increasing this will ensure that a larger number of clusters are\nalways running and therefore may reduce the cold start time for new\nqueries. This is similar to reserved vs. revocable cores in a resource\nmanager.\n\nSupported values:\n- Must be \u003e 0\n- Must be \u003c= min(max_num_clusters, 30)\n\nDefaults to 1", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "name", + "description": "Logical name for the cluster.\n\nSupported values:\n- Must be unique within an org.\n- Must be less than 100 characters.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spot_instance_policy", + "description": "Configurations whether the endpoint should use spot instances.", + "is_request_body_field": true, + "entity": { + "pascal_name": "SpotInstancePolicy", + "enum": [ + { + "content": "COST_OPTIMIZED" + }, + { + "content": "POLICY_UNSPECIFIED" + }, + { + "content": "RELIABILITY_OPTIMIZED" + } + ] + } + }, + { + "name": "statement_timeout", + "description": "Warehouse statement timeout in seconds.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "tags", + "description": "A set of key-value pairs that will be tagged on all resources (e.g., AWS instances and EBS volumes) associated\nwith this SQL warehouse.\n\nSupported values:\n- Number of tags \u003c 45.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EndpointTags", + "is_object": true + } + }, + { + "name": "warehouse_type", + "description": "Warehouse type: `PRO` or `CLASSIC`. If you want to use serverless compute,\nyou must set to `PRO` and also set the field `enable_serverless_compute` to `true`.", + "is_request_body_field": true, + "entity": { + "pascal_name": "CreateWarehouseRequestWarehouseType", + "enum": [ + { + "content": "CLASSIC" + }, + { + "content": "PRO" + }, + { + "content": "REALTIME" + }, + { + "content": "TYPE_UNSPECIFIED" + } + ] + } + } + ], + "wait": { + "success": [ + { + "content": "RUNNING" + } + ], + "timeout": 20, + "complex_message_path": true, + "poll": { + "response": { + "pascal_name": "GetWarehouseResponse" + } + }, + "status_path": [ + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "Health" + }, + { + "pascal_name": "Summary" + } + ], + "message_path_head": { + "pascal_name": "Health" + } + } + }, + { + "name": "CreateDefaultWarehouseOverride", + "description": "Creates a new default warehouse override for a user.\nUsers can create their own override. Admins can create overrides for any user.", + "summary": "Create default warehouse override.", + "path": "/api/warehouses/v1/default-warehouse-overrides", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateDefaultWarehouseOverrideRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "default_warehouse_override", + "description": "Required. The default warehouse override to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverride", + "is_object": true + } + }, + { + "name": "default_warehouse_override_id", + "description": "Required. The ID to use for the override, which will become the final component\nof the override's resource name.\nCan be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "default_warehouse_override_id", + "description": "Required. The ID to use for the override, which will become the final component\nof the override's resource name.\nCan be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "default_warehouse_override", + "description": "Required. The default warehouse override to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverride", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "default_warehouse_override", + "description": "Required. The default warehouse override to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverride", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "DefaultWarehouseOverride", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "default_warehouse_override", + "description": "Required. The default warehouse override to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverride", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ] + } + }, + { + "name": "default_warehouse_override_id", + "description": "Required. The ID to use for the override, which will become the final component\nof the override's resource name.\nCan be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "default_warehouse_override_id", + "description": "The ID component of the resource name (user ID).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The resource name of the default warehouse override.\nFormat: default-warehouse-overrides/{default_warehouse_override_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + }, + { + "name": "warehouse_id", + "description": "The specific warehouse ID when type is CUSTOM.\nNot set for LAST_SELECTED type.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "default_warehouse_override_id", + "description": "Required. The ID to use for the override, which will become the final component\nof the override's resource name.\nCan be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ] + }, + { + "name": "Delete", + "description": "Deletes a SQL warehouse.", + "summary": "Delete a warehouse.", + "path": "/api/2.0/sql/warehouses/{id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteWarehouseRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteWarehouseResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteDefaultWarehouseOverride", + "description": "Deletes the default warehouse override for a user.\nUsers can delete their own override. Admins can delete overrides for any user.\nAfter deletion, the workspace default warehouse will be used.", + "summary": "Delete default warehouse override.", + "path": "/api/warehouses/v1/{name=default-warehouse-overrides/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteDefaultWarehouseOverrideRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Required. The resource name of the default warehouse override to delete.\nFormat: default-warehouse-overrides/{default_warehouse_override_id}\nThe default_warehouse_override_id can be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Required. The resource name of the default warehouse override to delete.\nFormat: default-warehouse-overrides/{default_warehouse_override_id}\nThe default_warehouse_override_id can be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The resource name of the default warehouse override to delete.\nFormat: default-warehouse-overrides/{default_warehouse_override_id}\nThe default_warehouse_override_id can be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Required. The resource name of the default warehouse override to delete.\nFormat: default-warehouse-overrides/{default_warehouse_override_id}\nThe default_warehouse_override_id can be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Edit", + "description": "Updates the configuration for a SQL warehouse.", + "summary": "Update a warehouse.", + "path": "/api/2.0/sql/warehouses/{id}/edit", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "EditWarehouseRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Required. Id of the warehouse to configure.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Required. Id of the warehouse to configure.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "EditWarehouseResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "auto_stop_mins", + "description": "The amount of time in minutes that a SQL warehouse must be idle (i.e., no\nRUNNING queries) before it is automatically stopped.\n\nSupported values:\n- Must be == 0 or \u003e= 10 mins\n- 0 indicates no autostop.\n\nDefaults to 120 mins", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "channel", + "description": "Channel Details", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Channel", + "is_object": true + } + }, + { + "name": "cluster_size", + "description": "Size of the clusters allocated for this warehouse.\nIncreasing the size of a spark cluster allows you to run larger queries on\nit. If you want to increase the number of concurrent queries, please tune\nmax_num_clusters.\n\nSupported values:\n- 2X-Small\n- X-Small\n- Small\n- Medium\n- Large\n- X-Large\n- 2X-Large\n- 3X-Large\n- 4X-Large\n- 5X-Large", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "creator_name", + "description": "warehouse creator name", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "enable_photon", + "description": "Configures whether the warehouse should use Photon optimized clusters.\n\nDefaults to true.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "enable_serverless_compute", + "description": "Configures whether the warehouse should use serverless compute", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "id", + "description": "Required. Id of the warehouse to configure.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "instance_profile_arn", + "description": "Deprecated. Instance profile used to pass IAM role to the cluster", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "max_num_clusters", + "description": "Maximum number of clusters that the autoscaler will create to handle\nconcurrent queries.\n\nSupported values:\n- Must be \u003e= min_num_clusters\n- Must be \u003c= 40.\n\nDefaults to min_clusters if unset.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "min_num_clusters", + "description": "Minimum number of available clusters that will be maintained for this SQL\nwarehouse. Increasing this will ensure that a larger number of clusters are\nalways running and therefore may reduce the cold start time for new\nqueries. This is similar to reserved vs. revocable cores in a resource\nmanager.\n\nSupported values:\n- Must be \u003e 0\n- Must be \u003c= min(max_num_clusters, 30)\n\nDefaults to 1", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "name", + "description": "Logical name for the cluster.\n\nSupported values:\n- Must be unique within an org.\n- Must be less than 100 characters.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "spot_instance_policy", + "description": "Configurations whether the endpoint should use spot instances.", + "is_request_body_field": true, + "entity": { + "pascal_name": "SpotInstancePolicy", + "enum": [ + { + "content": "COST_OPTIMIZED" + }, + { + "content": "POLICY_UNSPECIFIED" + }, + { + "content": "RELIABILITY_OPTIMIZED" + } + ] + } + }, + { + "name": "statement_timeout", + "description": "Warehouse statement timeout in seconds.", + "is_request_body_field": true, + "entity": { + "is_int": true + } + }, + { + "name": "tags", + "description": "A set of key-value pairs that will be tagged on all resources (e.g., AWS instances and EBS volumes) associated\nwith this SQL warehouse.\n\nSupported values:\n- Number of tags \u003c 45.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "EndpointTags", + "is_object": true + } + }, + { + "name": "warehouse_type", + "description": "Warehouse type: `PRO` or `CLASSIC`. If you want to use serverless compute,\nyou must set to `PRO` and also set the field `enable_serverless_compute` to `true`.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EditWarehouseRequestWarehouseType", + "enum": [ + { + "content": "CLASSIC" + }, + { + "content": "PRO" + }, + { + "content": "REALTIME" + }, + { + "content": "TYPE_UNSPECIFIED" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Required. Id of the warehouse to configure.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "RUNNING" + } + ], + "timeout": 20, + "complex_message_path": true, + "poll": { + "response": { + "pascal_name": "GetWarehouseResponse" + } + }, + "status_path": [ + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "Health" + }, + { + "pascal_name": "Summary" + } + ], + "message_path_head": { + "pascal_name": "Health" + } + } + }, + { + "name": "Get", + "description": "Gets the information for a single SQL warehouse.", + "summary": "Get warehouse info.", + "path": "/api/2.0/sql/warehouses/{id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetWarehouseRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetWarehouseResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetDefaultWarehouseOverride", + "description": "Returns the default warehouse override for a user.\nUsers can fetch their own override. Admins can fetch overrides for any user.\nIf no override exists, the UI will fallback to the workspace default warehouse.", + "summary": "Get default warehouse override.", + "path": "/api/warehouses/v1/{name=default-warehouse-overrides/*}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetDefaultWarehouseOverrideRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Required. The resource name of the default warehouse override to retrieve.\nFormat: default-warehouse-overrides/{default_warehouse_override_id}\nThe default_warehouse_override_id can be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Required. The resource name of the default warehouse override to retrieve.\nFormat: default-warehouse-overrides/{default_warehouse_override_id}\nThe default_warehouse_override_id can be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DefaultWarehouseOverride", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The resource name of the default warehouse override to retrieve.\nFormat: default-warehouse-overrides/{default_warehouse_override_id}\nThe default_warehouse_override_id can be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Required. The resource name of the default warehouse override to retrieve.\nFormat: default-warehouse-overrides/{default_warehouse_override_id}\nThe default_warehouse_override_id can be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get SQL warehouse permission levels.", + "path": "/api/2.0/permissions/warehouses/{warehouse_id}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetWarehousePermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetWarehousePermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of a SQL warehouse. SQL warehouses can inherit permissions from their root object.", + "summary": "Get SQL warehouse permissions.", + "path": "/api/2.0/permissions/warehouses/{warehouse_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetWarehousePermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "WarehousePermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetWorkspaceWarehouseConfig", + "description": "Gets the workspace level configuration that is shared by all SQL warehouses in a workspace.", + "summary": "Get the workspace configuration.", + "path": "/api/2.0/sql/config/warehouses", + "is_legacy_empty_request": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetWorkspaceWarehouseConfigRequest", + "is_object": true + }, + "response": { + "pascal_name": "GetWorkspaceWarehouseConfigResponse", + "is_object": true + } + }, + { + "name": "List", + "description": "Lists all SQL warehouses that a user has access to.", + "summary": "List warehouses.", + "path": "/api/2.0/sql/warehouses", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListWarehousesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListWarehousesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The max number of warehouses to return.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListWarehouses` call.\nProvide this to retrieve the subsequent page; otherwise the first\nwill be retrieved.\n\nWhen paginating, all other parameters provided to `ListWarehouses` must match\nthe call that provided the page token.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "run_as_user_id", + "description": "Deprecated: this field is ignored by the server.\nService Principal which will be used to fetch the list of endpoints.\nIf not specified, SQL Gateway will use the user from the session header.", + "is_query": true, + "entity": { + "is_int": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListWarehouses` call.\nProvide this to retrieve the subsequent page; otherwise the first\nwill be retrieved.\n\nWhen paginating, all other parameters provided to `ListWarehouses` must match\nthe call that provided the page token.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListDefaultWarehouseOverrides", + "description": "Lists all default warehouse overrides in the workspace.\nOnly workspace administrators can list all overrides.", + "summary": "List default warehouse overrides.", + "path": "/api/warehouses/v1/default-warehouse-overrides", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListDefaultWarehouseOverridesRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListDefaultWarehouseOverridesResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of overrides to return. The service may return fewer than\nthis value.\nIf unspecified, at most 100 overrides will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListDefaultWarehouseOverrides` call.\nProvide this to retrieve the subsequent page.\n\nWhen paginating, all other parameters provided to `ListDefaultWarehouseOverrides`\nmust match the call that provided the page token.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListDefaultWarehouseOverrides` call.\nProvide this to retrieve the subsequent page.\n\nWhen paginating, all other parameters provided to `ListDefaultWarehouseOverrides`\nmust match the call that provided the page token.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their root object.", + "summary": "Set SQL warehouse permissions.", + "path": "/api/2.0/permissions/warehouses/{warehouse_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "WarehousePermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "WarehousePermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "WarehouseAccessControlRequestList", + "array_value": { + "pascal_name": "WarehouseAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SetWorkspaceWarehouseConfig", + "description": "Sets the workspace level configuration that is shared by all SQL warehouses in a workspace.", + "summary": "Set the workspace configuration.", + "path": "/api/2.0/sql/config/warehouses", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "SetWorkspaceWarehouseConfigRequest", + "is_object": true + }, + "response": { + "pascal_name": "SetWorkspaceWarehouseConfigResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "channel", + "description": "Optional: Channel selection details", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "Channel", + "is_object": true + } + }, + { + "name": "config_param", + "description": "Deprecated: Use sql_configuration_parameters", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RepeatedEndpointConfPairs", + "is_object": true + } + }, + { + "name": "data_access_config", + "description": "Spark confs for external hive metastore configuration\nJSON serialized size must be less than \u003c= 512K", + "is_request_body_field": true, + "entity": { + "pascal_name": "EndpointConfPairList", + "array_value": { + "pascal_name": "EndpointConfPair", + "is_object": true + } + } + }, + { + "name": "enable_serverless_compute", + "description": "Deprecated: only setting this to true is allowed.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "enabled_warehouse_types", + "description": "List of Warehouse Types allowed in this workspace (limits allowed value of\nthe type field in CreateWarehouse and EditWarehouse). Note: Some types\ncannot be disabled, they don't need to be specified\nin SetWorkspaceWarehouseConfig.\nNote: Disabling a type may cause existing warehouses to be converted to\nanother type. Used by frontend to save specific type availability in the\nwarehouse create and edit form UI.", + "is_request_body_field": true, + "entity": { + "pascal_name": "WarehouseTypePairList", + "array_value": { + "pascal_name": "WarehouseTypePair", + "is_object": true + } + } + }, + { + "name": "global_param", + "description": "Deprecated: Use sql_configuration_parameters", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RepeatedEndpointConfPairs", + "is_object": true + } + }, + { + "name": "google_service_account", + "description": "GCP only: Google Service Account used to pass to cluster to access Google\nCloud Storage", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "instance_profile_arn", + "description": "AWS Only: The instance profile used to pass an IAM role to the SQL\nwarehouses. This configuration is also applied to the workspace's\nserverless compute for notebooks and jobs.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "security_policy", + "description": "Security policy for warehouses", + "is_request_body_field": true, + "entity": { + "pascal_name": "SetWorkspaceWarehouseConfigRequestSecurityPolicy", + "enum": [ + { + "content": "DATA_ACCESS_CONTROL" + }, + { + "content": "NONE" + }, + { + "content": "PASSTHROUGH" + } + ] + } + }, + { + "name": "sql_configuration_parameters", + "description": "SQL configuration parameters", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RepeatedEndpointConfPairs", + "is_object": true + } + } + ] + }, + { + "name": "Start", + "description": "Starts a SQL warehouse.", + "summary": "Start a warehouse.", + "path": "/api/2.0/sql/warehouses/{id}/start", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "StartRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "StartWarehouseResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "RUNNING" + } + ], + "timeout": 20, + "complex_message_path": true, + "poll": { + "response": { + "pascal_name": "GetWarehouseResponse" + } + }, + "status_path": [ + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "Health" + }, + { + "pascal_name": "Summary" + } + ], + "message_path_head": { + "pascal_name": "Health" + } + } + }, + { + "name": "Stop", + "description": "Stops a SQL warehouse.", + "summary": "Stop a warehouse.", + "path": "/api/2.0/sql/warehouses/{id}/stop", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "StopRequest", + "is_object": true, + "required_fields": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "StopWarehouseResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "id", + "description": "Required. Id of the SQL warehouse.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "STOPPED" + } + ], + "timeout": 20, + "complex_message_path": true, + "poll": { + "response": { + "pascal_name": "GetWarehouseResponse" + } + }, + "status_path": [ + { + "pascal_name": "State" + } + ], + "message_path": [ + { + "pascal_name": "Health" + }, + { + "pascal_name": "Summary" + } + ], + "message_path_head": { + "pascal_name": "Health" + } + } + }, + { + "name": "UpdateDefaultWarehouseOverride", + "description": "Updates an existing default warehouse override for a user.\nUsers can update their own override. Admins can update overrides for any user.", + "summary": "Update default warehouse override.", + "path": "/api/warehouses/v1/{name=default-warehouse-overrides/*}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateDefaultWarehouseOverrideRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "The resource name of the default warehouse override.\nFormat: default-warehouse-overrides/{default_warehouse_override_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "default_warehouse_override", + "description": "Required. The default warehouse override to update.\nThe name field must be set in the format: default-warehouse-overrides/{default_warehouse_override_id}\nThe default_warehouse_override_id can be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverride", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Required. Field mask specifying which fields to update.\nOnly the fields specified in the mask will be updated.\nUse \"*\" to update all fields.\nWhen allow_missing is true, this field is ignored and all fields are applied.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The resource name of the default warehouse override.\nFormat: default-warehouse-overrides/{default_warehouse_override_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Required. Field mask specifying which fields to update.\nOnly the fields specified in the mask will be updated.\nUse \"*\" to update all fields.\nWhen allow_missing is true, this field is ignored and all fields are applied.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "default_warehouse_override", + "description": "Required. The default warehouse override to update.\nThe name field must be set in the format: default-warehouse-overrides/{default_warehouse_override_id}\nThe default_warehouse_override_id can be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverride", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "default_warehouse_override", + "description": "Required. The default warehouse override to update.\nThe name field must be set in the format: default-warehouse-overrides/{default_warehouse_override_id}\nThe default_warehouse_override_id can be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverride", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "DefaultWarehouseOverride", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "allow_missing", + "description": "If set to true, and the override is not found, a new override will be created.\nIn this situation, `update_mask` is ignored and all fields are applied.\nDefaults to false.", + "is_query": true, + "entity": { + "is_bool": true + } + }, + { + "name": "default_warehouse_override", + "description": "Required. The default warehouse override to update.\nThe name field must be set in the format: default-warehouse-overrides/{default_warehouse_override_id}\nThe default_warehouse_override_id can be a numeric user ID or the literal string \"me\" for the current user.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverride", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ] + } + }, + { + "name": "name", + "description": "The resource name of the default warehouse override.\nFormat: default-warehouse-overrides/{default_warehouse_override_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Required. Field mask specifying which fields to update.\nOnly the fields specified in the mask will be updated.\nUse \"*\" to update all fields.\nWhen allow_missing is true, this field is ignored and all fields are applied.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "default_warehouse_override_id", + "description": "The ID component of the resource name (user ID).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "name", + "description": "The resource name of the default warehouse override.\nFormat: default-warehouse-overrides/{default_warehouse_override_id}", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + }, + { + "name": "warehouse_id", + "description": "The specific warehouse ID when type is CUSTOM.\nNot set for LAST_SELECTED type.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The resource name of the default warehouse override.\nFormat: default-warehouse-overrides/{default_warehouse_override_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Required. Field mask specifying which fields to update.\nOnly the fields specified in the mask will be updated.\nUse \"*\" to update all fields.\nWhen allow_missing is true, this field is ignored and all fields are applied.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "type", + "description": "The type of override behavior.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DefaultWarehouseOverrideType", + "enum": [ + { + "content": "CUSTOM" + }, + { + "content": "LAST_SELECTED" + } + ] + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on a SQL warehouse. SQL warehouses can inherit permissions from their root object.", + "summary": "Update SQL warehouse permissions.", + "path": "/api/2.0/permissions/warehouses/{warehouse_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "WarehousePermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "WarehousePermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "WarehouseAccessControlRequestList", + "array_value": { + "pascal_name": "WarehouseAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "warehouse_id", + "description": "The SQL warehouse for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "workspace.Workspace", + "name": "Workspace", + "description": "The Workspace API allows you to list, import, export, and delete workspace objects such as\nnotebooks, files, folders, and dashboards. Additionally, it provides endpoints to manage\npermissions for any workspace object.\n\nA notebook is a web-based interface to a document that contains runnable code,\nvisualizations, and explanatory text.", + "package": { + "name": "workspace" + }, + "docs_group": "workspace", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "named_id_map": { + "pascal_name": "ObjectInfoPathToObjectIdMap" + }, + "request": { + "pascal_name": "ListWorkspaceRequest" + } + }, + "methods": [ + { + "name": "Delete", + "description": "Deletes an object or a directory (and optionally recursively deletes all objects in the directory).\n* If `path` does not exist, this call returns an error `RESOURCE_DOES_NOT_EXIST`.\n* If `path` is a non-empty directory and `recursive` is set to `false`, this call returns an error `DIRECTORY_NOT_EMPTY`.\n\nObject deletion cannot be undone and deleting a directory recursively is not atomic.", + "summary": "Delete a workspace object.", + "path": "/api/2.0/workspace/delete", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "Delete", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "path", + "description": "The absolute path of the notebook or directory.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "path", + "description": "The absolute path of the notebook or directory.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "path", + "description": "The absolute path of the notebook or directory.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "recursive", + "description": "The flag that specifies whether to delete the object recursively. It is `false` by default.\nPlease note this deleting directory is not atomic. If it fails in the middle, some of objects\nunder this directory may be deleted and cannot be undone.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + } + ], + "required_positional_arguments": [ + { + "name": "path", + "description": "The absolute path of the notebook or directory.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Export", + "description": "Exports an object or the contents of an entire directory.\n\nIf `path` does not exist, this call returns an error `RESOURCE_DOES_NOT_EXIST`.\n\nIf the exported data would exceed size limit, this call returns `MAX_NOTEBOOK_SIZE_EXCEEDED`.\nCurrently, this API does not support exporting a library.", + "summary": "Export a workspace object.", + "path": "/api/2.0/workspace/export", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ExportRequest", + "is_object": true, + "required_fields": [ + { + "name": "path", + "description": "The absolute path of the object or directory. Exporting a directory is only supported for the `DBC`, `SOURCE`, and `AUTO` format.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "path", + "description": "The absolute path of the object or directory. Exporting a directory is only supported for the `DBC`, `SOURCE`, and `AUTO` format.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExportResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "format", + "description": "This specifies the format of the exported file. By default, this is `SOURCE`.\n\nThe value is case sensitive.\n\n- `SOURCE`: The notebook is exported as source code. Directory exports will not include non-notebook entries.\n- `HTML`: The notebook is exported as an HTML file.\n- `JUPYTER`: The notebook is exported as a Jupyter/IPython Notebook file.\n- `DBC`: The notebook is exported in Databricks archive format. Directory exports will not include non-notebook entries.\n- `R_MARKDOWN`: The notebook is exported to R Markdown format.\n- `AUTO`: The object or directory is exported depending on the objects type. Directory exports will include notebooks and workspace files.", + "is_query": true, + "entity": { + "pascal_name": "ExportFormat", + "enum": [ + { + "content": "AUTO" + }, + { + "content": "DBC" + }, + { + "content": "HTML" + }, + { + "content": "JUPYTER" + }, + { + "content": "RAW" + }, + { + "content": "R_MARKDOWN" + }, + { + "content": "SOURCE" + } + ] + } + }, + { + "name": "path", + "description": "The absolute path of the object or directory. Exporting a directory is only supported for the `DBC`, `SOURCE`, and `AUTO` format.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "path", + "description": "The absolute path of the object or directory. Exporting a directory is only supported for the `DBC`, `SOURCE`, and `AUTO` format.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissionLevels", + "description": "Gets the permission levels that a user can have on an object.", + "summary": "Get workspace object permission levels.", + "path": "/api/2.0/permissions/{workspace_object_type}/{workspace_object_id}/permissionLevels", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetWorkspaceObjectPermissionLevelsRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetWorkspaceObjectPermissionLevelsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetPermissions", + "description": "Gets the permissions of a workspace object. Workspace objects can inherit permissions from their parent objects or root object.", + "summary": "Get workspace object permissions.", + "path": "/api/2.0/permissions/{workspace_object_type}/{workspace_object_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetWorkspaceObjectPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "WorkspaceObjectPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetStatus", + "description": "Gets the status of an object or a directory.\nIf `path` does not exist, this call returns an error `RESOURCE_DOES_NOT_EXIST`.", + "summary": "Get status.", + "path": "/api/2.0/workspace/get-status", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetStatusRequest", + "is_object": true, + "required_fields": [ + { + "name": "path", + "description": "The absolute path of the notebook or directory.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "path", + "description": "The absolute path of the notebook or directory.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ObjectInfo", + "is_object": true + }, + "all_fields": [ + { + "name": "path", + "description": "The absolute path of the notebook or directory.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "path", + "description": "The absolute path of the notebook or directory.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "Import", + "description": "Imports a workspace object (for example, a notebook or file) or the contents of an entire directory.\nIf `path` already exists and `overwrite` is set to `false`, this call returns an error `RESOURCE_ALREADY_EXISTS`.\nTo import a directory, you can use either the `DBC` format or the `SOURCE` format with the `language` field unset.\nTo import a single file as `SOURCE`, you must set the `language` field.\nZip files within directories are not supported.", + "summary": "Import a workspace object.", + "path": "/api/2.0/workspace/import", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "Import", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "path", + "description": "The absolute path of the object or directory. Importing a directory is only supported for the `DBC` and `SOURCE` formats.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "path", + "description": "The absolute path of the object or directory. Importing a directory is only supported for the `DBC` and `SOURCE` formats.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ImportResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "content", + "description": "The base64-encoded content. This has a limit of 10 MB.\n\nIf the limit (10MB) is exceeded, exception with error code **MAX_NOTEBOOK_SIZE_EXCEEDED** is thrown.\nThis parameter might be absent, and instead a posted file is used.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "format", + "description": "This specifies the format of the file to be imported.\n\nThe value is case sensitive.\n\n- `AUTO`: The item is imported depending on an analysis of the item's extension and\nthe header content provided in the request. If the item is imported as a notebook,\nthen the item's extension is automatically removed.\n- `SOURCE`: The notebook or directory is imported as source code.\n- `HTML`: The notebook is imported as an HTML file.\n- `JUPYTER`: The notebook is imported as a Jupyter/IPython Notebook file.\n- `DBC`: The notebook is imported in Databricks archive format. Required for directories.\n- `R_MARKDOWN`: The notebook is imported from R Markdown format.", + "is_request_body_field": true, + "entity": { + "pascal_name": "ImportFormat", + "enum": [ + { + "content": "AUTO" + }, + { + "content": "DBC" + }, + { + "content": "HTML" + }, + { + "content": "JUPYTER" + }, + { + "content": "RAW" + }, + { + "content": "R_MARKDOWN" + }, + { + "content": "SOURCE" + } + ] + } + }, + { + "name": "language", + "description": "The language of the object. This value is set only if the object type is `NOTEBOOK`.", + "is_request_body_field": true, + "entity": { + "pascal_name": "Language", + "enum": [ + { + "content": "PYTHON" + }, + { + "content": "R" + }, + { + "content": "SCALA" + }, + { + "content": "SQL" + } + ] + } + }, + { + "name": "overwrite", + "description": "The flag that specifies whether to overwrite existing object. It is `false` by default.\nFor `DBC` format, `overwrite` is not supported since it may contain a directory.", + "is_request_body_field": true, + "entity": { + "is_bool": true + } + }, + { + "name": "path", + "description": "The absolute path of the object or directory. Importing a directory is only supported for the `DBC` and `SOURCE` formats.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "path", + "description": "The absolute path of the object or directory. Importing a directory is only supported for the `DBC` and `SOURCE` formats.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "List", + "description": "Lists the contents of a directory, or the object if it is not a directory.\nIf the input path does not exist, this call returns an error `RESOURCE_DOES_NOT_EXIST`.", + "summary": "List contents.", + "path": "/api/2.0/workspace/list", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListWorkspaceRequest", + "is_object": true, + "required_fields": [ + { + "name": "path", + "description": "The absolute path of the notebook or directory.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "path", + "description": "The absolute path of the notebook or directory.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "notebooks_modified_after", + "description": "UTC timestamp in milliseconds", + "is_query": true, + "entity": { + "is_int64": true + } + }, + { + "name": "path", + "description": "The absolute path of the notebook or directory.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "path", + "description": "The absolute path of the notebook or directory.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": {} + }, + { + "name": "Mkdirs", + "description": "Creates the specified directory (and necessary parent directories if they do not exist).\nIf there is an object (not a directory) at any prefix of the input path, this call returns\nan error `RESOURCE_ALREADY_EXISTS`.\n\nNote that if this operation fails it may have succeeded in creating some of the necessary parent directories.", + "summary": "Create a directory.", + "path": "/api/2.0/workspace/mkdirs", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "Mkdirs", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "path", + "description": "The absolute path of the directory. If the parent directories do not exist, it will also create them.\nIf the directory already exists, this command will do nothing and succeed.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "path", + "description": "The absolute path of the directory. If the parent directories do not exist, it will also create them.\nIf the directory already exists, this command will do nothing and succeed.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "MkdirsResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "path", + "description": "The absolute path of the directory. If the parent directories do not exist, it will also create them.\nIf the directory already exists, this command will do nothing and succeed.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "path", + "description": "The absolute path of the directory. If the parent directories do not exist, it will also create them.\nIf the directory already exists, this command will do nothing and succeed.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SetPermissions", + "description": "Sets permissions on an object, replacing existing permissions if they exist. Deletes all direct permissions if none are specified. Objects can inherit permissions from their parent objects or root object.", + "summary": "Set workspace object permissions.", + "path": "/api/2.0/permissions/{workspace_object_type}/{workspace_object_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "WorkspaceObjectPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "WorkspaceObjectPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceObjectAccessControlRequestList", + "array_value": { + "pascal_name": "WorkspaceObjectAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdatePermissions", + "description": "Updates the permissions on a workspace object. Workspace objects can inherit permissions from their parent objects or root object.", + "summary": "Update workspace object permissions.", + "path": "/api/2.0/permissions/{workspace_object_type}/{workspace_object_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "WorkspaceObjectPermissionsRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "WorkspaceObjectPermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "access_control_list", + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceObjectAccessControlRequestList", + "array_value": { + "pascal_name": "WorkspaceObjectAccessControlRequest", + "is_object": true + } + } + }, + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_object_type", + "description": "The workspace object type for which to get or manage permissions. Could be one of the following: alerts, alertsv2, dashboards, dbsql-dashboards, directories, experiments, files, genie, notebooks, queries", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_object_id", + "description": "The workspace object for which to get or manage permissions.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "iam.WorkspaceAssignment", + "name": "WorkspaceAssignment", + "description": "The Workspace Permission Assignment API allows you to manage workspace permissions for principals in your account.", + "package": { + "name": "iam" + }, + "is_accounts": true, + "docs_group": "iam", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListWorkspaceAssignmentRequest" + } + }, + "methods": [ + { + "name": "Delete", + "description": "Deletes the workspace permissions assignment in a given account and workspace for the specified principal.", + "summary": "Delete permissions assignment.", + "path": "/api/2.0/accounts/{account_id}/workspaces/{workspace_id}/permissionassignments/principals/{principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteWorkspaceAssignmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID for the account.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "The ID of the user, service principal, or group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID for the account.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "The ID of the user, service principal, or group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "DeleteWorkspacePermissionAssignmentResponse", + "is_object": true, + "is_empty_response": true + }, + "all_fields": [ + { + "name": "principal_id", + "description": "The ID of the user, service principal, or group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_id", + "description": "The workspace ID for the account.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "The workspace ID for the account.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "The ID of the user, service principal, or group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "Get", + "description": "Get an array of workspace permissions for the specified account and workspace.", + "summary": "List workspace permissions.", + "path": "/api/2.0/accounts/{account_id}/workspaces/{workspace_id}/permissionassignments/permissions", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetWorkspaceAssignmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "WorkspacePermissions", + "is_object": true + }, + "all_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "List", + "description": "Get the permission assignments for the specified Databricks account and Databricks workspace.", + "summary": "Get permission assignments.", + "path": "/api/2.0/accounts/{account_id}/workspaces/{workspace_id}/permissionassignments", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListWorkspaceAssignmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID for the account.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID for the account.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "PermissionAssignments", + "is_object": true + }, + "all_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID for the account.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "The workspace ID for the account.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "pagination": {} + }, + { + "name": "Update", + "description": "Creates or updates the workspace permissions assignment in a given account and workspace for the specified principal.", + "summary": "Create or update permissions assignment.", + "path": "/api/2.0/accounts/{account_id}/workspaces/{workspace_id}/permissionassignments/principals/{principal_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateWorkspaceAssignments", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "The ID of the user, service principal, or group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "The ID of the user, service principal, or group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "PermissionAssignment", + "is_object": true + }, + "all_fields": [ + { + "name": "permissions", + "description": "Array of permissions assignments to update on the workspace.\nValid values are \"USER\" and \"ADMIN\" (case-sensitive).\nIf both \"USER\" and \"ADMIN\" are provided, \"ADMIN\" takes precedence.\nOther values will be ignored.\nNote that excluding this field, or providing unsupported values, will have the same effect as providing an empty list, which will result in the deletion of all permissions for the principal.", + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspacePermissionList", + "array_value": { + "pascal_name": "WorkspacePermission", + "enum": [ + { + "content": "ADMIN" + }, + { + "content": "UNKNOWN" + }, + { + "content": "USER" + } + ] + } + } + }, + { + "name": "principal_id", + "description": "The ID of the user, service principal, or group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "The ID of the user, service principal, or group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + } + ] + }, + { + "id": "catalog.WorkspaceBindings", + "name": "WorkspaceBindings", + "description": "A securable in Databricks can be configured as __OPEN__ or __ISOLATED__. An __OPEN__ securable can\nbe accessed from any workspace, while an __ISOLATED__ securable can only be accessed from a configured\nlist of workspaces. This API allows you to configure (bind) securables to workspaces.\n\nNOTE:\nThe __isolation_mode__ is configured for the securable itself (using its Update method) and\nthe workspace bindings are only consulted when the securable's __isolation_mode__ is set to __ISOLATED__.\n\nA securable's workspace bindings can be configured by a metastore admin or the owner of the securable.\n\nThe original path (/api/2.1/unity-catalog/workspace-bindings/catalogs/{name}) is deprecated.\nUse the new path (/api/2.1/unity-catalog/bindings/{securable_type}/{securable_name}),\nwhich introduces the ability to bind a securable in READ_ONLY mode (catalogs only).\n\nSecurable types that support binding:\n- catalog\n- storage_credential\n- credential\n- external_location", + "package": { + "name": "catalog" + }, + "docs_group": "catalog", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Get", + "description": "Gets workspace bindings of the catalog.\nThe caller must be a metastore admin or an owner of the catalog.", + "summary": "Get catalog workspace bindings.", + "path": "/api/2.1/unity-catalog/workspace-bindings/catalogs/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetWorkspaceBindingRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetCatalogWorkspaceBindingsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetBindings", + "description": "Gets workspace bindings of the securable.\nThe caller must be a metastore admin or an owner of the securable.\n\nNOTE: we recommend using max_results=0 to use the paginated version of this API. Unpaginated calls will be deprecated soon.\n\nPAGINATION BEHAVIOR: When using pagination (max_results \u003e= 0), a page may contain zero results while still providing a next_page_token.\nClients must continue reading pages until next_page_token is absent, which is the only indication that the end of results has been reached.", + "summary": "Get securable workspace bindings.", + "path": "/api/2.1/unity-catalog/bindings/{securable_type}/{securable_name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetBindingsRequest", + "is_object": true, + "required_fields": [ + { + "name": "securable_type", + "description": "The type of the securable to bind to a workspace (catalog, storage_credential, credential, or external_location).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable_name", + "description": "The name of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "securable_type", + "description": "The type of the securable to bind to a workspace (catalog, storage_credential, credential, or external_location).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable_name", + "description": "The name of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "GetWorkspaceBindingsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "max_results", + "description": "Maximum number of workspace bindings to return.\n- When set to 0, the page length is set to a server configured value (recommended);\n- When set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- When set to a value less than 0, an invalid parameter error is returned;\n- If not set, all the workspace bindings are returned (not recommended).", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable_name", + "description": "The name of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable_type", + "description": "The type of the securable to bind to a workspace (catalog, storage_credential, credential, or external_location).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "securable_type", + "description": "The type of the securable to bind to a workspace (catalog, storage_credential, credential, or external_location).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable_name", + "description": "The name of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Opaque pagination token to go to next page based on previous query.", + "is_query": true, + "entity": { + "is_string": true + } + } + }, + "max_results": { + "name": "max_results", + "description": "Maximum number of workspace bindings to return.\n- When set to 0, the page length is set to a server configured value (recommended);\n- When set to a value greater than 0, the page length is the minimum of this value and a server configured value;\n- When set to a value less than 0, an invalid parameter error is returned;\n- If not set, all the workspace bindings are returned (not recommended).", + "is_query": true, + "entity": { + "is_int": true + } + } + } + }, + { + "name": "Update", + "description": "Updates workspace bindings of the catalog.\nThe caller must be a metastore admin or an owner of the catalog.", + "summary": "Update catalog workspace bindings.", + "path": "/api/2.1/unity-catalog/workspace-bindings/catalogs/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateWorkspaceBindings", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateCatalogWorkspaceBindingsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "assign_workspaces", + "description": "A list of workspace IDs.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_int64": true + } + } + }, + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "unassign_workspaces", + "description": "A list of workspace IDs.", + "is_request_body_field": true, + "entity": { + "pascal_name": "List", + "array_value": { + "is_int64": true + } + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "The name of the catalog.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateBindings", + "description": "Updates workspace bindings of the securable.\nThe caller must be a metastore admin or an owner of the securable.", + "summary": "Update securable workspace bindings.", + "path": "/api/2.1/unity-catalog/bindings/{securable_type}/{securable_name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateWorkspaceBindingsParameters", + "is_object": true, + "required_fields": [ + { + "name": "securable_type", + "description": "The type of the securable to bind to a workspace (catalog, storage_credential, credential, or external_location).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable_name", + "description": "The name of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "securable_type", + "description": "The type of the securable to bind to a workspace (catalog, storage_credential, credential, or external_location).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable_name", + "description": "The name of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "UpdateWorkspaceBindingsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "add", + "description": "List of workspace bindings to add. If a binding for the workspace already exists with a\ndifferent binding_type, adding it again with a new binding_type will update the existing\nbinding (e.g., from READ_WRITE to READ_ONLY).", + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceBindingList", + "array_value": { + "pascal_name": "WorkspaceBinding", + "is_object": true + } + } + }, + { + "name": "remove", + "description": "List of workspace bindings to remove.", + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceBindingList", + "array_value": { + "pascal_name": "WorkspaceBinding", + "is_object": true + } + } + }, + { + "name": "securable_name", + "description": "The name of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable_type", + "description": "The type of the securable to bind to a workspace (catalog, storage_credential, credential, or external_location).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "securable_type", + "description": "The type of the securable to bind to a workspace (catalog, storage_credential, credential, or external_location).", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "securable_name", + "description": "The name of the securable.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "settings.WorkspaceConf", + "name": "WorkspaceConf", + "description": "This API allows updating known workspace settings for advanced users.", + "package": { + "name": "settings" + }, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "GetStatus", + "description": "Gets the configuration status for a workspace.", + "summary": "Check configuration status.", + "path": "/api/2.0/workspace-conf", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetStatusRequest", + "is_object": true, + "required_fields": [ + { + "name": "keys", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "keys", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "WorkspaceConf", + "map_value": { + "is_string": true + } + }, + "all_fields": [ + { + "name": "keys", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "keys", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "SetStatus", + "description": "Sets the configuration status for a workspace, including enabling or disabling it.", + "summary": "Enable/disable features.", + "path": "/api/2.0/workspace-conf", + "can_use_json": true, + "must_use_json": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "WorkspaceConf", + "map_value": { + "is_string": true + } + }, + "response": { + "is_empty_response": true + } + } + ] + }, + { + "id": "tags.WorkspaceEntityTagAssignments", + "name": "WorkspaceEntityTagAssignments", + "description": "Manage tag assignments on workspace-scoped objects.", + "package": { + "name": "tags" + }, + "docs_group": "tags", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListTagAssignmentsRequest" + } + }, + "methods": [ + { + "name": "CreateTagAssignment", + "description": "Create a tag assignment", + "summary": "Create a tag assignment for an entity.", + "path": "/api/2.0/entity-tag-assignments", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateTagAssignmentRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagAssignment", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagAssignment", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "TagAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_value", + "description": "The value of the tag", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteTagAssignment", + "description": "Delete a tag assignment", + "summary": "Delete a tag assignment for an entity.", + "path": "/api/2.0/entity-tag-assignments/{entity_type}/{entity_id}/tags/{tag_key}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteTagAssignmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetTagAssignment", + "description": "Get a tag assignment", + "summary": "Get a tag assignment for an entity.", + "path": "/api/2.0/entity-tag-assignments/{entity_type}/{entity_id}/tags/{tag_key}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetTagAssignmentRequest", + "is_object": true, + "required_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "TagAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListTagAssignments", + "description": "List the tag assignments for an entity", + "summary": "List tag assignments for an entity.", + "path": "/api/2.0/entity-tag-assignments/{entity_type}/{entity_id}/tags", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListTagAssignmentsRequest", + "is_object": true, + "required_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ListTagAssignmentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "Optional. Maximum number of tag assignments to return in a single page", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "Pagination token to go to the next page of tag assignments. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "Pagination token to go to the next page of tag assignments. Requests first page if absent.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "UpdateTagAssignment", + "description": "Update a tag assignment", + "summary": "Update a tag assignment for an entity.", + "path": "/api/2.0/entity-tag-assignments/{entity_type}/{entity_id}/tags/{tag_key}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateTagAssignmentRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagAssignment", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagAssignment", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + "response": { + "pascal_name": "TagAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "all_fields": [ + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_assignment", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "TagAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_value", + "description": "The value of the tag", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "entity_type", + "description": "The type of entity to which the tag is assigned. Allowed values are apps, dashboards, geniespaces, notebooks", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "entity_id", + "description": "The identifier of the entity to which the tag is assigned. For apps, the entity_id is the app name", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "tag_key", + "description": "The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "iamv2.WorkspaceIamV2", + "name": "WorkspaceIamV2", + "description": "These APIs are used to manage identities and the workspace access of these identities in Databricks.", + "package": { + "name": "iamv2" + }, + "docs_group": "iam", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "CreateDirectGroupMemberProxy", + "description": "Creates a group membership (assigns a principal to a group).", + "summary": "Create a direct group membership.", + "path": "/api/2.0/identity/groups/{group_id}/direct-members", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateDirectGroupMemberProxyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "direct_group_member", + "description": "Required. The group membership to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DirectGroupMember", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "direct_group_member", + "description": "Required. The group membership to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DirectGroupMember", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "direct_group_member", + "description": "Required. The group membership to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DirectGroupMember", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + "response": { + "pascal_name": "DirectGroupMember", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "direct_group_member", + "description": "Required. The group membership to create.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "DirectGroupMember", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "display_name", + "description": "Display name of the principal.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "external_id", + "description": "The external ID of the principal in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "group_id", + "description": "The internal ID of the group this member belongs to.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "membership_source", + "description": "The source of group membership (internal or from identity provider).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "GroupMembershipSource", + "enum": [ + { + "content": "IDENTITY_PROVIDER" + }, + { + "content": "INTERNAL" + } + ] + } + }, + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_type", + "description": "The type of the principal (user/service principal/group).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "CreateGroupProxy", + "description": "Creates a local group in the Databricks account that parents the calling workspace and returns\nthe created group. A local group is one that is not synced from the customer's identity\nprovider, and can be created whether or not Account Identity Management (AIM) is enabled.\n\nWhen AIM is enabled, supplying an external ID returns an error. To provision the identity from\nyour identity provider, resolve it by its external ID with ResolveGroup; to read an existing\nexternal identity, use the ExternalGroup resource.", + "summary": "Create a group in the account.", + "path": "/api/2.0/identity/groups", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateGroupProxyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "group", + "description": "Required. Group to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "group", + "description": "Required. Group to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "group", + "description": "Required. Group to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + }, + "response": { + "pascal_name": "Group", + "is_object": true + }, + "all_fields": [ + { + "name": "group", + "description": "Required. Group to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + }, + { + "name": "account_id", + "description": "The parent account ID for group in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "external_id", + "description": "ExternalId of the group in the customer's IdP.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "group_id", + "description": "Internal group ID of the group in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "group_name", + "description": "Display name of the group.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "CreateServicePrincipalProxy", + "description": "Creates a local service principal in the Databricks account that parents the calling workspace\nand returns the created service principal. A local service principal is one that is not synced\nfrom the customer's identity provider, and can be created whether or not Account Identity\nManagement (AIM) is enabled.\n\nWhen AIM is enabled, supplying an external ID returns an error. To provision the identity from\nyour identity provider, resolve it by its external ID with ResolveServicePrincipal; to read an\nexisting external identity, use the ExternalServicePrincipal resource.", + "summary": "Create a service principal in the account.", + "path": "/api/2.0/identity/service-principals", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateServicePrincipalProxyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "service_principal", + "description": "Required. Service principal to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "service_principal", + "description": "Required. Service principal to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "service_principal", + "description": "Required. Service principal to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "ServicePrincipal", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "service_principal", + "description": "Required. Service principal to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + { + "name": "account_id", + "description": "The parent account ID for the service principal in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + }, + { + "name": "application_id", + "description": "Application ID of the service principal. Set at creation time and cannot be changed\nafterwards; when omitted, the server generates one.", + "is_computed": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "external_id", + "description": "ExternalId of the service principal in the customer's IdP.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "Internal service principal ID of the service principal in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + { + "name": "CreateUserProxy", + "description": "Creates a local user in the Databricks account that parents the calling workspace and returns\nthe created user. A local user is one that is not synced from the customer's identity provider,\nand can be created whether or not Account Identity Management (AIM) is enabled.\n\nWhen AIM is enabled, supplying an external ID returns an error. To provision the identity from\nyour identity provider, resolve it by its external ID with ResolveUser; to read an existing\nexternal identity, use the ExternalUser resource.", + "summary": "Create a user in the account.", + "path": "/api/2.0/identity/users", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateUserProxyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "user", + "description": "Required. User to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "user", + "description": "Required. User to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "user", + "description": "Required. User to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "User", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "user", + "description": "Required. User to be created in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + { + "name": "account_id", + "description": "The accountId parent of the user in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + }, + { + "name": "external_id", + "description": "ExternalId of the user in the customer's IdP.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "user_id", + "description": "Internal userId of the user in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + { + "name": "CreateWorkspaceAssignmentDetailProxy", + "description": "Creates a workspace assignment detail for a principal in the calling workspace.", + "summary": "Create a workspace assignment detail for a workspace.", + "path": "/api/2.0/identity/workspace-assignment-details", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "CreateWorkspaceAssignmentDetailProxyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + "response": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + { + "name": "account_id", + "description": "The account ID parent of the workspace where the principal is assigned", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_entitlements", + "description": "Every entitlement the principal holds in this workspace, whether granted directly or through\ngroup membership. Get responses populate this field. List responses leave it empty.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "entitlements", + "description": "Entitlements granted directly to the principal on this workspace. This is the only\nclient-settable field. Create and update manage exactly this set, including entitlements the\nprincipal also holds through a group.\nList responses leave this field empty. Get a single principal to read its entitlements.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_type", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + }, + { + "name": "workspace_id", + "description": "The workspace ID where the principal is assigned.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "CreateWorkspaceAssignmentProxy", + "description": "Creates a workspace assignment for a principal in the calling workspace. Entitlements\nare granted one at a time rather than atomically. If the request fails partway through, the\nprincipal stays assigned to the workspace with only some of the requested entitlements. Get the\nassignment afterwards to confirm which entitlements were granted.", + "summary": "Create a workspace assignment for a workspace.", + "path": "/api/2.0/identity/workspace-assignments", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "CreateWorkspaceAssignmentProxyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true + } + } + ], + "required_request_body_fields": [ + { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + "response": { + "pascal_name": "WorkspaceAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be created in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + { + "name": "account_id", + "description": "The account ID parent of the workspace where the principal is assigned", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_entitlements", + "description": "Every entitlement the principal holds in this workspace, whether granted directly or through\ngroup membership. Get responses populate this field. List responses leave it empty.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "entitlements", + "description": "Entitlements granted directly to the principal on this workspace. This is the only\nclient-settable field. Create and update manage exactly this set, including entitlements the\nprincipal also holds through a group.\nList responses leave this field empty. Get a single principal to read its entitlements.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_type", + "description": "The type of the principal (user/service principal/group) that is assigned.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + }, + { + "name": "workspace_id", + "description": "The workspace ID where the principal is assigned.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "DeleteDirectGroupMemberProxy", + "description": "Deletes a group membership (unassigns a principal from a group).", + "summary": "Delete a direct group membership.", + "path": "/api/2.0/identity/groups/{group_id}/direct-members/{principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteDirectGroupMemberProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal to be unassigned from the group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal to be unassigned from the group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal to be unassigned from the group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal to be unassigned from the group.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "DeleteGroupProxy", + "description": "Deletes a group by its internal ID from the Databricks\naccount that parents the calling workspace.", + "summary": "Delete a group in the account.", + "path": "/api/2.0/identity/groups/{group_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteGroupProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteServicePrincipalProxy", + "description": "Deletes a service principal by its internal ID\nfrom the Databricks account that parents the calling workspace.", + "summary": "Delete a service principal in the account.", + "path": "/api/2.0/identity/service-principals/{service_principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteServicePrincipalProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteUserProxy", + "description": "Deletes a user by its internal ID from the Databricks\naccount that parents the calling workspace.", + "summary": "Delete a user in the account.", + "path": "/api/2.0/identity/users/{user_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteUserProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "DeleteWorkspaceAssignmentDetailProxy", + "description": "Deletes a workspace assignment detail for a principal in the calling workspace, revoking all of\nits entitlements. Entitlements are revoked one at a time rather than atomically. If the request\nfails partway through, the principal stays assigned with some of its original entitlements.\nRetrying is safe.", + "summary": "Delete a workspace assignment detail for a workspace.", + "path": "/api/2.0/identity/workspace-assignment-details/{principal_id}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "DeleteWorkspaceAssignmentDetailProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "DeleteWorkspaceAssignmentProxy", + "description": "Deletes a workspace assignment for a principal in the calling workspace, revoking all of\nits entitlements. Entitlements are revoked one at a time rather than atomically. If the request\nfails partway through, the principal stays assigned with some of its original entitlements.\nRetrying is safe.", + "summary": "Delete a workspace assignment for a workspace.", + "path": "/api/2.0/identity/workspace-assignments/{principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "DeleteWorkspaceAssignmentProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "is_empty_response": true + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks to delete workspace assignment for.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "GetDirectGroupMemberProxy", + "description": "Gets a provisioned direct member of a group.", + "summary": "Get a direct group member.", + "path": "/api/2.0/identity/groups/{group_id}/direct-members/{principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetDirectGroupMemberProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal belonging to the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal belonging to the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "DirectGroupMember", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "Internal ID of the principal in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal belonging to the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal belonging to the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "GetExternalGroupProxy", + "description": "Retrieves an external group with the given external ID from the customer's\nIdP. If the group does not exist, it will be created in the account. If the\ncustomer is not onboarded onto Automatic Identity Management (AIM), this will\nreturn an error. Workspace-scoped variant for workspace-authenticated callers.", + "summary": "Get an external group in the account.", + "path": "/api/2.0/identity/{name=external-groups/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetExternalGroupProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external group.\nFormat: external-groups/{external_group_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external group.\nFormat: external-groups/{external_group_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExternalGroup", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external group.\nFormat: external-groups/{external_group_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Required. The resource name of the external group.\nFormat: external-groups/{external_group_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetExternalServicePrincipalProxy", + "description": "Retrieves an external service principal with the given external ID from the\ncustomer's IdP. If the service principal does not exist, it will be created.\nIf the customer is not onboarded onto Automatic Identity Management (AIM),\nthis will return an error. Workspace-scoped variant for workspace-authenticated\ncallers.", + "summary": "Get an external service principal in the account.", + "path": "/api/2.0/identity/{name=external-service-principals/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetExternalServicePrincipalProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external service principal.\nFormat: external-service-principals/{external_service_principal_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external service principal.\nFormat: external-service-principals/{external_service_principal_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExternalServicePrincipal", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external service principal.\nFormat: external-service-principals/{external_service_principal_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Required. The resource name of the external service principal.\nFormat: external-service-principals/{external_service_principal_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetExternalUserProxy", + "description": "Retrieves an external user with the given external ID from the customer's\nIdP. If the user does not exist, it will be created. If the customer is not\nonboarded onto Automatic Identity Management (AIM), this will return an error.\nWorkspace-scoped variant for workspace-authenticated callers.", + "summary": "Get an external user in the account.", + "path": "/api/2.0/identity/{name=external-users/*}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetExternalUserProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external user.\nFormat: external-users/{external_user_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external user.\nFormat: external-users/{external_user_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ExternalUser", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Required. The resource name of the external user.\nFormat: external-users/{external_user_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Required. The resource name of the external user.\nFormat: external-users/{external_user_id}", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetGroupProxy", + "description": "Fetches a group by its internal ID from the Databricks\naccount that parents the calling workspace.", + "summary": "Get a group in the account.", + "path": "/api/2.0/identity/groups/{group_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetGroupProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Group", + "is_object": true + }, + "all_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetServicePrincipalProxy", + "description": "Fetches a service principal by its internal ID\nfrom the Databricks account that parents the calling workspace.", + "summary": "Get a service principal in the account.", + "path": "/api/2.0/identity/service-principals/{service_principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetServicePrincipalProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ServicePrincipal", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetUserProxy", + "description": "Fetches a user by its internal ID from the Databricks account\nthat parents the calling workspace.", + "summary": "Get a user in the account.", + "path": "/api/2.0/identity/users/{user_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetUserProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "User", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "GetWorkspaceAccessDetailLocal", + "description": "Returns the access details for a principal in the current workspace. Allows for checking access details for any\nprovisioned principal (user, service principal, or group) in the current workspace.\n* Provisioned principal here refers to one that has been synced into Databricks from the customer's IdP or\nadded explicitly to Databricks via SCIM/UI.\nAllows for passing in a \"view\" parameter to control what fields are returned (BASIC by default or FULL).", + "summary": "Get workspace access details for a principal.", + "path": "/api/2.0/identity/workspace-access-details/{principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetWorkspaceAccessDetailLocalRequest", + "is_object": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the access details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the access details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "WorkspaceAccessDetail", + "is_object": true + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the access details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "view", + "description": "Controls what fields are returned.", + "is_query": true, + "entity": { + "pascal_name": "WorkspaceAccessDetailView", + "enum": [ + { + "content": "BASIC" + }, + { + "content": "FULL" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the access details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "GetWorkspaceAssignmentDetailProxy", + "description": "Returns the assignment details for a principal in the calling workspace.", + "summary": "Get workspace assignment details for a principal.", + "path": "/api/2.0/identity/workspace-assignment-details/{principal_id}", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "GetWorkspaceAssignmentDetailProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "GetWorkspaceAssignmentProxy", + "description": "Returns the assignment for a principal in the calling workspace.", + "summary": "Get a workspace assignment for a principal.", + "path": "/api/2.0/identity/workspace-assignments/{principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetWorkspaceAssignmentProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment is being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment is being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "WorkspaceAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment is being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the assignment is being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "GetWorkspaceIdentityDetail", + "description": "Returns the identity details for a principal in a workspace.", + "summary": "Get workspace identity details for a principal.", + "path": "/api/2.0/identity/workspace-identity-details/{principal_id}", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "GetWorkspaceIdentityDetailRequest", + "is_object": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the identity details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the identity details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "WorkspaceIdentityDetail", + "is_object": true + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the identity details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "principal_id", + "description": "Required. The internal ID of the principal (user/sp/group) for which the identity details are being requested.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "ListDirectGroupMembersProxy", + "description": "Lists provisioned direct members of a group with their membership source (internal or from identity provider).", + "summary": "List direct group members.", + "path": "/api/2.0/identity/groups/{group_id}/direct-members", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListDirectGroupMembersProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks whose direct members are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks whose direct members are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "ListDirectGroupMembersResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks whose direct members are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "page_size", + "description": "The maximum number of members to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token from a previous list call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks whose direct members are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token from a previous list call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListGroupsProxy", + "description": "Lists the groups in the Databricks account that parents\nthe calling workspace, returning one page per call. Supports filtering by group name or external ID.", + "summary": "List groups in the account.", + "path": "/api/2.0/identity/groups", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListGroupsProxyRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListGroupsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter", + "description": "Optional. Allows filtering groups by group name or external id.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "The maximum number of groups to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous ListGroups call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous ListGroups call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListServicePrincipalsProxy", + "description": "Lists the service principals in the Databricks\naccount that parents the calling workspace, returning one page per call. Supports filtering by\napplication ID or external ID.", + "summary": "List service principals in the account.", + "path": "/api/2.0/identity/service-principals", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListServicePrincipalsProxyRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListServicePrincipalsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter", + "description": "Optional. Allows filtering service principals by application id or external id.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "The maximum number of SPs to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous ListServicePrincipals call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous ListServicePrincipals call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListTransitiveParentGroupsProxy", + "description": "Lists all transitive parent groups of a principal.", + "summary": "List all transitive parent groups of a principal.", + "path": "/api/2.0/identity/principals/{principal_id}/transitive-parent-groups", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListTransitiveParentGroupsProxyRequest", + "is_object": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Required. Internal ID of the principal in Databricks whose transitive parent groups are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "principal_id", + "description": "Required. Internal ID of the principal in Databricks whose transitive parent groups are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "ListTransitiveParentGroupsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of parent groups to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous ListTransitiveParentGroups call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "principal_id", + "description": "Required. Internal ID of the principal in Databricks whose transitive parent groups are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "principal_id", + "description": "Required. Internal ID of the principal in Databricks whose transitive parent groups are being listed.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "ListUsersProxy", + "description": "Lists the users in the Databricks account that parents the\ncalling workspace, returning one page per call. Supports filtering by username or external ID.", + "summary": "List users in the account.", + "path": "/api/2.0/identity/users", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListUsersProxyRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListUsersResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "filter", + "description": "Optional. Allows filtering users by username or external id.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "page_size", + "description": "The maximum number of users to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous ListUsers call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous ListUsers call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListWorkspaceAssignmentDetailsProxy", + "description": "Lists workspace assignment details for the calling workspace. The response omits the\nper-principal entitlement fields (`entitlements` and `effective_entitlements`). To read the\nentitlements for a single principal, get that principal's assignment detail.", + "summary": "List workspace assignment details for a workspace.", + "path": "/api/2.0/identity/workspace-assignment-details", + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "ListWorkspaceAssignmentDetailsProxyRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListWorkspaceAssignmentDetailsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of workspace assignment details to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token from a previous list call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token from a previous list call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ListWorkspaceAssignmentsProxy", + "description": "Lists workspace assignments for the calling workspace. The response omits the\nper-principal entitlement fields (`entitlements` and `effective_entitlements`). To read the\nentitlements for a single principal, get that principal's assignment.", + "summary": "List workspace assignments for a workspace.", + "path": "/api/2.0/identity/workspace-assignments", + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ListWorkspaceAssignmentsProxyRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListWorkspaceAssignmentsResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of workspace assignments to return. The service may return fewer than this value.\nIf not provided, defaults to 1000, which is also the maximum allowed. Requests for more than the maximum are clamped to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token from a previous list call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token from a previous list call. Provide this to retrieve the subsequent page.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "ResolveGroupProxy", + "description": "Resolves a group with the given external ID from the customer's IdP. If the group does not exist, it will be created in the account.\nIf the customer is not onboarded onto Automatic Identity Management (AIM), this will return an error.", + "summary": "Resolve an external group in the Databricks account.", + "path": "/api/2.0/identity/groups/resolve-by-external-id", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ResolveGroupProxyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the group in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the group in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ResolveGroupResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the group in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "external_id", + "description": "Required. The external ID of the group in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ResolveServicePrincipalProxy", + "description": "Resolves a service principal with the given external ID from the customer's IdP. If the service\nprincipal does not exist, it will be created.\nIf the customer is not onboarded onto Automatic Identity Management (AIM), this will return an error.", + "summary": "Resolve an external service principal in the Databricks account.", + "path": "/api/2.0/identity/service-principals/resolve-by-external-id", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ResolveServicePrincipalProxyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the service principal in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the service principal in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ResolveServicePrincipalResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the service principal in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "external_id", + "description": "Required. The external ID of the service principal in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ResolveUserProxy", + "description": "Resolves a user with the given external ID from the customer's IdP. If the user does not exist, it will be created.\nIf the customer is not onboarded onto Automatic Identity Management (AIM), this will return an error.", + "summary": "Resolve an external user in the Databricks account.", + "path": "/api/2.0/identity/users/resolve-by-external-id", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "ResolveUserProxyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the user in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the user in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "ResolveUserResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "external_id", + "description": "Required. The external ID of the user in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "external_id", + "description": "Required. The external ID of the user in the customer's IdP.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateGroupProxy", + "description": "Updates an existing group in the Databricks account that\nparents the calling workspace. Only the fields named in the update mask are modified. Returns\nthe updated Group resource.\n\nWhen AIM is enabled and the group is an external identity (its external_id is set), only\nexternal_id can be updated; its other fields are sourced from your identity provider.\nWith AIM and group visibility filters, a new nonempty external_id must identify a visible group.\nClearing external_id is allowed.", + "summary": "Update a group in the account.", + "path": "/api/2.0/identity/groups/{group_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateGroupProxyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "group", + "description": "Required. Group to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "group", + "description": "Required. Group to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "group", + "description": "Required. Group to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + }, + "response": { + "pascal_name": "Group", + "is_object": true + }, + "all_fields": [ + { + "name": "group", + "description": "Required. Group to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Group", + "is_object": true + } + }, + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_id", + "description": "The parent account ID for group in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "external_id", + "description": "ExternalId of the group in the customer's IdP.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "group_id", + "description": "Internal group ID of the group in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "group_name", + "description": "Display name of the group.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "group_id", + "description": "Required. Internal ID of the group in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "UpdateServicePrincipalProxy", + "description": "Updates an existing service principal in the\nDatabricks account that parents the calling workspace. Only the fields named in the update mask\nare modified. Returns the updated ServicePrincipal resource.\n\nWhen AIM is enabled and the service principal is an external identity (its external_id is set),\nonly external_id can be updated; its other fields are sourced from your identity provider.", + "summary": "Update a service principal in the account.", + "path": "/api/2.0/identity/service-principals/{service_principal_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateServicePrincipalProxyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal", + "description": "Required. Service principal to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "service_principal", + "description": "Required. Service principal to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "service_principal", + "description": "Required. Service principal to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "ServicePrincipal", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "service_principal", + "description": "Required. Service principal to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "ServicePrincipal", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_id", + "description": "The parent account ID for the service principal in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + }, + { + "name": "application_id", + "description": "Application ID of the service principal. Set at creation time and cannot be changed\nafterwards; when omitted, the server generates one.", + "is_computed": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "external_id", + "description": "ExternalId of the service principal in the customer's IdP.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "service_principal_id", + "description": "Internal service principal ID of the service principal in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "service_principal_id", + "description": "Required. Internal ID of the service principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "display_name", + "description": "Display name of the service principal.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_sp_status", + "description": "The activity status of a service principal in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + { + "name": "UpdateUserProxy", + "description": "Updates an existing user in the Databricks account that parents the calling workspace and\nreturns the updated user. Only the fields named in the update mask are modified. The updatable\nfields are fullName.givenName, fullName.familyName, status, and externalId.\n\nWhen AIM is enabled and the user is an external identity (its external_id is set), only\nexternal_id can be updated; its other fields are sourced from your identity provider.", + "summary": "Update a user in the account.", + "path": "/api/2.0/identity/users/{user_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateUserProxyRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "user", + "description": "Required. User to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "user", + "description": "Required. User to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "user", + "description": "Required. User to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + "response": { + "pascal_name": "User", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + "all_fields": [ + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "user", + "description": "Required. User to be updated in Databricks", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "User", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_request_body_fields": [ + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + } + }, + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_id", + "description": "The accountId parent of the user in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + }, + { + "name": "external_id", + "description": "ExternalId of the user in the customer's IdP.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "user_id", + "description": "Internal userId of the user in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "user_id", + "description": "Required. Internal ID of the user in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "update_mask", + "description": "Optional. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "username", + "description": "Username/email of the user.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "full_name", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "UserFullName", + "is_object": true + } + }, + { + "name": "account_user_status", + "description": "The activity status of a user in a Databricks account.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ] + }, + { + "name": "UpdateWorkspaceAssignmentDetailProxy", + "description": "Updates the entitlements of a directly assigned principal in the calling workspace. Changes are\napplied one at a time rather than atomically. If the request fails partway through, only some of\nthe requested changes take effect. Get the assignment detail afterwards to confirm the final\nstate.", + "summary": "Update a workspace assignment detail for a workspace.", + "path": "/api/2.0/identity/workspace-assignment-details/{principal_id}", + "can_use_json": true, + "is_hidden_cli": true, + "has_required_positional_arguments": true, + "launch_stage": "PRIVATE_PREVIEW", + "cli_launch_stage_display": "Private Preview", + "request": { + "pascal_name": "UpdateWorkspaceAssignmentDetailProxyRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + "response": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "workspace_assignment_detail", + "description": "Required. Workspace assignment detail to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignmentDetail", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + { + "name": "account_id", + "description": "The account ID parent of the workspace where the principal is assigned", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_entitlements", + "description": "Every entitlement the principal holds in this workspace, whether granted directly or through\ngroup membership. Get responses populate this field. List responses leave it empty.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "entitlements", + "description": "Entitlements granted directly to the principal on this workspace. This is the only\nclient-settable field. Create and update manage exactly this set, including entitlements the\nprincipal also holds through a group.\nList responses leave this field empty. Get a single principal to read its entitlements.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_type", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + }, + { + "name": "workspace_id", + "description": "The workspace ID where the principal is assigned.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "UpdateWorkspaceAssignmentProxy", + "description": "Updates the entitlements of a directly assigned principal in the calling workspace. Changes are\napplied one at a time rather than atomically. If the request fails partway through, only some of\nthe requested changes take effect. Get the assignment afterwards to confirm the final\nstate.", + "summary": "Update a workspace assignment for a workspace.", + "path": "/api/2.0/identity/workspace-assignments/{principal_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateWorkspaceAssignmentProxyRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + "response": { + "pascal_name": "WorkspaceAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "workspace_assignment", + "description": "Required. Workspace assignment to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceAssignment", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + } + }, + { + "name": "account_id", + "description": "The account ID parent of the workspace where the principal is assigned", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "effective_entitlements", + "description": "Every entitlement the principal holds in this workspace, whether granted directly or through\ngroup membership. Get responses populate this field. List responses leave it empty.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "entitlements", + "description": "Entitlements granted directly to the principal on this workspace. This is the only\nclient-settable field. Create and update manage exactly this set, including entitlements the\nprincipal also holds through a group.\nList responses leave this field empty. Get a single principal to read its entitlements.", + "is_request_body_field": true, + "entity": { + "pascal_name": "EntitlementList", + "array_value": { + "pascal_name": "Entitlement", + "enum": [ + { + "content": "ALLOW_CLUSTER_CREATE" + }, + { + "content": "ALLOW_INSTANCE_POOL_CREATE" + }, + { + "content": "DATABRICKS_SQL_ACCESS" + }, + { + "content": "WORKSPACE_ACCESS" + }, + { + "content": "WORKSPACE_ADMIN" + }, + { + "content": "WORKSPACE_CONSUME" + } + ] + } + } + }, + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_type", + "description": "The type of the principal (user/service principal/group) that is assigned.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + }, + { + "name": "workspace_id", + "description": "The workspace ID where the principal is assigned.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "UpdateWorkspaceIdentityDetail", + "description": "Updates a workspace identity detail for a principal.", + "summary": "Update workspace identity details for a principal.", + "path": "/api/2.0/identity/workspace-identity-details/{principal_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "PUBLIC_BETA", + "cli_launch_stage_label": "*Beta*", + "cli_launch_stage_banner": "This command is in Beta and may change without notice.", + "cli_launch_stage_display": "Beta", + "request": { + "pascal_name": "UpdateWorkspaceIdentityDetailRequest", + "is_object": true, + "has_field_mask": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_identity_detail", + "description": "Required. Workspace identity detail to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceIdentityDetail", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_in_url_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ], + "required_request_body_fields": [ + { + "name": "workspace_identity_detail", + "description": "Required. Workspace identity detail to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceIdentityDetail", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "workspace_identity_detail", + "description": "Required. Workspace identity detail to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceIdentityDetail", + "is_object": true + } + }, + "response": { + "pascal_name": "WorkspaceIdentityDetail", + "is_object": true + }, + "all_fields": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + }, + { + "name": "workspace_identity_detail", + "description": "Required. Workspace identity detail to be updated in Databricks.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceIdentityDetail", + "is_object": true + } + }, + { + "name": "assignment_type", + "description": "The type of assignment the principal has to the workspace (direct or indirect).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceIdentityDetailAssignmentType", + "enum": [ + { + "content": "DIRECT" + }, + { + "content": "INDIRECT" + } + ] + } + }, + { + "name": "principal_id", + "description": "The internal ID of the principal (user/sp/group) in Databricks.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "principal_type", + "description": "The type of the principal (user/service principal/group).", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PrincipalType", + "enum": [ + { + "content": "GROUP" + }, + { + "content": "SERVICE_PRINCIPAL" + }, + { + "content": "USER" + } + ] + } + }, + { + "name": "workspace_identity_status", + "description": "The activity status of an identity in a Databricks workspace.", + "is_request_body_field": true, + "entity": { + "pascal_name": "State", + "enum": [ + { + "content": "ACTIVE" + }, + { + "content": "INACTIVE" + } + ] + } + } + ], + "required_positional_arguments": [ + { + "name": "principal_id", + "description": "Required. ID of the principal in Databricks.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "update_mask", + "description": "Required. The list of fields to update.", + "required": true, + "is_query": true, + "entity": { + "is_field_mask": true + } + } + ] + } + ] + }, + { + "id": "settings.WorkspaceNetworkConfiguration", + "name": "WorkspaceNetworkConfiguration", + "description": "These APIs allow configuration of network settings for Databricks workspaces by selecting which network policy to associate with the workspace. Each workspace is always associated with exactly one network policy that controls which network destinations can be accessed from the Databricks environment. By default, workspaces are associated with the 'default-policy' network policy. You cannot create or delete a workspace's network option, only update it to associate the workspace with a different policy", + "package": { + "name": "settings" + }, + "is_accounts": true, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "GetWorkspaceNetworkOptionRpc", + "description": "Gets the network option for a workspace. Every workspace has exactly one network policy binding,\nwith 'default-policy' used if no explicit assignment exists.", + "summary": "Get workspace network option.", + "path": "/api/2.0/accounts/{account_id}/workspaces/{workspace_id}/network", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetWorkspaceNetworkOptionRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "WorkspaceNetworkOption", + "is_object": true + }, + "all_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "UpdateWorkspaceNetworkOptionRpc", + "description": "Updates the network option for a workspace. This operation associates the workspace with the specified network policy.\nTo revert to the default policy, specify 'default-policy' as the network_policy_id.", + "summary": "Update workspace network option.", + "path": "/api/2.0/accounts/{account_id}/workspaces/{workspace_id}/network", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateWorkspaceNetworkOptionRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_network_option", + "description": "The network option details for the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceNetworkOption", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "workspace_network_option", + "description": "The network option details for the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceNetworkOption", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "workspace_network_option", + "description": "The network option details for the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceNetworkOption", + "is_object": true + } + }, + "response": { + "pascal_name": "WorkspaceNetworkOption", + "is_object": true + }, + "all_fields": [ + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_network_option", + "description": "The network option details for the workspace.", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceNetworkOption", + "is_object": true + } + }, + { + "name": "network_policy_id", + "description": "The network policy ID to apply to the workspace. This controls the network access rules\nfor all serverless compute resources in the workspace. Each workspace can only be\nlinked to one policy at a time. If no policy is explicitly assigned,\nthe workspace will use 'default-policy'.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_id", + "description": "The workspace ID.", + "is_request_body_field": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "The workspace ID.", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + } + ] + }, + { + "id": "settingsv2.WorkspaceSettingsV2", + "name": "WorkspaceSettingsV2", + "description": "APIs to manage workspace level settings", + "package": { + "name": "settingsv2" + }, + "docs_group": "settings", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "list": { + "request": { + "pascal_name": "ListWorkspaceSettingsMetadataRequest" + } + }, + "methods": [ + { + "name": "GetPublicWorkspaceSetting", + "description": "Get a setting value at workspace level. See :method:settingsv2/listworkspacesettingsmetadata for list of setting available via public APIs.", + "summary": "Get a workspace setting.", + "path": "/api/2.1/settings/{name}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetPublicWorkspaceSettingRequest", + "is_object": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the setting", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the setting", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + "response": { + "pascal_name": "Setting", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the setting", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the setting", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + }, + { + "name": "ListWorkspaceSettingsMetadata", + "description": "List valid setting keys and metadata. These settings are available to be referenced via\nGET :method:settingsv2/getpublicworkspacesetting and\nPATCH :method:settingsv2/patchpublicworkspacesetting APIs", + "summary": "List valid setting keys and their metadata.", + "path": "/api/2.1/settings-metadata", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListWorkspaceSettingsMetadataRequest", + "is_object": true + }, + "response": { + "pascal_name": "ListWorkspaceSettingsMetadataResponse", + "is_object": true + }, + "all_fields": [ + { + "name": "page_size", + "description": "The maximum number of settings to return. The service may return fewer than this value.\nIf unspecified, at most 200 settings will be returned.\nThe maximum value is 1000; values above 1000 will be coerced to 1000.", + "is_query": true, + "entity": { + "is_int": true + } + }, + { + "name": "page_token", + "description": "A page token, received from a previous `ListWorkspaceSettingsMetadataRequest` call.\nProvide this to retrieve the subsequent page.\n\nWhen paginating, all other parameters provided to `ListWorkspaceSettingsMetadataRequest` must match\nthe call that provided the page token.", + "is_query": true, + "entity": { + "is_string": true + } + } + ], + "pagination": { + "token": { + "poll_field": { + "name": "page_token", + "description": "A page token, received from a previous `ListWorkspaceSettingsMetadataRequest` call.\nProvide this to retrieve the subsequent page.\n\nWhen paginating, all other parameters provided to `ListWorkspaceSettingsMetadataRequest` must match\nthe call that provided the page token.", + "is_query": true, + "entity": { + "is_string": true + } + } + } + } + }, + { + "name": "PatchPublicWorkspaceSetting", + "description": "Patch a setting value at workspace level. See :method:settingsv2/listworkspacesettingsmetadata for list of setting available via public APIs at workspace level.\nTo determine the correct field to include in a patch request, refer to the type field of the setting returned in the :method:settingsv2/listworkspacesettingsmetadata response.\n\nNote: Page refresh is required for changes to take effect in UI.", + "summary": "Update a workspace setting.", + "path": "/api/2.1/settings/{name}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "PatchPublicWorkspaceSettingRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "name", + "description": "Name of the setting", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Setting", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "name", + "description": "Name of the setting", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ], + "required_request_body_fields": [ + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Setting", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Setting", + "is_object": true + } + }, + "response": { + "pascal_name": "Setting", + "is_object": true + }, + "all_fields": [ + { + "name": "name", + "description": "Name of the setting", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + }, + { + "name": "setting", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Setting", + "is_object": true + } + }, + { + "name": "aibi_dashboard_embedding_access_policy", + "description": "Setting value for aibi_dashboard_embedding_access_policy setting. This is the setting value set by consumers, check effective_aibi_dashboard_embedding_access_policy for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingAccessPolicy", + "is_object": true + } + }, + { + "name": "aibi_dashboard_embedding_approved_domains", + "description": "Setting value for aibi_dashboard_embedding_approved_domains setting. This is the setting value set by consumers, check effective_aibi_dashboard_embedding_approved_domains for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingApprovedDomains", + "is_object": true + } + }, + { + "name": "allowed_apps_user_api_scopes", + "description": "Setting value for allowed_apps_user_api_scopes setting. This is the setting value set by consumers, check effective_allowed_apps_user_api_scopes for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AllowedAppsUserApiScopesMessage", + "is_object": true + } + }, + { + "name": "automatic_cluster_update_workspace", + "description": "Setting value for automatic_cluster_update_workspace setting. This is the setting value set by consumers, check effective_automatic_cluster_update_workspace for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ClusterAutoRestartMessage", + "is_object": true + } + }, + { + "name": "boolean_val", + "description": "Setting value for boolean type setting. This is the setting value set by consumers, check effective_boolean_val for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + }, + { + "name": "collaboration_platform_connectivity", + "description": "Setting value for collaboration_platform_connectivity setting. This is the setting value set by consumers, check effective_collaboration_platform_connectivity for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CollaborationPlatformConnectivityMessage", + "is_object": true + } + }, + { + "name": "effective_aibi_dashboard_embedding_access_policy", + "description": "Effective setting value for aibi_dashboard_embedding_access_policy setting. This is the final effective value of setting. To set a value use aibi_dashboard_embedding_access_policy.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingAccessPolicy", + "is_object": true + } + }, + { + "name": "effective_aibi_dashboard_embedding_approved_domains", + "description": "Effective setting value for aibi_dashboard_embedding_approved_domains setting. This is the final effective value of setting. To set a value use aibi_dashboard_embedding_approved_domains.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AibiDashboardEmbeddingApprovedDomains", + "is_object": true + } + }, + { + "name": "effective_allowed_apps_user_api_scopes", + "description": "Effective setting value for allowed_apps_user_api_scopes setting. This is the final effective value of setting. To set a value use allowed_apps_user_api_scopes.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AllowedAppsUserApiScopesMessage", + "is_object": true + } + }, + { + "name": "effective_automatic_cluster_update_workspace", + "description": "Effective setting value for automatic_cluster_update_workspace setting. This is the final effective value of setting. To set a value use automatic_cluster_update_workspace.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "ClusterAutoRestartMessage", + "is_object": true + } + }, + { + "name": "effective_boolean_val", + "description": "Effective setting value for boolean type setting. This is the final effective value of setting. To set a value use boolean_val.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "BooleanMessage", + "is_object": true + } + }, + { + "name": "effective_collaboration_platform_connectivity", + "description": "Effective setting value for collaboration_platform_connectivity setting. This is the final effective value of setting. To set a value use collaboration_platform_connectivity.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CollaborationPlatformConnectivityMessage", + "is_object": true + } + }, + { + "name": "effective_integer_val", + "description": "Effective setting value for integer type setting. This is the final effective value of setting. To set a value use integer_val.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IntegerMessage", + "is_object": true + } + }, + { + "name": "effective_operational_email_custom_recipient", + "description": "Effective setting value for operational_email_custom_recipient setting. This is the final effective value of setting. To set a value use operational_email_custom_recipient.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "OperationalEmailCustomRecipientMessage", + "is_object": true + } + }, + { + "name": "effective_personal_compute", + "description": "Effective setting value for personal_compute setting. This is the final effective value of setting. To set a value use personal_compute.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PersonalComputeMessage", + "is_object": true + } + }, + { + "name": "effective_restrict_workspace_admins", + "description": "Effective setting value for restrict_workspace_admins setting. This is the final effective value of setting. To set a value use restrict_workspace_admins.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RestrictWorkspaceAdminsMessage", + "is_object": true + } + }, + { + "name": "effective_string_val", + "description": "Effective setting value for string type setting. This is the final effective value of setting. To set a value use string_val.", + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "StringMessage", + "is_object": true + } + }, + { + "name": "effective_workspace_label", + "description": "Effective setting value for workspace_label setting. This is the final effective value of setting. To set a value use workspace_label.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "WorkspaceLabelMessage", + "is_object": true + } + }, + { + "name": "integer_val", + "description": "Setting value for integer type setting. This is the setting value set by consumers, check effective_integer_val for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "IntegerMessage", + "is_object": true + } + }, + { + "name": "name", + "description": "Name of the setting.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "operational_email_custom_recipient", + "description": "Setting value for operational_email_custom_recipient setting. This is the setting value set by consumers, check effective_operational_email_custom_recipient for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "OperationalEmailCustomRecipientMessage", + "is_object": true + } + }, + { + "name": "personal_compute", + "description": "Setting value for personal_compute setting. This is the setting value set by consumers, check effective_personal_compute for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "PersonalComputeMessage", + "is_object": true + } + }, + { + "name": "restrict_workspace_admins", + "description": "Setting value for restrict_workspace_admins setting. This is the setting value set by consumers, check effective_restrict_workspace_admins for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "RestrictWorkspaceAdminsMessage", + "is_object": true + } + }, + { + "name": "string_val", + "description": "Setting value for string type setting. This is the setting value set by consumers, check effective_string_val for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "StringMessage", + "is_object": true + } + }, + { + "name": "workspace_label", + "description": "Setting value for workspace_label setting. This is the setting value set by consumers, check effective_workspace_label for final setting value.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "WorkspaceLabelMessage", + "is_object": true + } + } + ], + "required_positional_arguments": [ + { + "name": "name", + "description": "Name of the setting", + "required": true, + "is_path": true, + "entity": { + "is_string": true + } + } + ] + } + ] + }, + { + "id": "provisioning.Workspaces", + "name": "Workspaces", + "description": "These APIs manage workspaces for this account. A Databricks workspace is an environment for\naccessing all of your Databricks assets. The workspace organizes objects (notebooks,\nlibraries, and experiments) into folders, and provides access to data and computational\nresources such as clusters and jobs.\n\nThese endpoints are available if your account is on the E2 version of the platform or on\na select custom plan that allows multiple workspaces per account.", + "package": { + "name": "provisioning" + }, + "is_accounts": true, + "docs_group": "provisioning", + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "methods": [ + { + "name": "Create", + "description": "Creates a new workspace using a credential configuration and a storage configuration, an optional network configuration (if using a customer-managed VPC), an optional managed services key configuration (if using customer-managed keys for managed services), and an optional storage key configuration (if using customer-managed keys for storage). The key configurations used for managed services and storage encryption can be the same or different.\n\nImportant: This operation is asynchronous. A response with HTTP status code 200 means the request has been accepted and is in progress, but does not mean that the workspace deployed successfully and is running. The initial workspace status is typically PROVISIONING. Use the workspace ID (workspace_id) field in the response to identify the new workspace and make repeated GET requests with the workspace ID and check its status. The workspace becomes available when the status changes to RUNNING.\n\nYou can share one customer-managed VPC with multiple workspaces in a single account. It is not required to create a new VPC for each workspace. However, you cannot reuse subnets or Security Groups between workspaces. If you plan to share one VPC with multiple workspaces, make sure you size your VPC and subnets accordingly. Because a Databricks Account API network configuration encapsulates this information, you cannot reuse a Databricks Account API network configuration across workspaces.\n\nFor information about how to create a new workspace with this API including error handling, see [Create a new workspace using the Account API](http://docs.databricks.com/administration-guide/account-api/new-workspace.html).\n\nImportant: Customer-managed VPCs, PrivateLink, and customer-managed keys are supported on a limited set of deployment and subscription types. If you have questions about availability, contact your Databricks representative.\n\nThis operation is available only if your account is on the E2 version of the platform or on a select custom plan that allows multiple workspaces per account.", + "summary": "Create a workspace.", + "path": "/api/2.0/accounts/{account_id}/workspaces", + "can_use_json": true, + "is_crud_create": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "CreateWorkspaceRequest", + "is_object": true + }, + "response": { + "pascal_name": "Workspace", + "is_object": true + }, + "all_fields": [ + { + "name": "aws_region", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "cloud", + "description": "DEPRECATED: This field is being ignored by the server and will be removed in the future.\nThe cloud name. This field always has the value `gcp`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "cloud_resource_container", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CloudResourceContainer", + "is_object": true + } + }, + { + "name": "compute_mode", + "description": "If the compute mode is `SERVERLESS`, a serverless workspace is created that comes pre-configured with serverless compute and default storage, providing a fully-managed, enterprise-ready SaaS experience. This means you don't need to provide any resources managed by you, such as credentials, storage, or network.\nIf the compute mode is `HYBRID` (which is the default option), a classic workspace is created that uses customer-managed resources.", + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomerFacingComputeMode", + "enum": [ + { + "content": "HYBRID" + }, + { + "content": "SERVERLESS" + } + ] + } + }, + { + "name": "credentials_id", + "description": "ID of the workspace's credential configuration object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_tags", + "description": "The custom tags key-value pairing that is attached to this workspace. The key-value pair is a string of utf-8 characters. The\nvalue can be an empty string, with maximum length of 255 characters. The key can be of maximum length of 127 characters, and cannot be empty.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "deployment_name", + "description": "The deployment name defines part of the subdomain for the workspace. The workspace URL for the web application and REST APIs is \u003cworkspace-deployment-name\u003e.cloud.databricks.com. For example, if the deployment name is abcsales, your workspace URL will be https://abcsales.cloud.databricks.com. Hyphens are allowed. This property supports only the set of characters that are allowed in a subdomain.\nTo set this value, you must have a deployment name prefix. Contact your Databricks account team to add an account deployment name prefix to your account.\nWorkspace deployment names follow the account prefix and a hyphen. For example, if your account's deployment prefix is acme and the workspace deployment name is workspace-1, the JSON response for the deployment_name field becomes acme-workspace-1. The workspace URL would be acme-workspace-1.cloud.databricks.com.\nYou can also set the deployment_name to the reserved keyword EMPTY if you want the deployment name to only include the deployment prefix. For example, if your account's deployment prefix is acme and the workspace deployment name is EMPTY, the deployment_name becomes acme only and the workspace URL is acme.cloud.databricks.com.\nThis value must be unique across all non-deleted deployments across all AWS regions.\nIf a new workspace omits this property, the server generates a unique deployment name for you with the pattern dbc-xxxxxxxx-xxxx.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "gcp_managed_network_config", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GcpManagedNetworkConfig", + "is_object": true + } + }, + { + "name": "gke_config", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GkeConfig", + "is_object": true + } + }, + { + "name": "location", + "description": "The Google Cloud region of the workspace data plane in your Google account (for example, `us-east4`).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "managed_services_customer_managed_key_id", + "description": "The ID of the workspace's managed services encryption key configuration object. This is used to help protect and control access to the workspace's notebooks, secrets, Databricks SQL queries, and query history. The provided key configuration object property use_cases must contain MANAGED_SERVICES.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "network_connectivity_config_id", + "description": "The object ID of network connectivity config. Once assigned, the workspace serverless compute resources use the same set of stable IP CIDR blocks and optional private link to access your resources.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "network_id", + "description": "The ID of the workspace's network configuration object. To use AWS PrivateLink, this field is required.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "pricing_tier", + "is_request_body_field": true, + "entity": { + "pascal_name": "PricingTier", + "enum": [ + { + "content": "COMMUNITY_EDITION" + }, + { + "content": "DEDICATED" + }, + { + "content": "ENTERPRISE" + }, + { + "content": "PREMIUM" + }, + { + "content": "STANDARD" + }, + { + "content": "UNKNOWN" + } + ] + } + }, + { + "name": "private_access_settings_id", + "description": "ID of the workspace's private access settings object. Only used for PrivateLink. You must specify this ID if you are using [AWS PrivateLink](https://aws.amazon.com/privatelink/) for either front-end (user-to-workspace connection), back-end (data plane to control plane connection), or both connection types.\nBefore configuring PrivateLink, read the [Databricks article about PrivateLink](https://docs.databricks.com/administration-guide/cloud-configurations/aws/privatelink.html).\",", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_configuration_id", + "description": "ID of the workspace's storage configuration object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_customer_managed_key_id", + "description": "The ID of the workspace's storage encryption key configuration object. This is used to encrypt the workspace's root S3 bucket (root DBFS and system data) and, optionally, cluster EBS volumes. The provided key configuration object property use_cases must contain STORAGE.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_name", + "description": "The human-readable name of the workspace.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "wait": { + "success": [ + { + "content": "RUNNING" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "Workspace" + } + }, + "status_path": [ + { + "pascal_name": "WorkspaceStatus" + } + ], + "message_path": [ + { + "pascal_name": "WorkspaceStatusMessage" + } + ], + "message_path_head": { + "pascal_name": "WorkspaceStatusMessage" + } + } + }, + { + "name": "Delete", + "description": "Deletes a Databricks workspace, both specified by ID.", + "summary": "Delete a workspace.", + "path": "/api/2.0/accounts/{account_id}/workspaces/{workspace_id}", + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "DeleteWorkspaceRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "Workspace", + "is_object": true + }, + "all_fields": [ + { + "name": "workspace_id", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "Get", + "description": "Gets information including status for a Databricks workspace, specified by ID. In the response, the `workspace_status` field indicates the current status. After initial workspace creation (which is asynchronous), make repeated `GET` requests with the workspace ID and check its status. The workspace becomes available when the status changes to `RUNNING`.\nFor information about how to create a new workspace with this API **including error handling**, see [Create a new workspace using the Account API](http://docs.databricks.com/administration-guide/account-api/new-workspace.html).", + "summary": "Get a workspace.", + "path": "/api/2.0/accounts/{account_id}/workspaces/{workspace_id}", + "is_crud_read": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "GetWorkspaceRequest", + "is_object": true, + "required_fields": [ + { + "name": "workspace_id", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + "response": { + "pascal_name": "Workspace", + "is_object": true + }, + "all_fields": [ + { + "name": "workspace_id", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "required": true, + "is_path": true, + "entity": { + "is_int64": true + } + } + ] + }, + { + "name": "List", + "description": "Lists Databricks workspaces for an account.", + "summary": "List workspaces.", + "path": "/api/2.0/accounts/{account_id}/workspaces", + "is_legacy_empty_request": true, + "is_crud_read": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "ListWorkspacesRequest", + "is_object": true + }, + "response": { + "pascal_name": "WorkspaceList", + "array_value": { + "pascal_name": "Workspace", + "is_object": true + } + } + }, + { + "name": "Update", + "description": "Updates a workspace.", + "summary": "Update a workspace.", + "path": "/api/2.0/accounts/{account_id}/workspaces/{workspace_id}", + "can_use_json": true, + "has_required_positional_arguments": true, + "launch_stage": "GA", + "cli_launch_stage_display": "GA", + "request": { + "pascal_name": "UpdateWorkspaceRequest", + "is_object": true, + "has_required_request_body_fields": true, + "required_fields": [ + { + "name": "workspace_id", + "description": "A unique integer ID for the workspace", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_int64": true + } + }, + { + "name": "customer_facing_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Workspace", + "is_object": true + } + } + ], + "required_in_url_fields": [ + { + "name": "workspace_id", + "description": "A unique integer ID for the workspace", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_int64": true + } + } + ], + "required_request_body_fields": [ + { + "name": "customer_facing_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Workspace", + "is_object": true + } + } + ] + }, + "request_body_field": { + "name": "customer_facing_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Workspace", + "is_object": true + } + }, + "response": { + "pascal_name": "Workspace", + "is_object": true + }, + "all_fields": [ + { + "name": "customer_facing_workspace", + "required": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "Workspace", + "is_object": true + } + }, + { + "name": "update_mask", + "description": "The field mask must be a single string, with multiple fields separated by commas (no spaces). The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only the entire collection field can be specified. Field names must exactly match the resource field names.\n\nA field mask of `*` indicates full replacement. It’s recommended to always explicitly list the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API changes in the future.", + "is_query": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_id", + "description": "A unique integer ID for the workspace", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_int64": true + } + }, + { + "name": "account_id", + "description": "Databricks account ID.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "aws_region", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "azure_workspace_info", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "AzureWorkspaceInfo", + "is_object": true + } + }, + { + "name": "cloud", + "description": "The cloud name. This field can have values like `azure`, `gcp`.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "cloud_resource_container", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "CloudResourceContainer", + "is_object": true + } + }, + { + "name": "compute_mode", + "description": "The compute mode of the workspace.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomerFacingComputeMode", + "enum": [ + { + "content": "HYBRID" + }, + { + "content": "SERVERLESS" + } + ] + } + }, + { + "name": "creation_time", + "description": "Time in epoch milliseconds when the workspace was created.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "credentials_id", + "description": "ID of the workspace's credential configuration object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "custom_tags", + "description": "The custom tags key-value pairing that is attached to this workspace. The key-value pair is a string of utf-8 characters. The value can be an empty string,\nwith maximum length of 255 characters. The key can be of maximum length of 127 characters, and cannot be empty.", + "is_request_body_field": true, + "entity": { + "map_value": { + "is_string": true + } + } + }, + { + "name": "deployment_name", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "expected_workspace_status", + "description": "A client owned field used to indicate the workspace status that the client expects to be in.\nFor now this is only used to unblock Temporal workflow for GCP least privileged workspace.", + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceStatus", + "enum": [ + { + "content": "BANNED" + }, + { + "content": "CANCELLING" + }, + { + "content": "FAILED" + }, + { + "content": "NOT_PROVISIONED" + }, + { + "content": "PROVISIONING" + }, + { + "content": "RUNNING" + } + ] + } + }, + { + "name": "gcp_managed_network_config", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GcpManagedNetworkConfig", + "is_object": true + } + }, + { + "name": "gke_config", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "GkeConfig", + "is_object": true + } + }, + { + "name": "location", + "description": "The Google Cloud region of the workspace data plane in your Google account (for example, `us-east4`).", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "managed_services_customer_managed_key_id", + "description": "ID of the key configuration for encrypting managed services.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "network", + "description": "The network configuration for the workspace.\n\nDEPRECATED. Use `network_id` instead.", + "is_request_body_field": true, + "is_optional_object": true, + "entity": { + "pascal_name": "WorkspaceNetwork", + "is_object": true + } + }, + { + "name": "network_connectivity_config_id", + "description": "The object ID of network connectivity config.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "network_id", + "description": "If this workspace is BYO VPC, then the network_id will be populated. If this workspace is not\nBYO VPC, then the network_id will be empty.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "pricing_tier", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "PricingTier", + "enum": [ + { + "content": "COMMUNITY_EDITION" + }, + { + "content": "DEDICATED" + }, + { + "content": "ENTERPRISE" + }, + { + "content": "PREMIUM" + }, + { + "content": "STANDARD" + }, + { + "content": "UNKNOWN" + } + ] + } + }, + { + "name": "private_access_settings_id", + "description": "ID of the workspace's private access settings object. Only used for PrivateLink. You must specify this ID if you are using [AWS PrivateLink](https://aws.amazon.com/privatelink/) for either front-end (user-to-workspace connection), back-end (data plane to control plane connection), or both connection types.\n\nBefore configuring PrivateLink, read the [Databricks article about PrivateLink](https://docs.databricks.com/administration-guide/cloud-configurations/aws/privatelink.html).\",", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_configuration_id", + "description": "ID of the workspace's storage configuration object.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_customer_managed_key_id", + "description": "ID of the key configuration for encrypting workspace storage.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "storage_mode", + "description": "The storage mode of the workspace.", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "CustomerFacingStorageMode", + "enum": [ + { + "content": "CUSTOMER_HOSTED" + }, + { + "content": "DEFAULT_STORAGE" + } + ] + } + }, + { + "name": "workspace_id", + "description": "A unique integer ID for the workspace", + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_int64": true + } + }, + { + "name": "workspace_name", + "description": "The human-readable name of the workspace.", + "is_request_body_field": true, + "entity": { + "is_string": true + } + }, + { + "name": "workspace_status", + "description": "The status of a workspace", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "pascal_name": "WorkspaceStatus", + "enum": [ + { + "content": "BANNED" + }, + { + "content": "CANCELLING" + }, + { + "content": "FAILED" + }, + { + "content": "NOT_PROVISIONED" + }, + { + "content": "PROVISIONING" + }, + { + "content": "RUNNING" + } + ] + } + }, + { + "name": "workspace_status_message", + "description": "Message describing the current workspace status.", + "is_computed": true, + "is_output_only": true, + "is_request_body_field": true, + "entity": { + "is_string": true + } + } + ], + "required_positional_arguments": [ + { + "name": "workspace_id", + "description": "A unique integer ID for the workspace", + "required": true, + "is_path": true, + "is_output_only": true, + "entity": { + "is_int64": true + } + } + ], + "wait": { + "success": [ + { + "content": "RUNNING" + } + ], + "timeout": 20, + "poll": { + "response": { + "pascal_name": "Workspace" + } + }, + "status_path": [ + { + "pascal_name": "WorkspaceStatus" + } + ], + "message_path": [ + { + "pascal_name": "WorkspaceStatusMessage" + } + ], + "message_path_head": { + "pascal_name": "WorkspaceStatusMessage" + } + } + } + ] + } + ], + "workspace_docs_groups": [ + { + "key": "workspace", + "display_name": "Databricks Workspace" + }, + { + "key": "compute", + "display_name": "Compute" + }, + { + "key": "sandbox", + "display_name": "Sandbox" + }, + { + "key": "lakeflow", + "display_name": "Lakeflow" + }, + { + "key": "files", + "display_name": "File Management" + }, + { + "key": "ml", + "display_name": "Machine Learning" + }, + { + "key": "serving", + "display_name": "Real-time Serving" + }, + { + "key": "apps", + "display_name": "Apps" + }, + { + "key": "vectorsearch", + "display_name": "Vector Search" + }, + { + "key": "aisearch", + "display_name": "AI Search" + }, + { + "key": "iam", + "display_name": "Identity and Access Management" + }, + { + "key": "sql", + "display_name": "Databricks SQL" + }, + { + "key": "dashboards", + "display_name": "AI/BI" + }, + { + "key": "catalog", + "display_name": "Unity Catalog" + }, + { + "key": "sharing", + "display_name": "Open Sharing" + }, + { + "key": "settings", + "display_name": "Settings" + }, + { + "key": "oauth2", + "display_name": "OAuth" + }, + { + "key": "marketplace", + "display_name": "Marketplace" + }, + { + "key": "cleanrooms", + "display_name": "Clean Rooms" + }, + { + "key": "qualitymonitor", + "display_name": "Quality Monitor" + }, + { + "key": "dataclassification", + "display_name": "Data Classification" + }, + { + "key": "dataquality", + "display_name": "Data Quality Monitoring" + }, + { + "key": "database", + "display_name": "Database Instances" + }, + { + "key": "agentbricks", + "display_name": "Agent Bricks" + }, + { + "key": "aifunctions", + "display_name": "AI Functions" + }, + { + "key": "tags", + "display_name": "Tags" + }, + { + "key": "postgres", + "display_name": "Postgres" + }, + { + "key": "environments", + "display_name": "Environments" + }, + { + "key": "bundledeployments", + "display_name": "Bundle Deployments" + }, + { + "key": "domains", + "display_name": "Domains" + } + ], + "account_docs_groups": [ + { + "key": "iam", + "display_name": "Identity and Access Management" + }, + { + "key": "catalog", + "display_name": "Unity Catalog" + }, + { + "key": "settings", + "display_name": "Settings" + }, + { + "key": "provisioning", + "display_name": "Provisioning" + }, + { + "key": "billing", + "display_name": "Billing" + }, + { + "key": "oauth2", + "display_name": "OAuth" + }, + { + "key": "disasterrecovery", + "display_name": "Disaster Recovery" + } + ] + } +} diff --git a/.cursor/rules/auto-generated-files.mdc b/.cursor/rules/auto-generated-files.mdc index 6f28623d01b..2971297fd7c 120000 --- a/.cursor/rules/auto-generated-files.mdc +++ b/.cursor/rules/auto-generated-files.mdc @@ -1 +1 @@ -../../.agent/rules/auto-generated-files.md \ No newline at end of file +../../.agents/rules/auto-generated-files.md \ No newline at end of file diff --git a/.cursor/rules/changelog.mdc b/.cursor/rules/changelog.mdc new file mode 120000 index 00000000000..82fc9ab3331 --- /dev/null +++ b/.cursor/rules/changelog.mdc @@ -0,0 +1 @@ +../../.agents/rules/changelog.md \ No newline at end of file diff --git a/.cursor/rules/comments.mdc b/.cursor/rules/comments.mdc new file mode 120000 index 00000000000..826ee0baceb --- /dev/null +++ b/.cursor/rules/comments.mdc @@ -0,0 +1 @@ +../../.agents/rules/comments.md \ No newline at end of file diff --git a/.cursor/rules/databricks-template-schema-json.mdc b/.cursor/rules/databricks-template-schema-json.mdc index a37f2750593..88fc109a7a8 120000 --- a/.cursor/rules/databricks-template-schema-json.mdc +++ b/.cursor/rules/databricks-template-schema-json.mdc @@ -1 +1 @@ -../../.agent/rules/databricks-template-schema-json.md \ No newline at end of file +../../.agents/rules/databricks-template-schema-json.md \ No newline at end of file diff --git a/.cursor/rules/dresources.mdc b/.cursor/rules/dresources.mdc new file mode 120000 index 00000000000..e7481ead102 --- /dev/null +++ b/.cursor/rules/dresources.mdc @@ -0,0 +1 @@ +../../.agents/rules/dresources.md \ No newline at end of file diff --git a/.cursor/rules/pydabs-acceptance-tests.mdc b/.cursor/rules/pydabs-acceptance-tests.mdc new file mode 120000 index 00000000000..ffe41d4bbea --- /dev/null +++ b/.cursor/rules/pydabs-acceptance-tests.mdc @@ -0,0 +1 @@ +../../.agents/rules/pydabs-acceptance-tests.md \ No newline at end of file diff --git a/.cursor/rules/style-guide-go.mdc b/.cursor/rules/style-guide-go.mdc index 7f6d9d0c954..9976b59f44a 120000 --- a/.cursor/rules/style-guide-go.mdc +++ b/.cursor/rules/style-guide-go.mdc @@ -1 +1 @@ -../../.agent/rules/style-guide-go.md \ No newline at end of file +../../.agents/rules/style-guide-go.md \ No newline at end of file diff --git a/.cursor/rules/style-guide-py.mdc b/.cursor/rules/style-guide-py.mdc index c61aa329bb9..3e5b4a4ab5a 120000 --- a/.cursor/rules/style-guide-py.mdc +++ b/.cursor/rules/style-guide-py.mdc @@ -1 +1 @@ -../../.agent/rules/style-guide-py.md \ No newline at end of file +../../.agents/rules/style-guide-py.md \ No newline at end of file diff --git a/.cursor/rules/telemetry.mdc b/.cursor/rules/telemetry.mdc new file mode 120000 index 00000000000..831640bfe9b --- /dev/null +++ b/.cursor/rules/telemetry.mdc @@ -0,0 +1 @@ +../../.agents/rules/telemetry.md \ No newline at end of file diff --git a/.cursor/rules/template-versions.mdc b/.cursor/rules/template-versions.mdc new file mode 120000 index 00000000000..7ad1818ffe4 --- /dev/null +++ b/.cursor/rules/template-versions.mdc @@ -0,0 +1 @@ +../../.agents/rules/template-versions.md \ No newline at end of file diff --git a/.cursor/rules/testing.mdc b/.cursor/rules/testing.mdc index 528df968ae8..057b0a403ba 120000 --- a/.cursor/rules/testing.mdc +++ b/.cursor/rules/testing.mdc @@ -1 +1 @@ -../../.agent/rules/testing.md \ No newline at end of file +../../.agents/rules/testing.md \ No newline at end of file diff --git a/.cursor/skills b/.cursor/skills deleted file mode 120000 index 9b058317d13..00000000000 --- a/.cursor/skills +++ /dev/null @@ -1 +0,0 @@ -../.agent/skills \ No newline at end of file diff --git a/.gitattributes b/.gitattributes index ffe19eb43c4..19fa804e1c0 100644 --- a/.gitattributes +++ b/.gitattributes @@ -8,6 +8,7 @@ cmd/account/credentials/credentials.go linguist-generated=true cmd/account/csp-enablement-account/csp-enablement-account.go linguist-generated=true cmd/account/custom-app-integration/custom-app-integration.go linguist-generated=true cmd/account/disable-legacy-features/disable-legacy-features.go linguist-generated=true +cmd/account/disaster-recovery/disaster-recovery.go linguist-generated=true cmd/account/enable-ip-access-lists/enable-ip-access-lists.go linguist-generated=true cmd/account/encryption-keys/encryption-keys.go linguist-generated=true cmd/account/endpoints/endpoints.go linguist-generated=true @@ -28,6 +29,7 @@ cmd/account/networks/networks.go linguist-generated=true cmd/account/o-auth-published-apps/o-auth-published-apps.go linguist-generated=true cmd/account/personal-compute/personal-compute.go linguist-generated=true cmd/account/private-access/private-access.go linguist-generated=true +cmd/account/private-network-gateways/private-network-gateways.go linguist-generated=true cmd/account/published-app-integration/published-app-integration.go linguist-generated=true cmd/account/service-principal-federation-policy/service-principal-federation-policy.go linguist-generated=true cmd/account/service-principal-secrets/service-principal-secrets.go linguist-generated=true @@ -44,6 +46,10 @@ cmd/account/workspace-network-configuration/workspace-network-configuration.go l cmd/account/workspaces/workspaces.go linguist-generated=true cmd/workspace/access-control/access-control.go linguist-generated=true cmd/workspace/agent-bricks/agent-bricks.go linguist-generated=true +cmd/workspace/agent-kit/agent-kit.go linguist-generated=true +cmd/workspace/ai-functions/ai-functions.go linguist-generated=true +cmd/workspace/ai-gateway/ai-gateway.go linguist-generated=true +cmd/workspace/ai-search/ai-search.go linguist-generated=true cmd/workspace/aibi-dashboard-embedding-access-policy/aibi-dashboard-embedding-access-policy.go linguist-generated=true cmd/workspace/aibi-dashboard-embedding-approved-domains/aibi-dashboard-embedding-approved-domains.go linguist-generated=true cmd/workspace/alerts-legacy/alerts-legacy.go linguist-generated=true @@ -53,6 +59,7 @@ cmd/workspace/apps-settings/apps-settings.go linguist-generated=true cmd/workspace/apps/apps.go linguist-generated=true cmd/workspace/artifact-allowlists/artifact-allowlists.go linguist-generated=true cmd/workspace/automatic-cluster-update/automatic-cluster-update.go linguist-generated=true +cmd/workspace/bundle-deployments/bundle-deployments.go linguist-generated=true cmd/workspace/catalogs/catalogs.go linguist-generated=true cmd/workspace/clean-room-asset-revisions/clean-room-asset-revisions.go linguist-generated=true cmd/workspace/clean-room-assets/clean-room-assets.go linguist-generated=true @@ -83,6 +90,7 @@ cmd/workspace/default-namespace/default-namespace.go linguist-generated=true cmd/workspace/default-warehouse-id/default-warehouse-id.go linguist-generated=true cmd/workspace/disable-legacy-access/disable-legacy-access.go linguist-generated=true cmd/workspace/disable-legacy-dbfs/disable-legacy-dbfs.go linguist-generated=true +cmd/workspace/domains/domains.go linguist-generated=true cmd/workspace/enable-export-notebook/enable-export-notebook.go linguist-generated=true cmd/workspace/enable-notebook-table-clipboard/enable-notebook-table-clipboard.go linguist-generated=true cmd/workspace/enable-results-downloading/enable-results-downloading.go linguist-generated=true @@ -150,7 +158,9 @@ cmd/workspace/repos/repos.go linguist-generated=true cmd/workspace/resource-quotas/resource-quotas.go linguist-generated=true cmd/workspace/restrict-workspace-admins/restrict-workspace-admins.go linguist-generated=true cmd/workspace/rfa/rfa.go linguist-generated=true +cmd/workspace/sandbox/sandbox.go linguist-generated=true cmd/workspace/schemas/schemas.go linguist-generated=true +cmd/workspace/secrets-uc/secrets-uc.go linguist-generated=true cmd/workspace/secrets/secrets.go linguist-generated=true cmd/workspace/service-principal-secrets-proxy/service-principal-secrets-proxy.go linguist-generated=true cmd/workspace/service-principals-v2/service-principals-v2.go linguist-generated=true @@ -159,12 +169,14 @@ cmd/workspace/settings/settings.go linguist-generated=true cmd/workspace/shares/shares.go linguist-generated=true cmd/workspace/sql-results-download/sql-results-download.go linguist-generated=true cmd/workspace/storage-credentials/storage-credentials.go linguist-generated=true +cmd/workspace/supervisor-agents/supervisor-agents.go linguist-generated=true cmd/workspace/system-schemas/system-schemas.go linguist-generated=true cmd/workspace/table-constraints/table-constraints.go linguist-generated=true cmd/workspace/tables/tables.go linguist-generated=true cmd/workspace/tag-policies/tag-policies.go linguist-generated=true cmd/workspace/temporary-path-credentials/temporary-path-credentials.go linguist-generated=true cmd/workspace/temporary-table-credentials/temporary-table-credentials.go linguist-generated=true +cmd/workspace/temporary-volume-credentials/temporary-volume-credentials.go linguist-generated=true cmd/workspace/token-management/token-management.go linguist-generated=true cmd/workspace/tokens/tokens.go linguist-generated=true cmd/workspace/users-v2/users-v2.go linguist-generated=true diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 00000000000..4522db78089 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,100 @@ +# Maintainers can approve any PR. Keep them on every rule because GitHub uses +# only the last matching rule, and any owner on that line can approve. +* @databricks/eng-deco-cli + +# Bundles +/bundle/ @databricks/eng-deco-cli @databricks/eng-deco-dabs +/cmd/bundle/ @databricks/eng-deco-cli @databricks/eng-deco-dabs +/acceptance/bundle/ @databricks/eng-deco-cli @databricks/eng-deco-dabs +/libs/template/ @databricks/eng-deco-cli @databricks/eng-deco-dabs +/python/ @databricks/eng-deco-cli @databricks/eng-deco-dabs + +# Pipelines +/cmd/pipelines/ @databricks/eng-deco-cli @jefferycheng1 @kanterov @lennartkats-db +/acceptance/pipelines/ @databricks/eng-deco-cli @jefferycheng1 @kanterov @lennartkats-db + +# Labs +/cmd/labs/ @databricks/eng-deco-cli @alexott @asnare + +# Local environments / DB Connect +/libs/localenv/ @databricks/eng-deco-cli @databricks/eng-deco-ax +/cmd/environments/ @databricks/eng-deco-cli @databricks/eng-deco-ax +/acceptance/localenv/ @databricks/eng-deco-cli @databricks/eng-deco-ax + +# SSH tunnel +/experimental/ssh/ @databricks/eng-deco-cli @databricks/eng-deco-ax +/acceptance/ssh/ @databricks/eng-deco-cli @databricks/eng-deco-ax + +# Apps +/cmd/apps/ @databricks/eng-deco-cli @databricks/eng-apps-devex +/cmd/workspace/apps/ @databricks/eng-deco-cli @databricks/eng-apps-devex +/libs/apps/ @databricks/eng-deco-cli @databricks/eng-apps-devex +/acceptance/apps/ @databricks/eng-deco-cli @databricks/eng-apps-devex +/.nextchanges/cli/apps-*.md @databricks/eng-deco-cli @databricks/eng-apps-devex + +# Sandbox +/cmd/sandbox/ @databricks/eng-deco-cli @databricks/eng-sandbox +/acceptance/cmd/sandbox/ @databricks/eng-deco-cli @databricks/eng-sandbox + +# Auth +/cmd/auth/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/libs/auth/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/acceptance/auth/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/.nextchanges/cli/auth-*.md @databricks/eng-deco-cli @databricks/eng-deco-platform + +# Artifact Registry / Docker credentials +/cmd/auth/docker/ @databricks/eng-deco-cli @databricks/eng-artifact-registry +/libs/dockercredentials/ @databricks/eng-deco-cli @databricks/eng-artifact-registry +/acceptance/cmd/auth/docker/ @databricks/eng-deco-cli @databricks/eng-artifact-registry +/.nextchanges/cli/docker-*.md @databricks/eng-deco-cli @databricks/eng-artifact-registry + +# Filesystem & sync +/cmd/fs/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/cmd/sync/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/libs/filer/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/libs/sync/ @databricks/eng-deco-cli @databricks/eng-deco-platform + +# Core CLI infrastructure +/cmd/root/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/cmd/version/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/cmd/completion/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/cmd/configure/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/cmd/cache/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/cmd/api/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/cmd/selftest/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/cmd/psql/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/libs/psql/ @databricks/eng-deco-cli @databricks/eng-deco-platform + +# Libs (general) +/libs/databrickscfg/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/libs/env/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/libs/flags/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/libs/cmdio/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/libs/log/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/libs/telemetry/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/libs/process/ @databricks/eng-deco-cli @databricks/eng-deco-platform +/libs/git/ @databricks/eng-deco-cli @databricks/eng-deco-platform + +# Integration tests +/integration/ @databricks/eng-deco-cli @databricks/eng-deco-platform + +/integration/cmd/environments/ @databricks/eng-deco-cli @databricks/eng-deco-ax + +# Internal +/internal/ @databricks/eng-deco-cli @databricks/eng-deco-platform + +# AI tools +/cmd/aitools/ @databricks/eng-deco-cli @databricks/eng-apps-devex @databricks/eng-deco-ax @lennartkats-db +/libs/aitools/ @databricks/eng-deco-cli @databricks/eng-apps-devex @databricks/eng-deco-ax @lennartkats-db + +# AI Runtime +/cmd/air/ @databricks/eng-deco-cli @databricks/eng-ai-custom-training +/acceptance/air/ @databricks/eng-deco-cli @databricks/eng-ai-custom-training +/.nextchanges/air/ @databricks/eng-deco-cli @databricks/eng-ai-custom-training + +# CLI compatibility manifest +/internal/build/cli-compat.json @databricks/eng-deco-cli @databricks/eng-apps-devex @databricks/eng-deco-platform +/libs/clicompat/ @databricks/eng-deco-cli @databricks/eng-apps-devex @databricks/eng-deco-platform + +# Experimental +/experimental/aitools/ @databricks/eng-deco-cli @databricks/eng-apps-devex @lennartkats-db diff --git a/.github/OWNERS b/.github/OWNERS deleted file mode 100644 index 7cae525465a..00000000000 --- a/.github/OWNERS +++ /dev/null @@ -1,63 +0,0 @@ -# Maintainers (can approve any PR) -* @andrewnester @anton-107 @denik @pietern @shreyas-goenka @simonfaltum @renaudhartert-db - -# Bundles -/bundle/ team:bundle @lennartkats-db -/cmd/bundle/ team:bundle @lennartkats-db -/acceptance/bundle/ team:bundle @lennartkats-db -/libs/template/ team:bundle @lennartkats-db - -# Pipelines -/cmd/pipelines/ @jefferycheng1 @kanterov @lennartkats-db -/acceptance/pipelines/ @jefferycheng1 @kanterov @lennartkats-db - -# Labs -/cmd/labs/ @alexott @asnare -/acceptance/labs/ @alexott @asnare - -# Apps -/cmd/apps/ team:eng-apps-devex -/cmd/workspace/apps/ team:eng-apps-devex -/libs/apps/ team:eng-apps-devex -/acceptance/apps/ team:eng-apps-devex - -# Auth -/cmd/auth/ team:platform -/libs/auth/ team:platform -/acceptance/auth/ team:platform - -# Filesystem & sync -/cmd/fs/ team:platform -/cmd/sync/ team:platform -/libs/filer/ team:platform -/libs/sync/ team:platform - -# Core CLI infrastructure -/cmd/root/ team:platform -/cmd/version/ team:platform -/cmd/completion/ team:platform -/cmd/configure/ team:platform -/cmd/cache/ team:platform -/cmd/api/ team:platform -/cmd/selftest/ team:platform -/cmd/psql/ team:platform -/libs/psql/ team:platform - -# Libs (general) -/libs/databrickscfg/ team:platform -/libs/env/ team:platform -/libs/flags/ team:platform -/libs/cmdio/ team:platform -/libs/log/ team:platform -/libs/telemetry/ team:platform -/libs/process/ team:platform -/libs/git/ team:platform - -# Integration tests -/integration/ team:platform - -# Internal -/internal/ team:platform - -# Experimental -/experimental/aitools/ team:eng-apps-devex @lennartkats-db diff --git a/.github/OWNERTEAMS b/.github/OWNERTEAMS deleted file mode 100644 index 9bcab6116e9..00000000000 --- a/.github/OWNERTEAMS +++ /dev/null @@ -1,16 +0,0 @@ -# Team aliases for OWNERS file. -# Use "team:" in OWNERS to reference a team defined here. -# Format: team: @member1 @member2 ... -# -# Keep these in sync with actual GitHub team rosters. GITHUB_TOKEN can't -# resolve org team membership via the API, so this file is the source of -# truth for the maintainer-approval workflow. -# -# GitHub team pages: -# bundle: https://github.com/orgs/databricks/teams/cli-maintainers -# platform: https://github.com/orgs/databricks/teams/cli-platform -# eng-apps-devex: https://github.com/orgs/databricks/teams/eng-apps-devex - -team:bundle @andrewnester @anton-107 @denik @janniklasrose @pietern @shreyas-goenka -team:platform @simonfaltum @renaudhartert-db @hectorcast-db @parthban-db @tanmay-db @Divyansh-db @tejaskochar-db @mihaimitrea-db @chrisst @rauchy -team:eng-apps-devex @fjakobs @jamesbroadhead @Shridhad @atilafassina @keugenek @arsenyinfo @igrekun @pkosiec @MarioCadenas @pffigueiredo @ditadi @calvarjorge diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 2b6289b935b..21bad8efd76 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -9,4 +9,5 @@ For example, were there any decisions behind the change that are not reflected i +add a changelog fragment: create .nextchanges/
/.md with a +one-line description (e.g. .nextchanges/cli/quickstart.md). See .nextchanges/README.md. --> diff --git a/.github/actions/setup-build-environment/action.yml b/.github/actions/setup-build-environment/action.yml index 3fd492c70f6..e3e5f737fe7 100644 --- a/.github/actions/setup-build-environment/action.yml +++ b/.github/actions/setup-build-environment/action.yml @@ -10,30 +10,68 @@ runs: using: 'composite' steps: - name: Checkout repository and submodules - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Setup JFrog uses: ./.github/actions/setup-jfrog - - name: Create cache identifier - run: echo "${{ inputs.cache-key }}" > cache.txt + - id: setup-go + name: Setup Go + uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7.0.0 + with: + go-version-file: go.mod + # Disable setup-go's built-in cache; the steps below manage the + # cache so that only push-to-main runs save it. PR / merge_group / + # schedule saves are scoped to refs no other run can read, and + # they evict main's caches from the 10 GB GHA cache quota via LRU. + # + # See: https://docs.github.com/en/actions/reference/workflows-and-actions/dependency-caching + cache: false + + - name: Resolve Go cache paths + id: go-paths shell: bash + run: | + echo "build=$(go env GOCACHE)" >> "$GITHUB_OUTPUT" + echo "mod=$(go env GOMODCACHE)" >> "$GITHUB_OUTPUT" - - name: Setup Go - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 + # On runs against main (push + the scheduled wipe-and-repopulate + # cron added in #2092): restore now, save at job end via the + # unified action's post-step (which fires at the calling job's + # end, even when invoked from a composite). + - name: Restore and save Go cache (main) + if: github.ref == 'refs/heads/main' + uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 with: - go-version-file: go.mod - cache-dependency-path: | - go.sum - cache.txt + path: | + ${{ steps.go-paths.outputs.mod }} + ${{ steps.go-paths.outputs.build }} + key: setup-go-${{ inputs.cache-key }}-${{ runner.os }}-go${{ steps.setup-go.outputs.go-version }}-${{ hashFiles('go.sum') }} + restore-keys: | + setup-go-${{ inputs.cache-key }}-${{ runner.os }}-go${{ steps.setup-go.outputs.go-version }}- + + # On every other ref (PR / merge_group): restore only. Prefix + # fallback via restore-keys means runs whose go.sum differs from + # main still restore main's most recent cache and rebuild only + # the delta. + - name: Restore Go cache (non-main) + if: github.ref != 'refs/heads/main' + uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 + with: + path: | + ${{ steps.go-paths.outputs.mod }} + ${{ steps.go-paths.outputs.build }} + key: setup-go-${{ inputs.cache-key }}-${{ runner.os }}-go${{ steps.setup-go.outputs.go-version }}-${{ hashFiles('go.sum') }} + restore-keys: | + setup-go-${{ inputs.cache-key }}-${{ runner.os }}-go${{ steps.setup-go.outputs.go-version }}- - name: Setup Python - uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0 + uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 with: python-version: '3.13' - name: Install uv - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c18668ad3cf93ea998bef934396af7bb5c839dc7 # v10.2.0 with: version: "0.8.9" @@ -42,7 +80,7 @@ runs: shell: bash - name: Install ruff (Python linter and formatter) - uses: astral-sh/ruff-action@0ce1b0bf8b818ef400413f810f8a11cdbda0034b # v4.0.0 + uses: astral-sh/ruff-action@278981a28ce3188b1e39527901f38254bf3aac89 # v4.1.0 with: version: "0.9.1" args: "--version" diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 4072e543b65..87ae745dc07 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -6,6 +6,20 @@ updates: interval: "weekly" cooldown: default-days: 14 + groups: + # The new Databricks Go SDK ships as ~100 per-service submodules under + # github.com/databricks/sdk-go. Bumping them individually would open one PR + # per submodule; group them into a single PR. + databricks-sdk-go: + patterns: + - github.com/databricks/sdk-go/* + # The golang.org/x/* modules are released in lockstep and each bump pulls + # the others in transitively (e.g. x/net requires matching x/crypto and + # x/term). As separate PRs they all edit adjacent go.mod/go.sum lines and + # evict each other from the merge queue with a conflict, so group them. + golang-x: + patterns: + - golang.org/x/* ignore: # Ignore Databricks Go SDK because its upgrade requires code generation - dependency-name: github.com/databricks/databricks-sdk-go @@ -15,6 +29,32 @@ updates: interval: "weekly" cooldown: default-days: 14 + # acceptance/ holds generated template output and test fixtures, not real + # project dependencies. Some pin a placeholder version (e.g. + # databricks-bundles==x.y.z, produced by a test.toml Repls rule) that is not + # valid PEP 440 and aborts the whole dependency-graph submission for the + # ecosystem. cmd/labs/project/testdata/ is vendored test data. The pip and uv + # graph jobs both scan pyproject.toml, so both need the exclusion. + - package-ecosystem: "pip" + directory: "/" + schedule: + interval: "weekly" + cooldown: + default-days: 14 + exclude-paths: + - "acceptance/**" + - "cmd/labs/project/testdata/**" + - "python/codegen/**" + - package-ecosystem: "uv" + directory: "/" + schedule: + interval: "weekly" + cooldown: + default-days: 14 + exclude-paths: + - "acceptance/**" + - "cmd/labs/project/testdata/**" + - "python/codegen/**" # https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#directories - package-ecosystem: "github-actions" directories: diff --git a/.github/labeler.yml b/.github/labeler.yml new file mode 100644 index 00000000000..6408c26b78d --- /dev/null +++ b/.github/labeler.yml @@ -0,0 +1,56 @@ +# Configuration for the "PR Labeler" workflow (.github/workflows/labeler.yml). +# +# Maps a label to the file globs that, when matched by a PR's diff, cause the +# label to be applied. Uses the actions/labeler v7 config format, documented at +# https://github.com/actions/labeler/blob/v7.0.0/README.md +# +# To add a new mapping, copy the block below. The label MUST already exist in +# the repository (labeler does not create labels), and globs use minimatch +# syntax where `**` matches nested paths: +# +#